aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--simplify.c2
-rw-r--r--validation/kill-phi-node.c9
2 files changed, 10 insertions, 1 deletions
diff --git a/simplify.c b/simplify.c
index d4e73089..17f1e2b6 100644
--- a/simplify.c
+++ b/simplify.c
@@ -218,7 +218,7 @@ void kill_instruction(struct instruction *insn)
break;
case OP_PHI:
- clear_phi(insn);
+ kill_use_list(insn->phi_list);
break;
case OP_PHISOURCE:
kill_use(&insn->phi_src);
diff --git a/validation/kill-phi-node.c b/validation/kill-phi-node.c
index 88de9f96..cff62b64 100644
--- a/validation/kill-phi-node.c
+++ b/validation/kill-phi-node.c
@@ -9,6 +9,15 @@ void foo(int a, int *b, unsigned int g)
d = 8;
}
+int bar(void);
+int bar(void)
+{
+ int i;
+ for (i = 0; i; i--)
+ ;
+ return 0;
+}
+
/*
* check-name: kill-phi-node
* check-command: test-linearize $file