freedreno/ir3: mad.x24 is not safe to lower

Fixes following piglit tests on Adreno 630:
program@execute@builtin@builtin-char-mad_sat-1.0.generated
program@execute@builtin@builtin-uchar-mad_sat-1.0.generated

Cc: mesa-stable
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Signed-off-by: David Heidelberg <david@ixit.cz>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31334>
This commit is contained in:
David Heidelberg 2024-09-24 02:39:43 +09:00 committed by Marge Bot
parent 5fdc82d5f1
commit c36cc1fdf2

View file

@ -27,6 +27,10 @@ is_safe_conv(struct ir3_instruction *instr, type_t src_type, opc_t *src_opc)
type_size(instr->cat1.src_type) == 16)
return false;
/* mad.x24 doesn't work with 16-bit in/out */
if (*src_opc == OPC_MAD_S24 || *src_opc == OPC_MAD_U24)
return false;
struct ir3_register *dst = instr->dsts[0];
struct ir3_register *src = instr->srcs[0];