summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2018-07-25 15:07:08 -0700
committerJason Ekstrand <[email protected]>2018-07-29 13:39:35 -0700
commit05fb2f88ecf46809648230bcdd2c1563b317a188 (patch)
treeb50fbd6a9639c0336ba5678b29fe565af468d373
parent9a4ab4c120b97397321b8a86abdbdbe96ee42141 (diff)
nir/instr_set: Fix nir_instrs_equal for derefs
We weren't returning at the end of the nir_isntr_type_deref case in nir_instrs_equal and it was falling through to the default of false. While we're at it, make the default unreachable because all statements in the switch now have their own returns. Had we done that before, we would have caught this bug a long time ago. Fixes: 19a4662a540a8c94 "nir: Add a deref instruction type" Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> Reviewed-by: Thomas Helland<[email protected]>
-rw-r--r--src/compiler/nir/nir_instr_set.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/compiler/nir/nir_instr_set.c b/src/compiler/nir/nir_instr_set.c
index 42aa61808ac..19771fcd9dd 100644
--- a/src/compiler/nir/nir_instr_set.c
+++ b/src/compiler/nir/nir_instr_set.c
@@ -357,7 +357,7 @@ nir_instrs_equal(const nir_instr *instr1, const nir_instr *instr2)
default:
unreachable("Invalid instruction deref type");
}
- break;
+ return true;
}
case nir_instr_type_tex: {
nir_tex_instr *tex1 = nir_instr_as_tex(instr1);
@@ -460,7 +460,7 @@ nir_instrs_equal(const nir_instr *instr1, const nir_instr *instr2)
unreachable("Invalid instruction type");
}
- return false;
+ unreachable("All cases in the above switch should return");
}
static bool