[llvm-commits] [llvm] r64520 - in /llvm/branches/release_25: lib/Transforms/Utils/InlineFunction.cpp test/Transforms/Inline/inline-invoke-tail.ll
Tanya Lattner
tonic at nondot.org
Fri Feb 13 17:04:03 PST 2009
Author: tbrethou
Date: Fri Feb 13 19:04:03 2009
New Revision: 64520
URL: http://llvm.org/viewvc/llvm-project?rev=64520&view=rev
Log:
Merge 64364 from mainline.
Fix a nasty bug (PR3550) where the inline pass could incorrectly mark
calls with the tail marker when inlining them through an invoke. Patch,
testcase, and perfect analysis by Jay Foad!
Added:
llvm/branches/release_25/test/Transforms/Inline/inline-invoke-tail.ll
- copied unchanged from r64364, llvm/trunk/test/Transforms/Inline/inline-invoke-tail.ll
Modified:
llvm/branches/release_25/lib/Transforms/Utils/InlineFunction.cpp
Modified: llvm/branches/release_25/lib/Transforms/Utils/InlineFunction.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_25/lib/Transforms/Utils/InlineFunction.cpp?rev=64520&r1=64519&r2=64520&view=diff
==============================================================================
--- llvm/branches/release_25/lib/Transforms/Utils/InlineFunction.cpp (original)
+++ llvm/branches/release_25/lib/Transforms/Utils/InlineFunction.cpp Fri Feb 13 19:04:03 2009
@@ -203,10 +203,10 @@
CalledFunc->getFunctionType()->isVarArg()) return false;
- // If the call to the callee is a non-tail call, we must clear the 'tail'
+ // If the call to the callee is not a tail call, we must clear the 'tail'
// flags on any calls that we inline.
bool MustClearTailCallFlags =
- isa<CallInst>(TheCall) && !cast<CallInst>(TheCall)->isTailCall();
+ !(isa<CallInst>(TheCall) && cast<CallInst>(TheCall)->isTailCall());
// If the call to the callee cannot throw, set the 'nounwind' flag on any
// calls that we inline.
More information about the llvm-commits
mailing list