[llvm-commits] [llvm] r94617 - /llvm/trunk/lib/Target/X86/X86FastISel.cpp
Evan Cheng
evan.cheng at apple.com
Tue Jan 26 15:46:51 PST 2010
On Jan 26, 2010, at 3:33 PM, Dan Gohman wrote:
>
> 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.
Alright I'll restore the code.
Evan
>
> Dan
>
More information about the llvm-commits
mailing list