summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2011-01-29 04:53:35 +0000
committerEvan Cheng <evan.cheng@apple.com>2011-01-29 04:53:35 +0000
commit73c29178acb9d415aa192775c01e43184f2fe1ee (patch)
tree5fbfc7bcf3506c38ecd2d49812d6d2af1d08e6d6 /llvm/lib/Transforms
parentd983eba7dc16a56e51a593e333caad9889b44af6 (diff)
downloadbcm5719-llvm-73c29178acb9d415aa192775c01e43184f2fe1ee.tar.gz
bcm5719-llvm-73c29178acb9d415aa192775c01e43184f2fe1ee.zip
Add a test for TCE return duplication.
llvm-svn: 124527
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r--llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp b/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
index 61f230804f5..50d4cc33171 100644
--- a/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
+++ b/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
@@ -72,6 +72,7 @@
using namespace llvm;
STATISTIC(NumEliminated, "Number of tail calls removed");
+STATISTIC(NumRetDuped, "Number of return duplicated");
STATISTIC(NumAccumAdded, "Number of accumulators introduced");
namespace {
@@ -606,6 +607,7 @@ bool TailCallElim::FoldReturnAndProcessPred(BasicBlock *BB,
EliminateRecursiveTailCall(CI, FoldReturnIntoUncondBranch(Ret, BB, Pred),
OldEntry, TailCallsAreMarkedTail, ArgumentPHIs,
CannotTailCallElimCallsMarkedTail);
+ ++NumRetDuped;
Change = true;
}
}
OpenPOWER on IntegriCloud