Add ExtractValue instruction to SimplifyCFG's ComputeSpeculationCost
[oota-llvm.git] / test / Transforms / SimplifyCFG / PhiBlockMerge2.ll
index 7e80677bc795181618e6a7f7a8dd017f9a04188e..fb5d600f11483ed7f882de6b3251565578b1531d 100644 (file)
@@ -2,20 +2,26 @@
 ; where the mergedinto block doesn't have any PHI nodes, and is in fact 
 ; dominated by the block-to-be-eliminated
 ;
-; RUN: llvm-upgrade < %s | llvm-as | opt -simplifycfg | llvm-dis | not grep 'N:'
+; RUN: opt < %s -simplifycfg -S | not grep N:
 ;
 
-int %test(bool %a, bool %b) {
-       br bool %b, label %N, label %Q
+declare i1 @foo()
+
+define i32 @test(i1 %a, i1 %b) {
+        %c = call i1 @foo()
+       br i1 %c, label %N, label %P
+P:
+        %d = call i1 @foo()
+       br i1 %d, label %N, label %Q
 Q:
        br label %N
 N:
-       %W = phi int [0, %0], [1, %Q]
+       %W = phi i32 [0, %0], [1, %Q], [2, %P]
        ; This block should be foldable into M
        br label %M
 
 M:
-       %R = add int %W, 1
-       ret int %R
+       %R = add i32 %W, 1
+       ret i32 %R
 }