summaryrefslogtreecommitdiff
path: root/test/Transforms/TailCallElim/ackermann.ll
diff options
context:
space:
mode:
authorTanya Lattner <tonic@nondot.org>2008-03-10 07:21:50 +0000
committerTanya Lattner <tonic@nondot.org>2008-03-10 07:21:50 +0000
commitceca194c4355224723b309a3a27c5e5bc19cb6fc (patch)
treed976e8cf9d933c32868d72a94d1ec2d9d7205735 /test/Transforms/TailCallElim/ackermann.ll
parentf79e60649a5edea03bdccf8521d77c15cbb33af4 (diff)
downloadllvm-ceca194c4355224723b309a3a27c5e5bc19cb6fc.tar.gz
llvm-ceca194c4355224723b309a3a27c5e5bc19cb6fc.tar.bz2
llvm-ceca194c4355224723b309a3a27c5e5bc19cb6fc.tar.xz
Remove llvm-upgrade and update tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48137 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/TailCallElim/ackermann.ll')
-rw-r--r--test/Transforms/TailCallElim/ackermann.ll44
1 files changed, 20 insertions, 24 deletions
diff --git a/test/Transforms/TailCallElim/ackermann.ll b/test/Transforms/TailCallElim/ackermann.ll
index dd6e2769f1..f65c66669e 100644
--- a/test/Transforms/TailCallElim/ackermann.ll
+++ b/test/Transforms/TailCallElim/ackermann.ll
@@ -1,30 +1,26 @@
; This function contains two tail calls, which should be eliminated
-; RUN: llvm-upgrade < %s | llvm-as | \
+; RUN: llvm-as < %s | \
; RUN: opt -tailcallelim -stats -disable-output |& grep {2 tailcallelim}
-int %Ack(int %M.1, int %N.1) {
+define i32 @Ack(i32 %M.1, i32 %N.1) {
entry:
- %tmp.1 = seteq int %M.1, 0 ; <bool> [#uses=1]
- br bool %tmp.1, label %then.0, label %endif.0
-
-then.0:
- %tmp.4 = add int %N.1, 1 ; <int> [#uses=1]
- ret int %tmp.4
-
-endif.0:
- %tmp.6 = seteq int %N.1, 0 ; <bool> [#uses=1]
- br bool %tmp.6, label %then.1, label %endif.1
-
-then.1:
- %tmp.10 = add int %M.1, -1 ; <int> [#uses=1]
- %tmp.8 = call int %Ack( int %tmp.10, int 1 ) ; <int> [#uses=1]
- ret int %tmp.8
-
-endif.1:
- %tmp.13 = add int %M.1, -1 ; <int> [#uses=1]
- %tmp.17 = add int %N.1, -1 ; <int> [#uses=1]
- %tmp.14 = call int %Ack( int %M.1, int %tmp.17 ) ; <int> [#uses=1]
- %tmp.11 = call int %Ack( int %tmp.13, int %tmp.14 ) ; <int> [#uses=1]
- ret int %tmp.11
+ %tmp.1 = icmp eq i32 %M.1, 0 ; <i1> [#uses=1]
+ br i1 %tmp.1, label %then.0, label %endif.0
+then.0: ; preds = %entry
+ %tmp.4 = add i32 %N.1, 1 ; <i32> [#uses=1]
+ ret i32 %tmp.4
+endif.0: ; preds = %entry
+ %tmp.6 = icmp eq i32 %N.1, 0 ; <i1> [#uses=1]
+ br i1 %tmp.6, label %then.1, label %endif.1
+then.1: ; preds = %endif.0
+ %tmp.10 = add i32 %M.1, -1 ; <i32> [#uses=1]
+ %tmp.8 = call i32 @Ack( i32 %tmp.10, i32 1 ) ; <i32> [#uses=1]
+ ret i32 %tmp.8
+endif.1: ; preds = %endif.0
+ %tmp.13 = add i32 %M.1, -1 ; <i32> [#uses=1]
+ %tmp.17 = add i32 %N.1, -1 ; <i32> [#uses=1]
+ %tmp.14 = call i32 @Ack( i32 %M.1, i32 %tmp.17 ) ; <i32> [#uses=1]
+ %tmp.11 = call i32 @Ack( i32 %tmp.13, i32 %tmp.14 ) ; <i32> [#uses=1]
+ ret i32 %tmp.11
}