Revert r201622 and r201608.
This causes the LLVMgold plugin to segfault. More information on the
replies to r201608.
llvm-svn: 201669
diff --git a/llvm/lib/LTO/LTOCodeGenerator.cpp b/llvm/lib/LTO/LTOCodeGenerator.cpp
index 01c8d40..0739470 100644
--- a/llvm/lib/LTO/LTOCodeGenerator.cpp
+++ b/llvm/lib/LTO/LTOCodeGenerator.cpp
@@ -336,7 +336,7 @@
SmallPtrSet<GlobalValue*, 8> &AsmUsed,
Mangler &Mangler) {
SmallString<64> Buffer;
- TargetMach->getTargetLowering()->getNameWithPrefix(Buffer, &GV, Mangler);
+ Mangler.getNameWithPrefix(Buffer, &GV);
if (GV.isDeclaration())
return;
diff --git a/llvm/lib/LTO/LTOModule.cpp b/llvm/lib/LTO/LTOModule.cpp
index a70c6e2..909b92e 100644
--- a/llvm/lib/LTO/LTOModule.cpp
+++ b/llvm/lib/LTO/LTOModule.cpp
@@ -381,7 +381,7 @@
// string is owned by _defines
SmallString<64> Buffer;
- _target->getTargetLowering()->getNameWithPrefix(Buffer, def, _mangler);
+ _mangler.getNameWithPrefix(Buffer, def);
// set alignment part log2() can have rounding errors
uint32_t align = def->getAlignment();
@@ -517,7 +517,7 @@
return;
SmallString<64> name;
- _target->getTargetLowering()->getNameWithPrefix(name, decl, _mangler);
+ _mangler.getNameWithPrefix(name, decl);
StringMap<NameAndAttributes>::value_type &entry =
_undefines.GetOrCreateValue(name);