From b26c68e40a45f86d3e3a49657aba429f5a852ad7 Mon Sep 17 00:00:00 2001 From: Gert Wollny Date: Thu, 11 Sep 2025 15:10:40 +0200 Subject: [PATCH] r600/sfn: Filter lowering of b2f32(comp(x,y)) for 64 bit sources Instead of skipping later, we can filter these instructions right away. Fixes: 51d8ca2dff0 ("r600/sfn: optimize comparison results") Signed-off-by: Gert Wollny Part-of: --- src/gallium/drivers/r600/sfn/sfn_nir_lower_alu.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/r600/sfn/sfn_nir_lower_alu.cpp b/src/gallium/drivers/r600/sfn/sfn_nir_lower_alu.cpp index 4f396556b49..7ee9b77227f 100644 --- a/src/gallium/drivers/r600/sfn/sfn_nir_lower_alu.cpp +++ b/src/gallium/drivers/r600/sfn/sfn_nir_lower_alu.cpp @@ -184,6 +184,8 @@ OptNotFromComparison::filter(const nir_instr *instr) const return false; } case nir_op_b2f32: + if (p->src[0].src.ssa->bit_size != 32) + return false; switch (p->op) { case nir_op_fge: case nir_op_flt: @@ -241,8 +243,6 @@ OptNotFromComparison::lower(nir_instr *instr) return 0; } case nir_op_b2f32: - if (p->src[0].src.ssa->bit_size != 32) - return 0; switch (p->op) { case nir_op_fge: return nir_sge(b, src0, src1);