From 35d86e60b6db89ad34dd15e90fa410fc43a26be5 Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Tue, 9 Oct 2007 03:01:19 +0000 Subject: Position Independent Code (PIC) support [2] - Added a function to hold the stack location where GP must be stored during LowerCALL - AsmPrinter now emits directives based on relocation type - PIC_ set to default relocation type (same as GCC) llvm-svn: 42779 --- llvm/lib/Target/Mips/MipsTargetMachine.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'llvm/lib/Target/Mips/MipsTargetMachine.cpp') diff --git a/llvm/lib/Target/Mips/MipsTargetMachine.cpp b/llvm/lib/Target/Mips/MipsTargetMachine.cpp index 372e267d462..64516594f66 100644 --- a/llvm/lib/Target/Mips/MipsTargetMachine.cpp +++ b/llvm/lib/Target/Mips/MipsTargetMachine.cpp @@ -39,7 +39,11 @@ MipsTargetMachine:: MipsTargetMachine(const Module &M, const std::string &FS): Subtarget(*this, M, FS), DataLayout("E-p:32:32:32"), InstrInfo(*this), FrameInfo(TargetFrameInfo::StackGrowsUp, 8, 0), - TLInfo(*this) {} + TLInfo(*this) +{ + if (getRelocationModel() != Reloc::Static) + setRelocationModel(Reloc::PIC_); +} // return 0 and must specify -march to gen MIPS code. unsigned MipsTargetMachine:: -- cgit v1.2.3