[llvm] r187126 - AArch64: fix even more JIT failures

Rafael EspĂ­ndola rafael.espindola at gmail.com
Thu Jul 25 09:12:40 PDT 2013


you can test this with llc, no?

On 25 July 2013 12:03, Tim Northover <tnorthover at apple.com> wrote:
> Author: tnorthover
> Date: Thu Jul 25 11:03:54 2013
> New Revision: 187126
>
> URL: http://llvm.org/viewvc/llvm-project?rev=187126&view=rev
> Log:
> AArch64: fix even more JIT failures
>
> The last patch corrected some issues, but constant-pool entries had actual
> codegen bugs in the large memory model (which MCJIT uses).
>
> Modified:
>     llvm/trunk/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
>     llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp
>
> Modified: llvm/trunk/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp?rev=187126&r1=187125&r2=187126&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp (original)
> +++ llvm/trunk/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp Thu Jul 25 11:03:54 2013
> @@ -259,15 +259,15 @@ AArch64DAGToDAGISel::getConstantPoolItem
>      LitAddr = CurDAG->getMachineNode(
>          AArch64::MOVZxii, DL, PtrVT,
>          CurDAG->getTargetConstantPool(CV, PtrVT, 0, 0, AArch64II::MO_ABS_G3),
> -        CurDAG->getTargetConstant(0, MVT::i32));
> +        CurDAG->getTargetConstant(3, MVT::i32));
>      LitAddr = CurDAG->getMachineNode(
>          AArch64::MOVKxii, DL, PtrVT, SDValue(LitAddr, 0),
>          CurDAG->getTargetConstantPool(CV, PtrVT, 0, 0, AArch64II::MO_ABS_G2_NC),
> -        CurDAG->getTargetConstant(0, MVT::i32));
> +        CurDAG->getTargetConstant(2, MVT::i32));
>      LitAddr = CurDAG->getMachineNode(
>          AArch64::MOVKxii, DL, PtrVT, SDValue(LitAddr, 0),
>          CurDAG->getTargetConstantPool(CV, PtrVT, 0, 0, AArch64II::MO_ABS_G1_NC),
> -        CurDAG->getTargetConstant(0, MVT::i32));
> +        CurDAG->getTargetConstant(1, MVT::i32));
>      LitAddr = CurDAG->getMachineNode(
>          AArch64::MOVKxii, DL, PtrVT, SDValue(LitAddr, 0),
>          CurDAG->getTargetConstantPool(CV, PtrVT, 0, 0, AArch64II::MO_ABS_G0_NC),
>
> Modified: llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp?rev=187126&r1=187125&r2=187126&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp (original)
> +++ llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp Thu Jul 25 11:03:54 2013
> @@ -2048,7 +2048,7 @@ AArch64TargetLowering::LowerGlobalTLSAdd
>                                                 AArch64II::MO_TPREL_G0_NC);
>
>      TPOff = SDValue(DAG.getMachineNode(AArch64::MOVZxii, DL, PtrVT, HiVar,
> -                                       DAG.getTargetConstant(0, MVT::i32)), 0);
> +                                       DAG.getTargetConstant(1, MVT::i32)), 0);
>      TPOff = SDValue(DAG.getMachineNode(AArch64::MOVKxii, DL, PtrVT,
>                                         TPOff, LoVar,
>                                         DAG.getTargetConstant(0, MVT::i32)), 0);
>
>
> _______________________________________________
> 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