From: Duncan P. N. Exon Smith Date: Fri, 15 May 2015 22:33:34 +0000 (+0000) Subject: MC: Reduce MCAssembler::Symbols API exposure, NFC X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=eaf14f30c8a50e341cf0c4b038dc3b2edd162b27;p=oota-llvm.git MC: Reduce MCAssembler::Symbols API exposure, NFC Stop exposing the storage for `MCAssembler::Symbols`, and have `MCAssembler` add symbols directly to its list instead of using a hook in `MCSymbolData`. This opens up room for a follow-up commit to switch from a linked list to a vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237486 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/MC/MCAssembler.h b/include/llvm/MC/MCAssembler.h index 1fc45eedd84..eb7936834f3 100644 --- a/include/llvm/MC/MCAssembler.h +++ b/include/llvm/MC/MCAssembler.h @@ -693,8 +693,7 @@ class MCSymbolData : public ilist_node { public: // Only for use as sentinel. MCSymbolData(); - MCSymbolData(const MCSymbol &Symbol, MCFragment *Fragment, uint64_t Offset, - MCAssembler *A = nullptr); + MCSymbolData(const MCSymbol &Symbol, MCFragment *Fragment, uint64_t Offset); /// \name Accessors /// @{ @@ -1058,10 +1057,6 @@ public: /// @} /// \name Symbol List Access /// @{ - - const SymbolDataListType &getSymbolList() const { return Symbols; } - SymbolDataListType &getSymbolList() { return Symbols; } - symbol_iterator symbol_begin() { return Symbols.begin(); } const_symbol_iterator symbol_begin() const { return Symbols.begin(); } @@ -1185,8 +1180,10 @@ public: if (Created) *Created = !Entry; - if (!Entry) - Entry = new MCSymbolData(Symbol, nullptr, 0, this); + if (!Entry) { + Entry = new MCSymbolData(Symbol, nullptr, 0); + Symbols.push_back(Entry); + } return *Entry; } diff --git a/lib/MC/MCAssembler.cpp b/lib/MC/MCAssembler.cpp index ac41c99ca7f..b4b9a478241 100644 --- a/lib/MC/MCAssembler.cpp +++ b/lib/MC/MCAssembler.cpp @@ -361,12 +361,9 @@ void MCSectionData::setBundleLockState(BundleLockStateType NewState) { MCSymbolData::MCSymbolData() : Symbol(nullptr) {} MCSymbolData::MCSymbolData(const MCSymbol &Symbol, MCFragment *Fragment, - uint64_t Offset, MCAssembler *A) + uint64_t Offset) : Symbol(&Symbol), Fragment(Fragment), Offset(Offset), SymbolSize(nullptr), - CommonAlign(-1U), Flags(0), Index(0) { - if (A) - A->getSymbolList().push_back(this); -} + CommonAlign(-1U), Flags(0), Index(0) {} /* *** */