From 62d0f7330089e0b370ac25e37408c27270f252a1 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 8 Dec 2003 23:16:25 +0000 Subject: [PATCH] New testcase for automatic insertion of accumulator variables to eliminate tail recursion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10331 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Transforms/TailCallElim/accum_recursion.ll | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 test/Transforms/TailCallElim/accum_recursion.ll diff --git a/test/Transforms/TailCallElim/accum_recursion.ll b/test/Transforms/TailCallElim/accum_recursion.ll new file mode 100644 index 00000000000..ceef503a29e --- /dev/null +++ b/test/Transforms/TailCallElim/accum_recursion.ll @@ -0,0 +1,17 @@ +; RUN: llvm-as < %s | opt -tailcallelim | llvm-dis | not grep call + +int %factorial(int %x) { +entry: + %tmp.1 = setgt int %x, 0 + br bool %tmp.1, label %then, label %else + +then: + %tmp.6 = add int %x, -1 + %tmp.4 = call int %factorial( int %tmp.6 ) + %tmp.7 = mul int %tmp.4, %x + ret int %tmp.7 + +else: + ret int 1 +} + -- 2.34.1