[llvm] r271111 - Fix default reloc model on ARM.
Rafael Espindola via llvm-commits
llvm-commits at lists.llvm.org
Sat May 28 03:41:36 PDT 2016
Author: rafael
Date: Sat May 28 05:41:15 2016
New Revision: 271111
URL: http://llvm.org/viewvc/llvm-project?rev=271111&view=rev
Log:
Fix default reloc model on ARM.
Added:
llvm/trunk/test/CodeGen/ARM/default-reloc.ll
Modified:
llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp
Modified: llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp?rev=271111&r1=271110&r2=271111&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp Sat May 28 05:41:15 2016
@@ -175,8 +175,8 @@ static std::string computeDataLayout(con
static Reloc::Model getEffectiveRelocModel(const Triple &TT,
Optional<Reloc::Model> RM) {
if (!RM.hasValue())
- // Default relocation model on Darwin is PIC, not DynamicNoPIC.
- return TT.isOSDarwin() ? Reloc::PIC_ : Reloc::DynamicNoPIC;
+ // Default relocation model on Darwin is PIC.
+ return TT.isOSBinFormatMachO() ? Reloc::PIC_ : Reloc::Static;
// DynamicNoPIC is only used on darwin.
if (*RM == Reloc::DynamicNoPIC && !TT.isOSDarwin())
Added: llvm/trunk/test/CodeGen/ARM/default-reloc.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/default-reloc.ll?rev=271111&view=auto
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/default-reloc.ll (added)
+++ llvm/trunk/test/CodeGen/ARM/default-reloc.ll Sat May 28 05:41:15 2016
@@ -0,0 +1,5 @@
+; RUN: llc -mtriple=armv7-linux-gnu -O0 < %s
+ at a = external global i32
+define i32* @get() {
+ ret i32* @a
+}
More information about the llvm-commits
mailing list