[llvm-commits] [llvm] r111050 - in /llvm/trunk: ./ lib/Target/ARM/ARMISelLowering.cpp test/CodeGen/ARM/2010-06-21-nondarwin-tc.ll test/CodeGen/ARM/call-tc.ll test/CodeGen/Thumb2/thumb2-call-tc.ll test/CodeGen/Thumb2/thumb2-ifcvt1-tc.ll

Dale Johannesen dalej at apple.com
Fri Aug 13 16:37:50 PDT 2010


On Aug 13, 2010, at 4:28 PMPDT, Sandeep Patel wrote:

> This is only a problem with the Darwin linker, right?
>
> deep

Yes.  If somebody wants to conditionally enable it for non-Darwin,  
that will probably work OK.   We can't test it here though.

> On Fri, Aug 13, 2010 at 10:43 PM, Bob Wilson <bob.wilson at apple.com>  
> wrote:
>> Author: bwilson
>> Date: Fri Aug 13 17:43:33 2010
>> New Revision: 111050
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=111050&view=rev
>> Log:
>> Temporarily disable tail calls on ARM to work around some linker  
>> problems.
>>
>> Modified:
>>    llvm/trunk/   (props changed)
>>    llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp
>>    llvm/trunk/test/CodeGen/ARM/2010-06-21-nondarwin-tc.ll
>>    llvm/trunk/test/CodeGen/ARM/call-tc.ll
>>    llvm/trunk/test/CodeGen/Thumb2/thumb2-call-tc.ll
>>    llvm/trunk/test/CodeGen/Thumb2/thumb2-ifcvt1-tc.ll
>>
>> Propchange: llvm/trunk/
>> ------------------------------------------------------------------------------
>>    svn:mergeinfo = /llvm/branches/Apple/Pertwee:110850,110961
>>
>> Modified: llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp?rev=111050&r1=111049&r2=111050&view=diff
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp (original)
>> +++ llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp Fri Aug 13  
>> 17:43:33 2010
>> @@ -51,6 +51,12 @@
>>
>>  STATISTIC(NumTailCalls, "Number of tail calls");
>>
>> +// This option should go away when tail calls fully work.
>> +static cl::opt<bool>
>> +EnableARMTailCalls("arm-tail-calls", cl::Hidden,
>> +  cl::desc("Generate tail calls (TEMPORARY OPTION)."),
>> +  cl::init(false));
>> +
>>  // This option should go away when Machine LICM is smart enough to  
>> hoist a
>>  // reg-to-reg VDUP.
>>  static cl::opt<bool>
>> @@ -1117,6 +1123,9 @@
>>   MachineFunction &MF = DAG.getMachineFunction();
>>   bool IsStructRet    = (Outs.empty()) ? false :  
>> Outs[0].Flags.isSRet();
>>   bool IsSibCall = false;
>> +  // Temporarily disable tail calls so things don't break.
>> +  if (!EnableARMTailCalls)
>> +    isTailCall = false;
>>   if (isTailCall) {
>>     // Check if it's really possible to do a tail call.
>>     isTailCall = IsEligibleForTailCallOptimization(Callee, CallConv,
>>
>> Modified: llvm/trunk/test/CodeGen/ARM/2010-06-21-nondarwin-tc.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2010-06-21-nondarwin-tc.ll?rev=111050&r1=111049&r2=111050&view=diff
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/test/CodeGen/ARM/2010-06-21-nondarwin-tc.ll (original)
>> +++ llvm/trunk/test/CodeGen/ARM/2010-06-21-nondarwin-tc.ll Fri Aug  
>> 13 17:43:33 2010
>> @@ -1,5 +1,6 @@
>>  ; RUN: llc < %s -march=arm -mtriple=armv4t-unknown-linux-gnueabi   
>> | FileCheck %s
>>  ; PR 7433
>> +; XFAIL: *
>>
>>  %0 = type { i8*, i8* }
>>  %1 = type { i8*, i8*, i8* }
>>
>> Modified: llvm/trunk/test/CodeGen/ARM/call-tc.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/call-tc.ll?rev=111050&r1=111049&r2=111050&view=diff
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/test/CodeGen/ARM/call-tc.ll (original)
>> +++ llvm/trunk/test/CodeGen/ARM/call-tc.ll Fri Aug 13 17:43:33 2010
>> @@ -2,6 +2,7 @@
>>  ; RUN: llc < %s -march=arm -mtriple=arm-apple-darwin -mattr=+v5t |  
>> FileCheck %s -check-prefix=CHECKV5
>>  ; RUN: llc < %s -march=arm -mtriple=arm-linux-gnueabi\
>>  ; RUN:   -relocation-model=pic | FileCheck %s -check-prefix=CHECKELF
>> +; XFAIL: *
>>
>>  @t = weak global i32 ()* null           ; <i32 ()**> [#uses=1]
>>
>>
>> Modified: llvm/trunk/test/CodeGen/Thumb2/thumb2-call-tc.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Thumb2/thumb2-call-tc.ll?rev=111050&r1=111049&r2=111050&view=diff
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/test/CodeGen/Thumb2/thumb2-call-tc.ll (original)
>> +++ llvm/trunk/test/CodeGen/Thumb2/thumb2-call-tc.ll Fri Aug 13  
>> 17:43:33 2010
>> @@ -1,5 +1,6 @@
>>  ; RUN: llc < %s -mtriple=thumbv7-apple-darwin -mattr=+thumb2 |  
>> FileCheck %s -check-prefix=DARWIN
>>  ; RUN: llc < %s -mtriple=thumbv7-linux -mattr=+thumb2 | FileCheck  
>> %s -check-prefix=LINUX
>> +; XFAIL: *
>>
>>  @t = weak global i32 ()* null           ; <i32 ()**> [#uses=1]
>>
>>
>> Modified: llvm/trunk/test/CodeGen/Thumb2/thumb2-ifcvt1-tc.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Thumb2/thumb2-ifcvt1-tc.ll?rev=111050&r1=111049&r2=111050&view=diff
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/test/CodeGen/Thumb2/thumb2-ifcvt1-tc.ll (original)
>> +++ llvm/trunk/test/CodeGen/Thumb2/thumb2-ifcvt1-tc.ll Fri Aug 13  
>> 17:43:33 2010
>> @@ -1,4 +1,5 @@
>>  ; RUN: llc < %s -mtriple=thumbv7-apple-darwin | FileCheck %s
>> +; XFAIL: *
>>
>>  define i32 @t1(i32 %a, i32 %b, i32 %c, i32 %d) nounwind {
>>  ; CHECK: t1:
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list