diff options
author | Ian Romanick <[email protected]> | 2015-04-07 16:11:37 -0700 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2018-03-26 08:50:43 -0700 |
commit | 8f83eea71e233227d34dc8547dac79d2912c2311 (patch) | |
tree | 15ff575b7bd14e99b83402c00d390e960763b406 /src/intel/compiler/brw_vec4.cpp | |
parent | a21da49e5c55f8e61253503d865cef936125ea5f (diff) |
i965: Add negative_equals methods
This method is similar to the existing ::equals methods. Instead of
testing that two src_regs are equal to each other, it tests that one is
the negation of the other.
v2: Simplify various checks based on suggestions from Matt. Use
src_reg::type instead of fixed_hw_reg.type in a check. Also suggested
by Matt.
v3: Rebase on 3 years. Fix some problems with negative_equals with VF
constants. Add fs_reg::negative_equals.
v4: Replace the existing default case with BRW_REGISTER_TYPE_UB,
BRW_REGISTER_TYPE_B, and BRW_REGISTER_TYPE_NF. Suggested by Matt.
Expand the FINISHME comment to better explain why it isn't already
finished.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Alejandro PiƱeiro <[email protected]> [v3]
Reviewed-by: Matt Turner <[email protected]>
Diffstat (limited to 'src/intel/compiler/brw_vec4.cpp')
-rw-r--r-- | src/intel/compiler/brw_vec4.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/intel/compiler/brw_vec4.cpp b/src/intel/compiler/brw_vec4.cpp index e4838146ac1..6680410a525 100644 --- a/src/intel/compiler/brw_vec4.cpp +++ b/src/intel/compiler/brw_vec4.cpp @@ -376,6 +376,13 @@ src_reg::equals(const src_reg &r) const } bool +src_reg::negative_equals(const src_reg &r) const +{ + return this->backend_reg::negative_equals(r) && + !reladdr && !r.reladdr; +} + +bool vec4_visitor::opt_vector_float() { bool progress = false; |