[llvm-commits] [llvm] r94617 - /llvm/trunk/lib/Target/X86/X86FastISel.cpp
Dan Gohman
gohman at apple.com
Tue Jan 26 15:33:53 PST 2010
On Jan 26, 2010, at 3:28 PM, Evan Cheng wrote:
> Author: evancheng
> Date: Tue Jan 26 17:28:40 2010
> New Revision: 94617
>
> URL: http://llvm.org/viewvc/llvm-project?rev=94617&view=rev
> Log:
> Ignore 'forced' tailcall opt in fastisel mode.
>
> Modified:
> llvm/trunk/lib/Target/X86/X86FastISel.cpp
>
> Modified: llvm/trunk/lib/Target/X86/X86FastISel.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86FastISel.cpp?rev=94617&r1=94616&r2=94617&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86FastISel.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86FastISel.cpp Tue Jan 26 17:28:40 2010
> @@ -1243,11 +1243,6 @@
> CC != CallingConv::X86_FastCall)
> return false;
>
> - // fastcc with -tailcallopt is intended to provide a guaranteed
> - // tail call optimization. Fastisel doesn't know how to do that.
> - if (X86::IsEligibleForTailCallOpt(CC))
> - return false;
This change breaks the "guarantee"; the -tailcallopt option with
fastcc is intended to guarantee a tail call.
FastISel should still bail out if PerformTailCallOpt is true and
CC is CallingConv::Fast.
Dan
More information about the llvm-commits
mailing list