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 <ian.d.romanick@intel.com> Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> [v3] Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
@@ -684,6 +684,12 @@ backend_reg::equals(const backend_reg &r) const
|
||||
return brw_regs_equal(this, &r) && offset == r.offset;
|
||||
}
|
||||
|
||||
bool
|
||||
backend_reg::negative_equals(const backend_reg &r) const
|
||||
{
|
||||
return brw_regs_negative_equal(this, &r) && offset == r.offset;
|
||||
}
|
||||
|
||||
bool
|
||||
backend_reg::is_zero() const
|
||||
{
|
||||
|
Reference in New Issue
Block a user