diff options
Diffstat (limited to 'llvm/test/Transforms/SCCP/ipsccp-conditional.ll')
-rw-r--r-- | llvm/test/Transforms/SCCP/ipsccp-conditional.ll | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/llvm/test/Transforms/SCCP/ipsccp-conditional.ll b/llvm/test/Transforms/SCCP/ipsccp-conditional.ll index db36228e9cd..b98bbf44be6 100644 --- a/llvm/test/Transforms/SCCP/ipsccp-conditional.ll +++ b/llvm/test/Transforms/SCCP/ipsccp-conditional.ll @@ -1,20 +1,19 @@ -; RUN: llvm-upgrade < %s | llvm-as | opt -ipsccp | llvm-dis | \ +; RUN: llvm-as < %s | opt -ipsccp | llvm-dis | \ ; RUN: grep -v {ret i32 0} | grep -v {ret i32 undef} | not grep ret -implementation - -internal int %bar(int %A) { - %C = seteq int %A, 0 - br bool %C, label %T, label %F -T: - %B = call int %bar(int 0) - ret int 0 -F: ; unreachable - %C = call int %bar(int 1) - ret int %C +define internal i32 @bar(i32 %A) { + %C = icmp eq i32 %A, 0 ; <i1> [#uses=1] + br i1 %C, label %T, label %F +T: ; preds = %0 + %B = call i32 @bar( i32 0 ) ; <i32> [#uses=0] + ret i32 0 +F: ; preds = %0 + %C.upgrd.1 = call i32 @bar( i32 1 ) ; <i32> [#uses=1] + ret i32 %C.upgrd.1 } -int %foo() { - %X = call int %bar(int 0) - ret int %X +define i32 @foo() { + %X = call i32 @bar( i32 0 ) ; <i32> [#uses=1] + ret i32 %X } + |