[llvm-commits] [llvm] r93627 - in /llvm/trunk/lib: CodeGen/ELFWriter.cpp Target/TargetLoweringObjectFile.cpp
Chris Lattner
sabre at nondot.org
Fri Jan 15 18:16:09 PST 2010
Author: lattner
Date: Fri Jan 15 20:16:09 2010
New Revision: 93627
URL: http://llvm.org/viewvc/llvm-project?rev=93627&view=rev
Log:
remove a couple of actively incorrect uses of getMangledName.
Modified:
llvm/trunk/lib/CodeGen/ELFWriter.cpp
llvm/trunk/lib/Target/TargetLoweringObjectFile.cpp
Modified: llvm/trunk/lib/CodeGen/ELFWriter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/ELFWriter.cpp?rev=93627&r1=93626&r2=93627&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/ELFWriter.cpp (original)
+++ llvm/trunk/lib/CodeGen/ELFWriter.cpp Fri Jan 15 20:16:09 2010
@@ -54,7 +54,7 @@
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/Mangler.h"
#include "llvm/Support/raw_ostream.h"
-
+#include "llvm/ADT/SmallString.h"
using namespace llvm;
char ELFWriter::ID = 0;
@@ -906,9 +906,11 @@
ELFSym &Sym = *(*I);
std::string Name;
- if (Sym.isGlobalValue())
- Name.append(Mang->getMangledName(Sym.getGlobalValue()));
- else if (Sym.isExternalSym())
+ if (Sym.isGlobalValue()) {
+ SmallString<40> NameStr;
+ Mang->getNameWithPrefix(NameStr, Sym.getGlobalValue(), false);
+ Name.append(NameStr.begin(), NameStr.end());
+ } else if (Sym.isExternalSym())
Name.append(Sym.getExternalSymbol());
else if (Sym.isFileType())
Name.append(ModuleName);
Modified: llvm/trunk/lib/Target/TargetLoweringObjectFile.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/TargetLoweringObjectFile.cpp?rev=93627&r1=93626&r2=93627&view=diff
==============================================================================
--- llvm/trunk/lib/Target/TargetLoweringObjectFile.cpp (original)
+++ llvm/trunk/lib/Target/TargetLoweringObjectFile.cpp Fri Jan 15 20:16:09 2010
@@ -955,7 +955,8 @@
// FIXME: ObjC metadata is currently emitted as internal symbols that have
// \1L and \0l prefixes on them. Fix them to be Private/LinkerPrivate and
// this horrible hack can go away.
- const std::string &Name = Mang->getMangledName(GV);
+ SmallString<64> Name;
+ Mang->getNameWithPrefix(NameTmp, GV, false);
if (Name[0] == 'L' || Name[0] == 'l')
return false;
}
More information about the llvm-commits
mailing list