aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2011-02-11 05:23:09 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2011-02-11 05:23:09 +0000
commitef1860a117b4a35918eb9793a7b94715e12a3a42 (patch)
treefadb1be37a0b8dce90cace13211ec36f1e4d98b1
parentcd3e639fe7912a0fd5dc3677455b6a650f5621ea (diff)
downloadexternal_llvm-ef1860a117b4a35918eb9793a7b94715e12a3a42.zip
external_llvm-ef1860a117b4a35918eb9793a7b94715e12a3a42.tar.gz
external_llvm-ef1860a117b4a35918eb9793a7b94715e12a3a42.tar.bz2
Remove std::string version of getNameWithPrefix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125363 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Target/Mangler.h7
-rw-r--r--lib/Target/Mangler.cpp10
-rw-r--r--tools/lto/LTOCodeGenerator.cpp7
-rw-r--r--tools/lto/LTOModule.cpp7
4 files changed, 10 insertions, 21 deletions
diff --git a/include/llvm/Target/Mangler.h b/include/llvm/Target/Mangler.h
index a9f3576..c1c118b 100644
--- a/include/llvm/Target/Mangler.h
+++ b/include/llvm/Target/Mangler.h
@@ -15,7 +15,6 @@
#define LLVM_SUPPORT_MANGLER_H
#include "llvm/ADT/DenseMap.h"
-#include <string>
namespace llvm {
class StringRef;
@@ -69,12 +68,6 @@ public:
/// empty.
void getNameWithPrefix(SmallVectorImpl<char> &OutName, const Twine &GVName,
ManglerPrefixTy PrefixTy = Mangler::Default);
-
- /// getNameWithPrefix - Return the name of the appropriate prefix
- /// and the specified global variable's name. If the global variable doesn't
- /// have a name, this fills in a unique name for the global.
- std::string getNameWithPrefix(const GlobalValue *GV,
- bool isImplicitlyPrivate = false);
};
} // End llvm namespace
diff --git a/lib/Target/Mangler.cpp b/lib/Target/Mangler.cpp
index 49efe75..46c687b 100644
--- a/lib/Target/Mangler.cpp
+++ b/lib/Target/Mangler.cpp
@@ -224,16 +224,6 @@ void Mangler::getNameWithPrefix(SmallVectorImpl<char> &OutName,
}
}
-/// getNameWithPrefix - Fill OutName with the name of the appropriate prefix
-/// and the specified global variable's name. If the global variable doesn't
-/// have a name, this fills in a unique name for the global.
-std::string Mangler::getNameWithPrefix(const GlobalValue *GV,
- bool isImplicitlyPrivate) {
- SmallString<64> Buf;
- getNameWithPrefix(Buf, GV, isImplicitlyPrivate);
- return std::string(Buf.begin(), Buf.end());
-}
-
/// getSymbol - Return the MCSymbol for the specified global value. This
/// symbol is the main label that is the address of the global.
MCSymbol *Mangler::getSymbol(const GlobalValue *GV) {
diff --git a/tools/lto/LTOCodeGenerator.cpp b/tools/lto/LTOCodeGenerator.cpp
index 439bac1..d102f6b 100644
--- a/tools/lto/LTOCodeGenerator.cpp
+++ b/tools/lto/LTOCodeGenerator.cpp
@@ -350,16 +350,19 @@ void LTOCodeGenerator::applyScopeRestrictions() {
MCContext Context(*_target->getMCAsmInfo(), NULL);
Mangler mangler(Context, *_target->getTargetData());
std::vector<const char*> mustPreserveList;
+ SmallString<64> Buffer;
for (Module::iterator f = mergedModule->begin(),
e = mergedModule->end(); f != e; ++f) {
+ mangler.getNameWithPrefix(Buffer, f, false);
if (!f->isDeclaration() &&
- _mustPreserveSymbols.count(mangler.getNameWithPrefix(f)))
+ _mustPreserveSymbols.count(Buffer))
mustPreserveList.push_back(::strdup(f->getNameStr().c_str()));
}
for (Module::global_iterator v = mergedModule->global_begin(),
e = mergedModule->global_end(); v != e; ++v) {
+ mangler.getNameWithPrefix(Buffer, v, false);
if (!v->isDeclaration() &&
- _mustPreserveSymbols.count(mangler.getNameWithPrefix(v)))
+ _mustPreserveSymbols.count(Buffer))
mustPreserveList.push_back(::strdup(v->getNameStr().c_str()));
}
passes.add(createInternalizePass(mustPreserveList));
diff --git a/tools/lto/LTOModule.cpp b/tools/lto/LTOModule.cpp
index ca937bf..8562f74 100644
--- a/tools/lto/LTOModule.cpp
+++ b/tools/lto/LTOModule.cpp
@@ -320,7 +320,9 @@ void LTOModule::addDefinedSymbol(GlobalValue *def, Mangler &mangler,
return;
// string is owned by _defines
- const char *symbolName = ::strdup(mangler.getNameWithPrefix(def).c_str());
+ SmallString<64> Buffer;
+ mangler.getNameWithPrefix(Buffer, def, false);
+ const char *symbolName = ::strdup(Buffer.c_str());
// set alignment part log2() can have rounding errors
uint32_t align = def->getAlignment();
@@ -395,7 +397,8 @@ void LTOModule::addPotentialUndefinedSymbol(GlobalValue *decl,
if (isa<GlobalAlias>(decl))
return;
- std::string name = mangler.getNameWithPrefix(decl);
+ SmallString<64> name;
+ mangler.getNameWithPrefix(name, decl, false);
// we already have the symbol
if (_undefines.find(name) != _undefines.end())