[llvm-commits] [llvm] r55898 - /llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
Bill Wendling
isanbard at gmail.com
Mon Sep 8 10:55:04 PDT 2008
Anton,
One of your changes between r 55898 and r 55909 is causing an internal
compiler error during a full bootstrap:
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/xgcc
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/bin/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/lib/
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/include
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/sys-include
-O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-isystem ./include -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../llvm-gcc.src/gcc
-I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include
-I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include
-I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include
-DSHARED -m64 -DL_negdi2 -c ../../llvm-gcc.src/gcc/libgcc2.c -o
libgcc/x86_64/_negdi2_s.o
Assertion failed: (TargetRegisterInfo::isVirtualRegister(regA) &&
TargetRegisterInfo::isVirtualRegister(regB) && "cannot update physical
register live information"), function runOnMachineFunction, file
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/lib/CodeGen/TwoAddressInstructionPass.cpp,
line 311.
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/xgcc
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/bin/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/lib/
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/include
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/sys-include
-O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-isystem ./include -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../llvm-gcc.src/gcc
-I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include
-I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include
-I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include
-DSHARED -m64 -DL_lshrdi3 -c ../../llvm-gcc.src/gcc/libgcc2.c -o
libgcc/x86_64/_lshrdi3_s.o
../../llvm-gcc.src/gcc/unwind-dw2.c:1527: internal compiler error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
{standard input}:unknown:Undefined local symbol LBB21_11
{standard input}:unknown:Undefined local symbol LBB21_12
{standard input}:unknown:Undefined local symbol LBB21_13
{standard input}:unknown:Undefined local symbol LBB21_8
I'm going to revert your changes for now. Please investigate and fix. Thanks!
-bw
On Mon, Sep 8, 2008 at 7:21 AM, Anton Korobeynikov <asl at math.spbu.ru> wrote:
> Author: asl
> Date: Mon Sep 8 09:21:10 2008
> New Revision: 55898
>
> URL: http://llvm.org/viewvc/llvm-project?rev=55898&view=rev
> Log:
> Implement FRAME_TO_ARGS_OFFSET for x86-64
>
> Modified:
> llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
>
> Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=55898&r1=55897&r2=55898&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Mon Sep 8 09:21:10 2008
> @@ -258,8 +258,7 @@
> }
> // X86 ret instruction may pop stack.
> setOperationAction(ISD::RET , MVT::Other, Custom);
> - if (!Subtarget->is64Bit())
> - setOperationAction(ISD::EH_RETURN , MVT::Other, Custom);
> + setOperationAction(ISD::EH_RETURN , MVT::Other, Custom);
>
> // Darwin ABI issue.
> setOperationAction(ISD::ConstantPool , MVT::i32 , Custom);
> @@ -325,7 +324,8 @@
> setExceptionSelectorRegister(X86::EDX);
> }
> setOperationAction(ISD::FRAME_TO_ARGS_OFFSET, MVT::i32, Custom);
> -
> + setOperationAction(ISD::FRAME_TO_ARGS_OFFSET, MVT::i64, Custom);
> +
> setOperationAction(ISD::TRAMPOLINE, MVT::Other, Custom);
>
> setOperationAction(ISD::TRAP, MVT::Other, Legal);
> @@ -5593,19 +5593,15 @@
> // Depths > 0 not supported yet!
> if (cast<ConstantSDNode>(Op.getOperand(0))->getValue() > 0)
> return SDValue();
> -
> +
> SDValue RetAddrFI = getReturnAddressFrameIndex(DAG);
> - return DAG.getNode(ISD::SUB, getPointerTy(), RetAddrFI,
> + return DAG.getNode(ISD::SUB, getPointerTy(), RetAddrFI,
> DAG.getIntPtrConstant(!Subtarget->is64Bit() ? 4 : 8));
> }
>
> SDValue X86TargetLowering::LowerFRAME_TO_ARGS_OFFSET(SDValue Op,
> - SelectionDAG &DAG) {
> - // Is not yet supported on x86-64
> - if (Subtarget->is64Bit())
> - return SDValue();
> -
> - return DAG.getIntPtrConstant(8);
> + SelectionDAG &DAG) {
> + return DAG.getIntPtrConstant(Subtarget->is64Bit() ? 16 : 8);
> }
>
> SDValue X86TargetLowering::LowerEH_RETURN(SDValue Op, SelectionDAG &DAG)
>
>
> _______________________________________________
> 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