aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--flow.c2
-rw-r--r--validation/mem2reg/load-deadborn.c9
2 files changed, 10 insertions, 1 deletions
diff --git a/flow.c b/flow.c
index 62658b92..2a6bf5ea 100644
--- a/flow.c
+++ b/flow.c
@@ -481,7 +481,7 @@ static int find_dominating_stores(pseudo_t pseudo, struct instruction *insn,
/* Unreachable load? Undo it */
if (!bb) {
- insn->opcode = OP_LNOP;
+ kill_use(&insn->src);
return 1;
}
diff --git a/validation/mem2reg/load-deadborn.c b/validation/mem2reg/load-deadborn.c
new file mode 100644
index 00000000..fa0baeae
--- /dev/null
+++ b/validation/mem2reg/load-deadborn.c
@@ -0,0 +1,9 @@
+static void foo(int a)
+{
+ return;
+ a;
+}
+
+/*
+ * check-name: load-deadborn
+ */