summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2015-10-26 20:46:44 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2015-10-26 20:46:44 +0000
commit99fac80db26602b7c2b30d4bf6136bfd6398406f (patch)
treefff8f3e62a803468f341ee04de90d2034cfbfb07 /llvm/lib/Target
parent3e9560200f6763c10a704fa9e08ad167cef1fb25 (diff)
downloadbcm5719-llvm-99fac80db26602b7c2b30d4bf6136bfd6398406f.tar.gz
bcm5719-llvm-99fac80db26602b7c2b30d4bf6136bfd6398406f.zip
ARM/ELF: Restore original (pre-r251322) logic for deciding whether to use GOT.
Unbreaks linking with gold, which cannot resolve direct relocations referring to global symbols. llvm-svn: 251342
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/ARM/ARMFastISel.cpp2
-rw-r--r--llvm/lib/Target/ARM/ARMISelLowering.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/ARMFastISel.cpp b/llvm/lib/Target/ARM/ARMFastISel.cpp
index a2093ebb85d..175107450fc 100644
--- a/llvm/lib/Target/ARM/ARMFastISel.cpp
+++ b/llvm/lib/Target/ARM/ARMFastISel.cpp
@@ -2940,7 +2940,7 @@ bool ARMFastISel::tryToFoldLoadIntoMI(MachineInstr *MI, unsigned OpNo,
unsigned ARMFastISel::ARMLowerPICELF(const GlobalValue *GV,
unsigned Align, MVT VT) {
bool UseGOT_PREL =
- !(GV->hasHiddenVisibility() || GV->isStrongDefinitionForLinker());
+ !(GV->hasHiddenVisibility() || GV->hasLocalLinkage());
LLVMContext *Context = &MF->getFunction()->getContext();
unsigned ARMPCLabelIndex = AFI->createPICLabelUId();
diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp
index 36f8886ea0e..49f8918b8dd 100644
--- a/llvm/lib/Target/ARM/ARMISelLowering.cpp
+++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp
@@ -2637,7 +2637,7 @@ SDValue ARMTargetLowering::LowerGlobalAddressELF(SDValue Op,
const GlobalValue *GV = cast<GlobalAddressSDNode>(Op)->getGlobal();
if (getTargetMachine().getRelocationModel() == Reloc::PIC_) {
bool UseGOT_PREL =
- !(GV->hasHiddenVisibility() || GV->isStrongDefinitionForLinker());
+ !(GV->hasHiddenVisibility() || GV->hasLocalLinkage());
MachineFunction &MF = DAG.getMachineFunction();
ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
OpenPOWER on IntegriCloud