projects
/
oota-llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
3fb6e00
)
Do not lose line number info while eliminating tail call.
author
Devang Patel
<dpatel@apple.com>
Thu, 28 Apr 2011 18:43:39 +0000
(18:43 +0000)
committer
Devang Patel
<dpatel@apple.com>
Thu, 28 Apr 2011 18:43:39 +0000
(18:43 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130419
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/Transforms/Scalar/TailRecursionElimination.cpp
patch
|
blob
|
history
diff --git
a/lib/Transforms/Scalar/TailRecursionElimination.cpp
b/lib/Transforms/Scalar/TailRecursionElimination.cpp
index a2217597100b6db278200d65314d166838814162..539cc6f0baf50471ef854c4c723acd0521bb25e2 100644
(file)
--- a/
lib/Transforms/Scalar/TailRecursionElimination.cpp
+++ b/
lib/Transforms/Scalar/TailRecursionElimination.cpp
@@
-573,7
+573,9
@@
bool TailCallElim::EliminateRecursiveTailCall(CallInst *CI, ReturnInst *Ret,
// Now that all of the PHI nodes are in place, remove the call and
// ret instructions, replacing them with an unconditional branch.
- BranchInst::Create(OldEntry, Ret);
+ BranchInst *NewBI = BranchInst::Create(OldEntry, Ret);
+ NewBI->setDebugLoc(CI->getDebugLoc());
+
BB->getInstList().erase(Ret); // Remove return.
BB->getInstList().erase(CI); // Remove call.
++NumEliminated;