summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86TargetMachine.cpp
diff options
context:
space:
mode:
authorReid Kleckner <rnk@google.com>2018-06-21 22:19:05 +0000
committerReid Kleckner <rnk@google.com>2018-06-21 22:19:05 +0000
commit3a2fd1c2f38b298409db3f154f991393e924942f (patch)
treea5f8b874027e93f099f7892ef34e484f828025ac /llvm/lib/Target/X86/X86TargetMachine.cpp
parent07605cb6eab159cff9817f57626c10ecda5c92d2 (diff)
downloadbcm5719-llvm-3a2fd1c2f38b298409db3f154f991393e924942f.tar.gz
bcm5719-llvm-3a2fd1c2f38b298409db3f154f991393e924942f.zip
Revert r335297 "[X86] Implement more of x86-64 large and medium PIC code models"
MCJIT can't handle R_X86_64_GOT64 yet. llvm-svn: 335300
Diffstat (limited to 'llvm/lib/Target/X86/X86TargetMachine.cpp')
-rw-r--r--llvm/lib/Target/X86/X86TargetMachine.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86TargetMachine.cpp b/llvm/lib/Target/X86/X86TargetMachine.cpp
index 92f5e795d7d..a713bddf7bf 100644
--- a/llvm/lib/Target/X86/X86TargetMachine.cpp
+++ b/llvm/lib/Target/X86/X86TargetMachine.cpp
@@ -156,7 +156,6 @@ static std::string computeDataLayout(const Triple &TT) {
}
static Reloc::Model getEffectiveRelocModel(const Triple &TT,
- bool JIT,
Optional<Reloc::Model> RM) {
bool is64Bit = TT.getArch() == Triple::x86_64;
if (!RM.hasValue()) {
@@ -168,8 +167,6 @@ static Reloc::Model getEffectiveRelocModel(const Triple &TT,
return Reloc::PIC_;
return Reloc::DynamicNoPIC;
}
- if (JIT)
- return Reloc::Static;
if (TT.isOSWindows() && is64Bit)
return Reloc::PIC_;
return Reloc::Static;
@@ -213,7 +210,7 @@ X86TargetMachine::X86TargetMachine(const Target &T, const Triple &TT,
CodeGenOpt::Level OL, bool JIT)
: LLVMTargetMachine(
T, computeDataLayout(TT), TT, CPU, FS, Options,
- getEffectiveRelocModel(TT, JIT, RM),
+ getEffectiveRelocModel(TT, RM),
getEffectiveCodeModel(CM, JIT, TT.getArch() == Triple::x86_64), OL),
TLOF(createTLOF(getTargetTriple())) {
// Windows stack unwinder gets confused when execution flow "falls through"
OpenPOWER on IntegriCloud