[llvm] r237486 - MC: Reduce MCAssembler::Symbols API exposure, NFC

Duncan P. N. Exon Smith dexonsmith at apple.com
Fri May 15 15:33:34 PDT 2015


Author: dexonsmith
Date: Fri May 15 17:33:34 2015
New Revision: 237486

URL: http://llvm.org/viewvc/llvm-project?rev=237486&view=rev
Log:
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.

Modified:
    llvm/trunk/include/llvm/MC/MCAssembler.h
    llvm/trunk/lib/MC/MCAssembler.cpp

Modified: llvm/trunk/include/llvm/MC/MCAssembler.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCAssembler.h?rev=237486&r1=237485&r2=237486&view=diff
==============================================================================
--- llvm/trunk/include/llvm/MC/MCAssembler.h (original)
+++ llvm/trunk/include/llvm/MC/MCAssembler.h Fri May 15 17:33:34 2015
@@ -693,8 +693,7 @@ class MCSymbolData : public ilist_node<M
 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;
   }

Modified: llvm/trunk/lib/MC/MCAssembler.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCAssembler.cpp?rev=237486&r1=237485&r2=237486&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCAssembler.cpp (original)
+++ llvm/trunk/lib/MC/MCAssembler.cpp Fri May 15 17:33:34 2015
@@ -361,12 +361,9 @@ void MCSectionData::setBundleLockState(B
 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) {}
 
 /* *** */
 





More information about the llvm-commits mailing list