Add a priority queue class, which is a wrapper around std::priority_queue
[oota-llvm.git] / test / Transforms / InstCombine / deadcode.ll
index e738576f5ff63835fdb23d4297976b2c1eea99e6..43c17931554882dfb2ca33002834608e8e2ddf23 100644 (file)
@@ -1,12 +1,24 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep 'ret int %A'
-
-int %test(int %A) {
-  %X = or bool false, false
-  br bool %X, label %T, label %C
-T:
-  %B = add int %A, 1
-  br label %C
-C:
-  %C = phi int [%B, %T], [%A, %0]
-  ret int %C
+; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep {ret i32 %A}
+; RUN: llvm-as < %s | opt -die | llvm-dis | not grep call.*llvm.stacksave
+
+define i32 @test(i32 %A) {
+       %X = or i1 false, false         
+       br i1 %X, label %T, label %C
+
+T:             ; preds = %0
+       %B = add i32 %A, 1      
+       br label %C
+
+C:             ; preds = %T, %0
+       %C.upgrd.1 = phi i32 [ %B, %T ], [ %A, %0 ]
+       ret i32 %C.upgrd.1
 }
+
+define i32* @test2(i32 %width) {
+       %tmp = call i8* @llvm.stacksave( )
+        %tmp14 = alloca i32, i32 %width
+       ret i32* %tmp14
+} 
+
+declare i8* @llvm.stacksave()
+