From: Anton Korobeynikov Date: Wed, 23 Sep 2009 19:04:09 +0000 (+0000) Subject: ARM does not support offset folding (yet). Disable it for now. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=48e19352840a5f7012493ead894e81a2dbec1778;p=oota-llvm.git ARM does not support offset folding (yet). Disable it for now. This fixes PR5031. Unfortunately, there is no small testcase :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82643 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/ARM/ARMISelLowering.cpp b/lib/Target/ARM/ARMISelLowering.cpp index df9f29644b1..a656ef93fe7 100644 --- a/lib/Target/ARM/ARMISelLowering.cpp +++ b/lib/Target/ARM/ARMISelLowering.cpp @@ -4073,3 +4073,9 @@ void ARMTargetLowering::LowerAsmOperandForConstraint(SDValue Op, return TargetLowering::LowerAsmOperandForConstraint(Op, Constraint, hasMemory, Ops, DAG); } + +bool +ARMTargetLowering::isOffsetFoldingLegal(const GlobalAddressSDNode *GA) const { + // The ARM target isn't yet aware of offsets. + return false; +} diff --git a/lib/Target/ARM/ARMISelLowering.h b/lib/Target/ARM/ARMISelLowering.h index 94dcf0d6bc5..7d85f458d8e 100644 --- a/lib/Target/ARM/ARMISelLowering.h +++ b/lib/Target/ARM/ARMISelLowering.h @@ -223,6 +223,7 @@ namespace llvm { virtual unsigned getFunctionAlignment(const Function *F) const; bool isShuffleMaskLegal(const SmallVectorImpl &M, EVT VT) const; + bool isOffsetFoldingLegal(const GlobalAddressSDNode *GA) const; private: /// Subtarget - Keep a pointer to the ARMSubtarget around so that we can /// make the right decision when generating code for different targets.