diff options
Diffstat (limited to 'llvm/lib/MC/MCContext.cpp')
| -rw-r--r-- | llvm/lib/MC/MCContext.cpp | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/llvm/lib/MC/MCContext.cpp b/llvm/lib/MC/MCContext.cpp index ef919d00923..341a1a4e3b4 100644 --- a/llvm/lib/MC/MCContext.cpp +++ b/llvm/lib/MC/MCContext.cpp @@ -394,15 +394,6 @@ MCSectionELF *MCContext::getELFSection(const Twine &Section, unsigned Type, auto IterBool = ELFUniquingMap.insert( std::make_pair(ELFSectionKey{Section.str(), Group, UniqueID}, nullptr)); auto &Entry = *IterBool.first; - MCSectionELF *&Sec = Entry.second; - if (!IterBool.second) { - // We want to let users add additional flags even for sections with - // defaults. For example, .debug_str has "MS" flags by default and user - // might want to add "E". - Sec->setFlags(Sec->getFlags() | Flags); - return Sec; - } - if (!IterBool.second) return Entry.second; @@ -416,9 +407,10 @@ MCSectionELF *MCContext::getELFSection(const Twine &Section, unsigned Type, else Kind = SectionKind::getReadOnly(); - Sec = createELFSectionImpl(CachedName, Type, Flags, Kind, EntrySize, GroupSym, - UniqueID, Associated); - return Sec; + MCSectionELF *Result = createELFSectionImpl( + CachedName, Type, Flags, Kind, EntrySize, GroupSym, UniqueID, Associated); + Entry.second = Result; + return Result; } MCSectionELF *MCContext::createELFGroupSection(const MCSymbolELF *Group) { |

