new testcase, update old one.
authorChris Lattner <sabre@nondot.org>
Fri, 6 Apr 2007 18:56:54 +0000 (18:56 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 6 Apr 2007 18:56:54 +0000 (18:56 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35699 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/InstCombine/malloc.ll
test/Transforms/InstCombine/malloc2.ll [new file with mode: 0644]

index 34fdfe862e826d872a45cdf020909f1e0d1af25a..6a4601a2ebeeef720eef3cae6209fa1839321e4d 100644 (file)
@@ -1,7 +1,7 @@
 ; test that malloc's with a constant argument are promoted to array allocations
-; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | grep getelementptr
+; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep getelementptr
 
-int* %test() {
-       %X = malloc int, uint 4
-       ret int* %X
+define i32* @test() {
+       %X = malloc i32, i32 4
+       ret i32* %X
 }
diff --git a/test/Transforms/InstCombine/malloc2.ll b/test/Transforms/InstCombine/malloc2.ll
new file mode 100644 (file)
index 0000000..0ebb521
--- /dev/null
@@ -0,0 +1,19 @@
+; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'ret i32 0' &&
+; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep malloc
+; PR1313
+
+define i32 @test1(i32 %argc, i8* %argv, i8* %envp) {
+        %tmp15.i.i.i23 = malloc [2564 x i32]            ; <[2564 x i32]*> [#uses=1]
+        %c = icmp eq [2564 x i32]* %tmp15.i.i.i23, null              ; <i1>:0 [#uses=1]
+        %retval = zext i1 %c to i32             ; <i32> [#uses=1]
+        ret i32 %retval
+}
+
+define i32 @test2(i32 %argc, i8* %argv, i8* %envp) {
+        %tmp15.i.i.i23 = malloc [2564 x i32]            ; <[2564 x i32]*> [#uses=1]
+        %X = bitcast [2564 x i32]* %tmp15.i.i.i23 to i32*
+        %c = icmp ne i32* %X, null
+        %retval = zext i1 %c to i32             ; <i32> [#uses=1]
+        ret i32 %retval
+}
+