From a88cd4ea2a205346302760b5f0c8b815a1c20c16 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sat, 14 Jun 2008 00:49:48 +0000 Subject: Fix a case where tailcallelim wouldn't set the changed bit when it made a change. llvm-svn: 52267 --- llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'llvm/lib') diff --git a/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp b/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp index 61222f8732f..6fcf55b581a 100644 --- a/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp +++ b/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp @@ -185,8 +185,10 @@ bool TailCallElim::runOnFunction(Function &F) { if (!FunctionContainsEscapingAllocas) for (Function::iterator BB = F.begin(), E = F.end(); BB != E; ++BB) for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; ++I) - if (CallInst *CI = dyn_cast(I)) + if (CallInst *CI = dyn_cast(I)) { CI->setTailCall(); + MadeChange = true; + } return MadeChange; } -- cgit v1.2.3