mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 08:10:09 +01:00
i965: Fix assertions about register types for INT DIV in brw_math.
BRW_MATH_FUNCTION_REMAINDER was missing. Also, it seems worthwhile to assert that INT DIV's arguments are signed/unsigned integers. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Tested-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
parent
e66fc1cb03
commit
ee2bf3a4b6
1 changed files with 11 additions and 4 deletions
|
|
@ -1478,8 +1478,11 @@ void brw_math( struct brw_compile *p,
|
|||
assert(!src.negate);
|
||||
assert(!src.abs);
|
||||
|
||||
if (function != BRW_MATH_FUNCTION_INT_DIV_QUOTIENT &&
|
||||
function != BRW_MATH_FUNCTION_INT_DIV_QUOTIENT_AND_REMAINDER) {
|
||||
if (function == BRW_MATH_FUNCTION_INT_DIV_QUOTIENT ||
|
||||
function == BRW_MATH_FUNCTION_INT_DIV_REMAINDER ||
|
||||
function == BRW_MATH_FUNCTION_INT_DIV_QUOTIENT_AND_REMAINDER) {
|
||||
assert(src.type != BRW_REGISTER_TYPE_F);
|
||||
} else {
|
||||
assert(src.type == BRW_REGISTER_TYPE_F);
|
||||
}
|
||||
|
||||
|
|
@ -1538,8 +1541,12 @@ void brw_math2(struct brw_compile *p,
|
|||
assert(src0.hstride == BRW_HORIZONTAL_STRIDE_1);
|
||||
assert(src1.hstride == BRW_HORIZONTAL_STRIDE_1);
|
||||
|
||||
if (function != BRW_MATH_FUNCTION_INT_DIV_QUOTIENT &&
|
||||
function != BRW_MATH_FUNCTION_INT_DIV_QUOTIENT_AND_REMAINDER) {
|
||||
if (function == BRW_MATH_FUNCTION_INT_DIV_QUOTIENT ||
|
||||
function == BRW_MATH_FUNCTION_INT_DIV_REMAINDER ||
|
||||
function == BRW_MATH_FUNCTION_INT_DIV_QUOTIENT_AND_REMAINDER) {
|
||||
assert(src0.type != BRW_REGISTER_TYPE_F);
|
||||
assert(src1.type != BRW_REGISTER_TYPE_F);
|
||||
} else {
|
||||
assert(src0.type == BRW_REGISTER_TYPE_F);
|
||||
assert(src1.type == BRW_REGISTER_TYPE_F);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue