diff --git a/src/compiler/nir/nir_instr_set.c b/src/compiler/nir/nir_instr_set.c index caef18f1e1d..638343a0afc 100644 --- a/src/compiler/nir/nir_instr_set.c +++ b/src/compiler/nir/nir_instr_set.c @@ -391,20 +391,12 @@ nir_alu_srcs_negative_equal(const nir_alu_instr *alu1, } #endif - bool parity = false; - /* Handling load_const instructions is tricky. */ const nir_const_value *const const1 = nir_src_as_const_value(alu1->src[src1].src); if (const1 != NULL) { - /* Assume that constant folding will eliminate source mods and unary - * ops. - */ - if (parity) - return false; - const nir_const_value *const const2 = nir_src_as_const_value(alu2->src[src2].src); @@ -431,6 +423,7 @@ nir_alu_srcs_negative_equal(const nir_alu_instr *alu1, uint8_t alu1_swizzle[NIR_MAX_VEC_COMPONENTS] = { 0 }; nir_src alu1_actual_src; nir_alu_instr *neg1 = get_neg_instr(alu1->src[src1].src); + bool parity = false; if (neg1) { parity = !parity;