brw: don't support frontfacing ternary optimization on != 32bit

Fix shader compilation on Crimson Desert :

  16    %1995 = b32csel %1992, %1993, %1994

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
(cherry picked from commit a84c12414c)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979>
This commit is contained in:
Lionel Landwerlin 2026-04-13 17:14:37 +03:00 committed by Eric Engestrom
parent d37fccbc4a
commit eb2cffbde4
2 changed files with 4 additions and 1 deletions

View file

@ -624,7 +624,7 @@
"description": "brw: don't support frontfacing ternary optimization on != 32bit",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -598,6 +598,9 @@ optimize_frontfacing_ternary(nir_to_brw_state &ntb,
const intel_device_info *devinfo = ntb.devinfo;
brw_shader &s = ntb.s;
if (instr->def.bit_size != 32)
return false;
nir_intrinsic_instr *src0 = nir_src_as_intrinsic(instr->src[0].src);
if (src0 == NULL || src0->intrinsic != nir_intrinsic_load_front_face)
return false;