OSDN Git Service

Add an ipsccp test. Migrated from test/FrontendC++.
authorEric Christopher <echristo@apple.com>
Mon, 15 Aug 2011 20:50:36 +0000 (20:50 +0000)
committerEric Christopher <echristo@apple.com>
Mon, 15 Aug 2011 20:50:36 +0000 (20:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137646 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/IPConstantProp/global.ll [new file with mode: 0644]

diff --git a/test/Transforms/IPConstantProp/global.ll b/test/Transforms/IPConstantProp/global.ll
new file mode 100644 (file)
index 0000000..6715293
--- /dev/null
@@ -0,0 +1,26 @@
+; RUN: opt < %s -S -ipsccp | FileCheck %s
+
+@_ZL6test1g = internal global i32 42, align 4
+
+define void @_Z7test1f1v() nounwind {
+entry:
+  %tmp = load i32* @_ZL6test1g, align 4
+  %cmp = icmp eq i32 %tmp, 0
+  br i1 %cmp, label %if.then, label %if.end
+
+if.then:                                          ; preds = %entry
+  store i32 0, i32* @_ZL6test1g, align 4
+  br label %if.end
+
+if.end:                                           ; preds = %if.then, %entry
+  ret void
+}
+
+; CHECK: @_Z7test1f2v()
+; CHECK: entry:
+; CHECK-NEXT: ret i32 42
+define i32 @_Z7test1f2v() nounwind {
+entry:
+  %tmp = load i32* @_ZL6test1g, align 4
+  ret i32 %tmp
+}