switch from std::string to SmallString + raw_svector_ostream.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80807 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2009-09-02 17:37:38 +00:00
parent 522e9a0435
commit 3bd52827bd

View File

@ -22,22 +22,20 @@
#include "llvm/Support/FormattedStream.h"
#include "llvm/Support/Mangler.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringExtras.h" // fixme, kill utostr.
using namespace llvm;
MCSymbol *X86ATTAsmPrinter::GetPICBaseSymbol() {
// FIXME: the actual label generated doesn't matter here! Just mangle in
// something unique (the function number) with Private prefix.
std::string Name;
SmallString<60> Name;
if (Subtarget->isTargetDarwin()) {
Name = "L" + utostr(getFunctionNumber())+"$pb";
raw_svector_ostream(Name) << 'L' << getFunctionNumber() << "$pb";
} else {
assert(Subtarget->isTargetELF() && "Don't know how to print PIC label!");
Name = ".Lllvm$" + utostr(getFunctionNumber())+".$piclabel";
}
return OutContext.GetOrCreateSymbol(Name);
raw_svector_ostream(Name) << ".Lllvm$" << getFunctionNumber()<<".$piclabel";
}
return OutContext.GetOrCreateSymbol(StringRef(Name.data(), Name.size()));
}