MC: Reduce MCAssembler::Symbols API exposure, NFC
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 15 May 2015 22:33:34 +0000 (22:33 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 15 May 2015 22:33:34 +0000 (22:33 +0000)
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

include/llvm/MC/MCAssembler.h
lib/MC/MCAssembler.cpp

index 1fc45eedd84edcf24d63cb1f7c0864286e165641..eb7936834f34f143d97ea716764299983d7c97ca 100644 (file)
@@ -693,8 +693,7 @@ class MCSymbolData : public ilist_node<MCSymbolData> {
 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;
   }
index ac41c99ca7fa5e73baa24017868690595ec1aff0..b4b9a47824199e35744154a0dbdd473fad6a4c48 100644 (file)
@@ -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) {}
 
 /* *** */