summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-10-19 22:49:00 +0000
committerChris Lattner <sabre@nondot.org>2009-10-19 22:49:00 +0000
commit86dfd73c383f1b5fece7305013f8a20ca1f36a92 (patch)
tree46cdf2beee27bd0d2138802549e9524aa7f84c69 /llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
parent186c6b08349fe859b616958fe359cd7b43337f81 (diff)
downloadbcm5719-llvm-86dfd73c383f1b5fece7305013f8a20ca1f36a92.tar.gz
bcm5719-llvm-86dfd73c383f1b5fece7305013f8a20ca1f36a92.zip
add a twine version of MCContext::GetOrCreateSymbol.
llvm-svn: 84561
Diffstat (limited to 'llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp')
-rw-r--r--llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp b/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
index 7e89b9f5e92..576cc9c529e 100644
--- a/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
+++ b/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
@@ -173,7 +173,7 @@ namespace {
else {
// FIXME: Remove this when Darwin transition to @GOT like syntax.
Name = Mang->getMangledName(GV, "$non_lazy_ptr", true);
- MCSymbol *Sym = OutContext.GetOrCreateSymbol(Name.c_str());
+ MCSymbol *Sym = OutContext.GetOrCreateSymbol(StringRef(Name));
MachineModuleInfoMachO &MMIMachO =
MMI->getObjFileInfo<MachineModuleInfoMachO>();
@@ -1336,10 +1336,11 @@ void ARMAsmPrinter::printInstructionThroughMCStreamer(const MachineInstr *MI) {
// Emit the label.
// FIXME: MOVE TO SHARED PLACE.
- SmallString<60> Name;
unsigned Id = (unsigned)MI->getOperand(2).getImm();
- raw_svector_ostream(Name) << MAI->getPrivateGlobalPrefix() << "PC" << Id;
- OutStreamer.EmitLabel(OutContext.GetOrCreateSymbol(Name.str()));
+ const char *Prefix = MAI->getPrivateGlobalPrefix();
+ MCSymbol *Label =
+ OutContext.GetOrCreateSymbol(Twine(Prefix)+"PC"+Twine(Id));
+ OutStreamer.EmitLabel(Label);
// Form and emit tha dd.
OpenPOWER on IntegriCloud