From 2e108afb8c4a0b7dc1d16052bb4a4e78998f53c4 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Wed, 23 Oct 2024 01:34:40 -0700 Subject: [PATCH] brw: Skip unnecessary UNDEFs for comparisons For example, SIMD16 W/UW fills an entire REG_SIZE so UNDEF isn't needed. No change in fossil-db. Reviewed-by: Caio Oliveira Part-of: --- src/intel/compiler/brw_from_nir.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/intel/compiler/brw_from_nir.cpp b/src/intel/compiler/brw_from_nir.cpp index 57e64179c77..3beaaa93ae1 100644 --- a/src/intel/compiler/brw_from_nir.cpp +++ b/src/intel/compiler/brw_from_nir.cpp @@ -1346,7 +1346,7 @@ brw_from_nir_emit_alu(nir_to_brw_state &ntb, nir_alu_instr *instr, const uint32_t bit_size = nir_src_bit_size(instr->src[0].src); if (bit_size != 32) { dest = bld.vgrf(op[0].type); - bld.UNDEF(dest); + bld.emit_undef_for_partial_reg(dest); } bld.CMP(dest, op[0], op[1], brw_cmod_for_nir_comparison(instr->op)); @@ -1382,7 +1382,7 @@ brw_from_nir_emit_alu(nir_to_brw_state &ntb, nir_alu_instr *instr, const uint32_t bit_size = brw_type_size_bits(op[0].type); if (bit_size != 32) { dest = bld.vgrf(op[0].type); - bld.UNDEF(dest); + bld.emit_undef_for_partial_reg(dest); } bld.CMP(dest, op[0], op[1],