From dca6cd9ce65100896976e913bf72c2c68ea4e1a7 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 7 Nov 2018 13:43:40 -0600 Subject: nir: Make boolean conversions sized just like the others Instead of a single i2b and b2i, we now have i2b32 and b2iN where N is one if 8, 16, 32, or 64. This leads to having a few more opcodes but now everything is consistent and booleans aren't a weird special case anymore. Reviewed-by: Connor Abbott --- src/broadcom/compiler/nir_to_vir.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/broadcom') diff --git a/src/broadcom/compiler/nir_to_vir.c b/src/broadcom/compiler/nir_to_vir.c index 57be43d7245..fbe8af376a7 100644 --- a/src/broadcom/compiler/nir_to_vir.c +++ b/src/broadcom/compiler/nir_to_vir.c @@ -682,14 +682,14 @@ ntq_emit_alu(struct v3d_compile *c, nir_alu_instr *instr) case nir_op_u2f32: result = vir_UTOF(c, src[0]); break; - case nir_op_b2f: + case nir_op_b2f32: result = vir_AND(c, src[0], vir_uniform_f(c, 1.0)); break; - case nir_op_b2i: + case nir_op_b2i32: result = vir_AND(c, src[0], vir_uniform_ui(c, 1)); break; - case nir_op_i2b: - case nir_op_f2b: + case nir_op_i2b32: + case nir_op_f2b32: vir_PF(c, src[0], V3D_QPU_PF_PUSHZ); result = vir_MOV(c, vir_SEL(c, V3D_QPU_COND_IFNA, vir_uniform_ui(c, ~0), -- cgit v1.2.3