[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
Sandeep Patel
deeppatel1987 at gmail.com
Fri Aug 13 16:28:22 PDT 2010
This is only a problem with the Darwin linker, right?
deep
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
>
More information about the llvm-commits
mailing list