Module: Mesa
Branch: master
Commit: 353b42ccc745453dffe742d766831248f77d6e39
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=353b42ccc745453dffe742d766831248f77d6e39

Author: Eric Anholt <[email protected]>
Date:   Fri Jan 19 09:06:26 2018 -0800

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 0e2e8e2daa..6bb2774143 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) {

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to