mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 08:40:11 +01:00
intel/brw: Integer multiply w/ DW and W sources is not commutative
The DW source must be first on all platforms since Gfx7. On previous platforms it's the other way around. Unsurprisingly, no shader-db or fossil-db changes. This change is necessary for the next commit. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27552>
This commit is contained in:
parent
93478c095e
commit
dd3bed1d92
1 changed files with 8 additions and 1 deletions
|
|
@ -294,9 +294,16 @@ fs_inst::is_commutative() const
|
|||
case BRW_OPCODE_XOR:
|
||||
case BRW_OPCODE_ADD:
|
||||
case BRW_OPCODE_ADD3:
|
||||
case BRW_OPCODE_MUL:
|
||||
case SHADER_OPCODE_MULH:
|
||||
return true;
|
||||
|
||||
case BRW_OPCODE_MUL:
|
||||
/* Integer multiplication of dword and word sources is not actually
|
||||
* commutative. The DW source must be first.
|
||||
*/
|
||||
return !brw_reg_type_is_integer(src[0].type) ||
|
||||
type_sz(src[0].type) == type_sz(src[1].type);
|
||||
|
||||
case BRW_OPCODE_SEL:
|
||||
/* MIN and MAX are commutative. */
|
||||
if (conditional_mod == BRW_CONDITIONAL_GE ||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue