Enable support for integer MAD
Since Ice Lake, Intel GPUs have supported integer MAD
, but there is no support for this in the Intel compiler.
-
Add new nir_op_imad_32x16p32
opcode. Perhaps this opcode should also be_intel
? -
Either modify brw_nir_opt_peephole_ffma.c
or create a new pass to to mergenir_iadd
andnir_op_imul_32x16
. Require that there be no source modifiers. Initially require that none of the operands be constants. -
On Gfx12, allow the addend to be constant if the value can fit in 16 bits. Aside from modifying the peephole pass,(see !23262 (merged))brw_combine_constants
will need to be modified to know that mixed-size integer types are allowed on Gfx12.5. Currently all mixing is forbidden, but it's really onlyF
andHF
mixing that was removed from the hardware.