From 353b42ccc745453dffe742d766831248f77d6e39 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 19 Jan 2018 09:06:26 -0800 Subject: [PATCH] broadcom/vc5: Fix a segfault on mix of booleans. We don't have a src1 to look up if the compare instruction is "i2b". --- src/broadcom/compiler/nir_to_vir.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/broadcom/compiler/nir_to_vir.c b/src/broadcom/compiler/nir_to_vir.c index 0e2e8e2daad..6bb27741437 100644 --- a/src/broadcom/compiler/nir_to_vir.c +++ b/src/broadcom/compiler/nir_to_vir.c @@ -528,7 +528,9 @@ ntq_emit_comparison(struct v3d_compile *c, struct qreg *dest, nir_alu_instr *sel_instr) { struct qreg src0 = ntq_get_alu_src(c, compare_instr, 0); - struct qreg src1 = ntq_get_alu_src(c, compare_instr, 1); + struct qreg src1; + if (nir_op_infos[compare_instr->op].num_inputs > 1) + src1 = ntq_get_alu_src(c, compare_instr, 1); bool cond_invert = false; switch (compare_instr->op) { -- 2.30.2