summaryrefslogtreecommitdiff
path: root/lib/CodeGen/MachineFunction.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-11-14 22:48:15 +0000
committerChris Lattner <sabre@nondot.org>2010-11-14 22:48:15 +0000
commit142b531e024c7b814df74951b378b9e3e11d0d42 (patch)
tree9b5fe19e9ea9e2cb92b1711699eaf7ce84f2c1b8 /lib/CodeGen/MachineFunction.cpp
parent4fd0ea01660d7e447f072a1032abf0d7537821bf (diff)
downloadllvm-142b531e024c7b814df74951b378b9e3e11d0d42.tar.gz
llvm-142b531e024c7b814df74951b378b9e3e11d0d42.tar.bz2
llvm-142b531e024c7b814df74951b378b9e3e11d0d42.tar.xz
move the pic base symbol stuff up to MachineFunction
since it is trivial and will be shared between ppc and x86. This substantially simplifies the X86 backend also. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119089 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineFunction.cpp')
-rw-r--r--lib/CodeGen/MachineFunction.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/CodeGen/MachineFunction.cpp b/lib/CodeGen/MachineFunction.cpp
index e2c2bd5ed9..e27c860959 100644
--- a/lib/CodeGen/MachineFunction.cpp
+++ b/lib/CodeGen/MachineFunction.cpp
@@ -426,6 +426,13 @@ MCSymbol *MachineFunction::getJTISymbol(unsigned JTI, MCContext &Ctx,
return Ctx.GetOrCreateSymbol(Name.str());
}
+/// getPICBaseSymbol - Return a function-local symbol to represent the PIC
+/// base.
+MCSymbol *MachineFunction::getPICBaseSymbol() const {
+ const MCAsmInfo &MAI = *Target.getMCAsmInfo();
+ return Ctx.GetOrCreateSymbol(Twine(MAI.getPrivateGlobalPrefix())+
+ Twine(getFunctionNumber())+"$pb");
+}
//===----------------------------------------------------------------------===//
// MachineFrameInfo implementation