aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2007-06-19 05:41:22 +0000
committerOwen Anderson <resistor@mac.com>2007-06-19 05:41:22 +0000
commit5b689c3a28cb3e51d25c2ef1e9ea448a4baf0757 (patch)
treec8d929fbd578ddb1ba34388af469b148aa93bbf8 /test
parent20cb51fda48edb2109fb94cd7c04e2774db3bb6c (diff)
downloadexternal_llvm-5b689c3a28cb3e51d25c2ef1e9ea448a4baf0757.zip
external_llvm-5b689c3a28cb3e51d25c2ef1e9ea448a4baf0757.tar.gz
external_llvm-5b689c3a28cb3e51d25c2ef1e9ea448a4baf0757.tar.bz2
Add a new testcase for memory corruption issues.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37648 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/Transforms/GVNPRE/2007-06-18-EraseNumbering.ll26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/Transforms/GVNPRE/2007-06-18-EraseNumbering.ll b/test/Transforms/GVNPRE/2007-06-18-EraseNumbering.ll
new file mode 100644
index 0000000..af51a03
--- /dev/null
+++ b/test/Transforms/GVNPRE/2007-06-18-EraseNumbering.ll
@@ -0,0 +1,26 @@
+; RUN: llvm-as < %s | opt -gvnpre | llvm-dis
+
+define i32 @TreeCCStreamFlush(i8* %stream) {
+entry:
+ br i1 false, label %bb55.preheader, label %cond_true
+
+cond_true: ; preds = %entry
+ ret i32 0
+
+bb55.preheader: ; preds = %entry
+ %tmp57 = icmp eq i8* null, null ; <i1> [#uses=0]
+ br i1 false, label %cond_next106, label %bb124
+
+cond_next106: ; preds = %bb55.preheader
+ %tmp109 = load i8** null
+ br i1 false, label %bb124, label %bb116
+
+bb116: ; preds = %cond_next106
+ ret i32 0
+
+bb124: ; preds = %cond_next106, %bb55.preheader
+ %buffer.4 = phi i8* [ null, %bb55.preheader ], [ %tmp109, %cond_next106 ]
+ %tmp131 = icmp eq i8* %buffer.4, null
+ %bothcond = or i1 %tmp131, false
+ ret i32 0
+}