brw/disasm: Fix Gfx11 3src-instructions dst register disassembly

The conversion from bit value to register file type is already done
by the brw_eu_inst_3src_a1_dst_reg_file in the FFC macro now, so doing it
again produced incorrect results.

Fixes: e7179232 ("intel/brw: Move encoding of Gfx11 3-src inside the inst helpers")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13141
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35960>
(cherry picked from commit 8d22eb960b)
This commit is contained in:
Sviatoslav Peleshko 2025-07-06 23:58:29 +03:00 committed by Eric Engestrom
parent c84e0fbebb
commit ff529f9582
2 changed files with 2 additions and 4 deletions

View file

@ -5794,7 +5794,7 @@
"description": "brw/disasm: Fix Gfx11 3src-instructions dst register disassembly",
"nominated": true,
"nomination_type": 2,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "e7179232c9d8968f45687c795323ef2b39719a2d",
"notes": null

View file

@ -977,10 +977,8 @@ dest_3src(FILE *file, const struct intel_device_info *devinfo,
if (devinfo->ver < 10 && is_align1)
return 0;
if (devinfo->ver >= 12)
if (devinfo->ver >= 12 || is_align1)
reg_file = brw_eu_inst_3src_a1_dst_reg_file(devinfo, inst);
else if (is_align1 && brw_eu_inst_3src_a1_dst_reg_file(devinfo, inst))
reg_file = ARF;
else
reg_file = FIXED_GRF;