From: Chris Lattner Date: Wed, 13 Jan 2010 19:05:36 +0000 (+0000) Subject: don't call getNameWithPrefix repeatedly and unnecesarily. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=59b34fe55fc2aaec2ebc9fd8e62a96e3686fa5c3;p=oota-llvm.git don't call getNameWithPrefix repeatedly and unnecesarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93333 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp b/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp index 93019d067cb..da295726761 100644 --- a/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp +++ b/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp @@ -69,6 +69,8 @@ namespace { void Init(const GlobalValue *GV, Mangler *Mang) { // Already initialized. if (!StubName.empty()) return; + + // Get the names. StubName = Mang->getMangledName(GV, "$stub", true); LazyPtrName = Mang->getMangledName(GV, "$lazy_ptr", true); AnonSymbolName = Mang->getMangledName(GV, "$stub$tmp", true); @@ -81,13 +83,13 @@ namespace { SmallString<128> TmpStr; Mang->getNameWithPrefix(TmpStr, GVName + "$stub", Mangler::Private); StubSym = Ctx.GetOrCreateSymbol(TmpStr.str()); - TmpStr.clear(); - - Mang->getNameWithPrefix(TmpStr, GVName + "$lazy_ptr", Mangler::Private); + TmpStr.erase(TmpStr.end()-5, TmpStr.end()); // Remove $stub + + TmpStr += "$lazy_ptr"; LazyPtrSym = Ctx.GetOrCreateSymbol(TmpStr.str()); - TmpStr.clear(); + TmpStr.erase(TmpStr.end()-9, TmpStr.end()); // Remove $lazy_ptr - Mang->getNameWithPrefix(TmpStr, GVName + "$stub$tmp", Mangler::Private); + TmpStr += "$stub$tmp"; AnonSymbolSym = Ctx.GetOrCreateSymbol(TmpStr.str()); }