From 469340493c48eb22b630bbd311db867c9d7953d6 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sat, 16 Jan 2010 18:12:14 +0000 Subject: [PATCH] switch liblto to use the new getNameWithPrefix() method instead of getMangledName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93643 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Support/Mangler.h | 3 ++- tools/bugpoint/Miscompilation.cpp | 4 ++-- tools/lto/LTOCodeGenerator.cpp | 2 +- tools/lto/LTOModule.cpp | 4 ++-- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/include/llvm/Support/Mangler.h b/include/llvm/Support/Mangler.h index 252a707699c..e0ad6ddede8 100644 --- a/include/llvm/Support/Mangler.h +++ b/include/llvm/Support/Mangler.h @@ -123,7 +123,8 @@ public: /// 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); + std::string getNameWithPrefix(const GlobalValue *GV, + bool isImplicitlyPrivate = false); private: /// makeNameProper - We don't want identifier names with ., space, or diff --git a/tools/bugpoint/Miscompilation.cpp b/tools/bugpoint/Miscompilation.cpp index a5914178f12..92bf1437d50 100644 --- a/tools/bugpoint/Miscompilation.cpp +++ b/tools/bugpoint/Miscompilation.cpp @@ -251,13 +251,13 @@ static void DisambiguateGlobalSymbols(Module *M) { I != E; ++I) { // Don't mangle asm names. if (!I->hasName() || I->getName()[0] != 1) - I->setName(Mang.getMangledName(I)); + I->setName(Mang.getNameWithPrefix(I)); } for (Module::iterator I = M->begin(), E = M->end(); I != E; ++I) { // Don't mangle asm names or intrinsics. if ((!I->hasName() || I->getName()[0] != 1) && I->getIntrinsicID() == 0) - I->setName(Mang.getMangledName(I)); + I->setName(Mang.getNameWithPrefix(I)); } } diff --git a/tools/lto/LTOCodeGenerator.cpp b/tools/lto/LTOCodeGenerator.cpp index af860438448..1ea419a918b 100644 --- a/tools/lto/LTOCodeGenerator.cpp +++ b/tools/lto/LTOCodeGenerator.cpp @@ -329,7 +329,7 @@ void LTOCodeGenerator::applyScopeRestrictions() for (Module::iterator f = mergedModule->begin(), e = mergedModule->end(); f != e; ++f) { if ( !f->isDeclaration() - && _mustPreserveSymbols.count(mangler.getMangledName(f)) ) + && _mustPreserveSymbols.count(mangler.getNameWithPrefix(f)) ) mustPreserveList.push_back(::strdup(f->getNameStr().c_str())); } for (Module::global_iterator v = mergedModule->global_begin(), diff --git a/tools/lto/LTOModule.cpp b/tools/lto/LTOModule.cpp index bce416207c4..a3a477fed9a 100644 --- a/tools/lto/LTOModule.cpp +++ b/tools/lto/LTOModule.cpp @@ -320,7 +320,7 @@ void LTOModule::addDefinedSymbol(GlobalValue* def, Mangler &mangler, return; // string is owned by _defines - const char* symbolName = ::strdup(mangler.getMangledName(def).c_str()); + const char* symbolName = ::strdup(mangler.getNameWithPrefix(def).c_str()); // set alignment part log2() can have rounding errors uint32_t align = def->getAlignment(); @@ -393,7 +393,7 @@ void LTOModule::addPotentialUndefinedSymbol(GlobalValue* decl, Mangler &mangler) if (isa(decl)) return; - std::string name = mangler.getMangledName(decl); + std::string name = mangler.getNameWithPrefix(decl); // we already have the symbol if (_undefines.find(name) != _undefines.end()) -- 2.34.1