[llvm-commits] [llvm] r58433 - in /llvm/trunk/lib/Target/ARM: ARMTargetMachine.cpp ARMTargetMachine.h
Evan Cheng
evan.cheng at apple.com
Thu Oct 30 09:10:54 PDT 2008
Author: evancheng
Date: Thu Oct 30 11:10:54 2008
New Revision: 58433
URL: http://llvm.org/viewvc/llvm-project?rev=58433&view=rev
Log:
ARM JIT should observe -relocation-model command line option.
Modified:
llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp
llvm/trunk/lib/Target/ARM/ARMTargetMachine.h
Modified: llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp?rev=58433&r1=58432&r2=58433&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp Thu Oct 30 11:10:54 2008
@@ -85,7 +85,9 @@
InstrInfo(Subtarget),
FrameInfo(Subtarget),
JITInfo(*this),
- TLInfo(*this) {}
+ TLInfo(*this) {
+ DefRelocModel = getRelocationModel();
+}
unsigned ARMTargetMachine::getJITMatchQuality() {
#if defined(__arm__)
@@ -157,7 +159,8 @@
bool ARMTargetMachine::addCodeEmitter(PassManagerBase &PM, bool Fast,
bool DumpAsm, MachineCodeEmitter &MCE) {
// FIXME: Move this to TargetJITInfo!
- setRelocationModel(Reloc::Static);
+ if (DefRelocModel == Reloc::Default)
+ setRelocationModel(Reloc::Static);
// Machine code emitter pass for ARM.
PM.add(createARMCodeEmitterPass(*this, MCE));
Modified: llvm/trunk/lib/Target/ARM/ARMTargetMachine.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMTargetMachine.h?rev=58433&r1=58432&r2=58433&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMTargetMachine.h (original)
+++ llvm/trunk/lib/Target/ARM/ARMTargetMachine.h Thu Oct 30 11:10:54 2008
@@ -34,6 +34,7 @@
ARMFrameInfo FrameInfo;
ARMJITInfo JITInfo;
ARMTargetLowering TLInfo;
+ Reloc::Model DefRelocModel; // Reloc model before it's overridden.
protected:
// To avoid having target depend on the asmprinter stuff libraries, asmprinter
More information about the llvm-commits
mailing list