MC: Use MCSymbol in LocalCommon, NFC

Switch from MCSymbolData to MCSymbol in LocalCommon.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237816 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan P. N. Exon Smith
2015-05-20 18:25:40 +00:00
parent 12f6308247
commit 80b2cb6d4d
2 changed files with 4 additions and 5 deletions

View File

@@ -101,7 +101,7 @@ private:
bool SeenIdent; bool SeenIdent;
struct LocalCommon { struct LocalCommon {
MCSymbolData *SD; const MCSymbol *Symbol;
uint64_t Size; uint64_t Size;
unsigned ByteAlignment; unsigned ByteAlignment;
}; };

View File

@@ -319,7 +319,7 @@ void MCELFStreamer::EmitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
AssignSection(Symbol, Section); AssignSection(Symbol, Section);
struct LocalCommon L = {&SD, Size, ByteAlignment}; struct LocalCommon L = {Symbol, Size, ByteAlignment};
LocalCommons.push_back(L); LocalCommons.push_back(L);
} else { } else {
SD.setCommon(Size, ByteAlignment); SD.setCommon(Size, ByteAlignment);
@@ -630,17 +630,16 @@ void MCELFStreamer::Flush() {
for (std::vector<LocalCommon>::const_iterator i = LocalCommons.begin(), for (std::vector<LocalCommon>::const_iterator i = LocalCommons.begin(),
e = LocalCommons.end(); e = LocalCommons.end();
i != e; ++i) { i != e; ++i) {
MCSymbolData *SD = i->SD; const MCSymbol &Symbol = *i->Symbol;
uint64_t Size = i->Size; uint64_t Size = i->Size;
unsigned ByteAlignment = i->ByteAlignment; unsigned ByteAlignment = i->ByteAlignment;
const MCSymbol &Symbol = SD->getSymbol();
const MCSection &Section = Symbol.getSection(); const MCSection &Section = Symbol.getSection();
MCSectionData &SectData = getAssembler().getOrCreateSectionData(Section); MCSectionData &SectData = getAssembler().getOrCreateSectionData(Section);
new MCAlignFragment(ByteAlignment, 0, 1, ByteAlignment, &SectData); new MCAlignFragment(ByteAlignment, 0, 1, ByteAlignment, &SectData);
MCFragment *F = new MCFillFragment(0, 0, Size, &SectData); MCFragment *F = new MCFillFragment(0, 0, Size, &SectData);
SD->setFragment(F); Symbol.getData().setFragment(F);
// Update the maximum alignment of the section if necessary. // Update the maximum alignment of the section if necessary.
if (ByteAlignment > SectData.getAlignment()) if (ByteAlignment > SectData.getAlignment())