summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86TargetObjectFile.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-02-08 22:09:08 +0000
committerChris Lattner <sabre@nondot.org>2010-02-08 22:09:08 +0000
commitb6b2164e2819457d99126afb79cf42e69aeb4ad3 (patch)
tree03121a39ca7f8e960d7cfff4dec3dfd2162761ff /llvm/lib/Target/X86/X86TargetObjectFile.cpp
parent54d88f175947dab7143129a0274c0a7b1b7035b2 (diff)
downloadbcm5719-llvm-b6b2164e2819457d99126afb79cf42e69aeb4ad3.tar.gz
bcm5719-llvm-b6b2164e2819457d99126afb79cf42e69aeb4ad3.zip
add an x86 implementation of MCTargetExpr for
representing @GOT and friends. Use it for personality references as a first use. llvm-svn: 95588
Diffstat (limited to 'llvm/lib/Target/X86/X86TargetObjectFile.cpp')
-rw-r--r--llvm/lib/Target/X86/X86TargetObjectFile.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86TargetObjectFile.cpp b/llvm/lib/Target/X86/X86TargetObjectFile.cpp
index a8faafd4b58..9b7d5d23881 100644
--- a/llvm/lib/Target/X86/X86TargetObjectFile.cpp
+++ b/llvm/lib/Target/X86/X86TargetObjectFile.cpp
@@ -8,9 +8,9 @@
//===----------------------------------------------------------------------===//
#include "X86TargetObjectFile.h"
+#include "X86MCTargetExpr.h"
#include "llvm/CodeGen/MachineModuleInfoImpls.h"
#include "llvm/MC/MCContext.h"
-#include "llvm/MC/MCExpr.h"
#include "llvm/Target/Mangler.h"
#include "llvm/ADT/SmallString.h"
using namespace llvm;
@@ -57,9 +57,9 @@ getSymbolForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,
SmallString<128> Name;
Mang->getNameWithPrefix(Name, GV, false);
- Name += "@GOTPCREL";
+ const MCSymbol *Sym = getContext().CreateSymbol(Name);
const MCExpr *Res =
- MCSymbolRefExpr::Create(Name.str(), getContext());
+ X86MCTargetExpr::Create(Sym, X86MCTargetExpr::GOTPCREL, getContext());
const MCExpr *Four = MCConstantExpr::Create(4, getContext());
return MCBinaryExpr::CreateAdd(Res, Four, getContext());
}
OpenPOWER on IntegriCloud