diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2015-04-23 23:34:05 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2015-04-23 23:34:05 +0000 |
commit | 0bad85de10d5415395cb627c5981e1a7b7346de7 (patch) | |
tree | 687f7bba9c6e584082215901c75610507afbed39 /llvm/lib/MC/MCContext.cpp | |
parent | 50474bf5d2356feab24d985cac3ea91f856df59b (diff) | |
download | llvm-0bad85de10d5415395cb627c5981e1a7b7346de7.zip llvm-0bad85de10d5415395cb627c5981e1a7b7346de7.tar.gz llvm-0bad85de10d5415395cb627c5981e1a7b7346de7.tar.bz2 |
MC: Allow targets to stop symbol name quoting
Currently symbol names are printed in quotes if it contains something
outside of the arbitrary set of characters that isAcceptableChar tests
for. On somem targets, it is never OK to print a symbol name in quotes
so allow targets to opt out of this behavior.
llvm-svn: 235670
Diffstat (limited to 'llvm/lib/MC/MCContext.cpp')
-rw-r--r-- | llvm/lib/MC/MCContext.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/MC/MCContext.cpp b/llvm/lib/MC/MCContext.cpp index 5f8e3c1..a43bdc7 100644 --- a/llvm/lib/MC/MCContext.cpp +++ b/llvm/lib/MC/MCContext.cpp @@ -125,7 +125,8 @@ MCSymbol *MCContext::getOrCreateSectionSymbol(const MCSectionELF &Section) { } auto NameIter = UsedNames.insert(std::make_pair(Name, true)).first; - Sym = new (*this) MCSymbol(NameIter->getKey(), /*isTemporary*/ false); + Sym = new (*this) MCSymbol(NameIter->getKey(), /*isTemporary*/ false, + MAI->noSymbolNameQuoting()); if (!OldSym) OldSym = Sym; @@ -163,7 +164,8 @@ MCSymbol *MCContext::CreateSymbol(StringRef Name, bool AlwaysAddSuffix) { // Ok, we found a name. Have the MCSymbol object itself refer to the copy // of the string that is embedded in the UsedNames entry. MCSymbol *Result = - new (*this) MCSymbol(NameEntry.first->getKey(), IsTemporary); + new (*this) MCSymbol(NameEntry.first->getKey(), IsTemporary, + MAI->noSymbolNameQuoting()); return Result; } assert(IsTemporary && "Cannot rename non-temporary symbols"); |