Move getSymbol to TargetLoweringObjectFile.

This allows constructing a Mangler with just a TargetMachine.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193630 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola
2013-10-29 17:28:26 +00:00
parent faf4ed2da8
commit 93cf0939f9
12 changed files with 35 additions and 39 deletions

View File

@ -97,10 +97,20 @@ static bool IsNullTerminatedString(const Constant *C) {
return false;
}
/// Return the MCSymbol for the specified global value. This
/// symbol is the main label that is the address of the global.
MCSymbol *TargetLoweringObjectFile::getSymbol(Mangler &M,
const GlobalValue *GV) const {
SmallString<60> NameStr;
M.getNameWithPrefix(NameStr, GV, false);
return Ctx->GetOrCreateSymbol(NameStr.str());
}
MCSymbol *TargetLoweringObjectFile::
getCFIPersonalitySymbol(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI) const {
return Mang->getSymbol(GV);
return getSymbol(*Mang, GV);
}
void TargetLoweringObjectFile::emitPersonalityValue(MCStreamer &Streamer,
@ -293,7 +303,7 @@ getTTypeGlobalReference(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI, unsigned Encoding,
MCStreamer &Streamer) const {
const MCSymbolRefExpr *Ref =
MCSymbolRefExpr::Create(Mang->getSymbol(GV), getContext());
MCSymbolRefExpr::Create(getSymbol(*Mang, GV), getContext());
return getTTypeReference(Ref, Encoding, Streamer);
}