aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--simplify.c1
-rw-r--r--validation/kill-select.c16
2 files changed, 17 insertions, 0 deletions
diff --git a/simplify.c b/simplify.c
index fc6bae79..1e4aa63b 100644
--- a/simplify.c
+++ b/simplify.c
@@ -216,6 +216,7 @@ void kill_instruction(struct instruction *insn)
repeat_phase |= REPEAT_CSE | REPEAT_SYMBOL_CLEANUP;
return;
+ case OP_SEL:
case OP_RANGE:
insn->bb = NULL;
repeat_phase |= REPEAT_CSE;
diff --git a/validation/kill-select.c b/validation/kill-select.c
new file mode 100644
index 00000000..445472be
--- /dev/null
+++ b/validation/kill-select.c
@@ -0,0 +1,16 @@
+void foo(int x);
+void foo(int x)
+{
+ unsigned int ui;
+
+ ui = x + 1;
+ ui = ui ? 0 : 1;
+}
+
+/*
+ * check-name: kill-select
+ * check-command: test-linearize $file
+ *
+ * check-output-ignore
+ * check-output-excludes: add\\.
+ */