From: Daniel Dunbar Date: Fri, 28 Aug 2009 05:48:54 +0000 (+0000) Subject: llvm-mc: Factor getSectionData out of SwitchSection. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=0f5fa6955199cc7e0964524d73c8a9820d8f78c1;p=oota-llvm.git llvm-mc: Factor getSectionData out of SwitchSection. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80344 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/MC/MCMachOStreamer.cpp b/lib/MC/MCMachOStreamer.cpp index e89f7d8dbd3..9f813fdc49e 100644 --- a/lib/MC/MCMachOStreamer.cpp +++ b/lib/MC/MCMachOStreamer.cpp @@ -63,6 +63,15 @@ private: return 0; } + MCSectionData &getSectionData(const MCSection &Section) { + MCSectionData *&Entry = SectionMap[&Section]; + + if (!Entry) + Entry = new MCSectionData(Section, &Assembler); + + return *Entry; + } + MCSymbolData &getSymbolData(MCSymbol &Symbol) { MCSymbolData *&Entry = SymbolMap[&Symbol]; @@ -135,14 +144,9 @@ void MCMachOStreamer::SwitchSection(const MCSection *Section) { // If already in this section, then this is a noop. if (Section == CurSection) return; - - CurSection = Section; - MCSectionData *&Entry = SectionMap[Section]; - if (!Entry) - Entry = new MCSectionData(*Section, &Assembler); - - CurSectionData = Entry; + CurSection = Section; + CurSectionData = &getSectionData(*Section); } void MCMachOStreamer::EmitLabel(MCSymbol *Symbol) {