[lld] r180692 - [lld][ELF] (no testable functionality change) resize the number of entries in the string table for static linking

Shankar Easwaran shankare at codeaurora.org
Sun Apr 28 21:10:42 PDT 2013


Author: shankare
Date: Sun Apr 28 23:10:42 2013
New Revision: 180692

URL: http://llvm.org/viewvc/llvm-project?rev=180692&view=rev
Log:
[lld][ELF] (no testable functionality change) resize the number of entries in the string table for static linking

Modified:
    lld/trunk/include/lld/Core/File.h
    lld/trunk/lib/ReaderWriter/Native/ReaderNative.cpp
    lld/trunk/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp

Modified: lld/trunk/include/lld/Core/File.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/include/lld/Core/File.h?rev=180692&r1=180691&r2=180692&view=diff
==============================================================================
--- lld/trunk/include/lld/Core/File.h (original)
+++ lld/trunk/include/lld/Core/File.h Sun Apr 28 23:10:42 2013
@@ -104,6 +104,7 @@ public:
     virtual atom_iterator<T> end() const = 0;
     virtual const T *deref(const void *it) const = 0;
     virtual void next(const void *&it) const = 0;
+    virtual uint64_t size() const = 0;
   };
 
   /// \brief The class is the iterator type used to iterate through a File's
@@ -185,6 +186,8 @@ protected:
       it = reinterpret_cast<const void*>(p);
     }
 
+    virtual uint64_t size() const { return _atoms.size(); }
+
     std::vector<const T *> _atoms;
   };
 
@@ -207,6 +210,7 @@ protected:
     virtual void push_back(const T *element) {
       llvm_unreachable("empty collection should never be grown");
     }
+    virtual uint64_t size() const { return 0; }
   };
 
   static atom_collection_empty<DefinedAtom>       _noDefinedAtoms;

Modified: lld/trunk/lib/ReaderWriter/Native/ReaderNative.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/Native/ReaderNative.cpp?rev=180692&r1=180691&r2=180692&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/Native/ReaderNative.cpp (original)
+++ lld/trunk/lib/ReaderWriter/Native/ReaderNative.cpp Sun Apr 28 23:10:42 2013
@@ -758,8 +758,9 @@ private:
       p += _elementSize;
       it = reinterpret_cast<const void*>(p);
     }
-    const uint8_t*     _arrayStart;
-    const uint8_t*     _arrayEnd;
+    virtual uint64_t size() const { return _elementCount; }
+    const uint8_t *_arrayStart;
+    const uint8_t *_arrayEnd;
     uint32_t           _elementSize;
     uint32_t           _elementCount;
   };

Modified: lld/trunk/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp?rev=180692&r1=180691&r2=180692&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp (original)
+++ lld/trunk/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp Sun Apr 28 23:10:42 2013
@@ -241,7 +241,8 @@ public:
   virtual void push_back(const T *element) {
     _atoms.push_back(element);
   }
-  std::vector<const T*>   _atoms;
+  virtual uint64_t size() const { return _atoms.size(); }
+  std::vector<const T *> _atoms;
 };
 
 /// Mapping of kind: field in yaml files.
@@ -301,11 +302,11 @@ struct ScalarTraits<RefKind> {
     default:
       if (auto relocStr = info->_targetInfo.stringFromRelocKind(value))
         out << *relocStr;
-      else 
+      else
         out << "<unknown>";
       break;
     }
-  } 
+  }
 
   static StringRef input(StringRef scalar, void *ctxt, RefKind &value) {
     assert(ctxt != nullptr);





More information about the llvm-commits mailing list