[PATCH] D33552: [ELF] - Make implementation of .gdb index to be more natural for futher paralleling.

Rui Ueyama via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri May 26 08:44:26 PDT 2017


ruiu added inline comments.


================
Comment at: ELF/GdbIndex.h:47
+// for filling gdb index section areas.
+struct GdbIndexDataChunk {
+  std::vector<AddressEntry> AddressArea;
----------------
Let's call it GdbIndexChunk.


================
Comment at: ELF/SyntheticSections.h:514
   GdbHashTab SymbolTable;
-
-  // The CU vector portion of the constant pool.
-  std::vector<std::vector<std::pair<uint32_t, uint8_t>>> CuVectors;
-
-  std::vector<AddressEntry> AddressArea;
+  std::vector<FileGdbIndexData> IndexData;
 
----------------
grimar wrote:
> ruiu wrote:
> > `IndexData` is not a good variable name.
> Renamed.
Thanks. I think this is a good name. :)


================
Comment at: ELF/SyntheticSections.h:512
 
-  // Pairs of [CU Offset, CU length].
-  std::vector<std::pair<uint64_t, uint64_t>> CompilationUnits;
-
-  llvm::StringTableBuilder StringPool;
-
+  // Symbol table is an hash table for types and names.
+  // It is a separate area of gdb index.
----------------
an -> a


================
Comment at: ELF/SyntheticSections.h:512-513
 
-  // Pairs of [CU Offset, CU length].
-  std::vector<std::pair<uint64_t, uint64_t>> CompilationUnits;
-
-  llvm::StringTableBuilder StringPool;
-
+  // Symbol table is an hash table for types and names.
+  // It is a separate area of gdb index.
   GdbHashTab SymbolTable;
----------------
ruiu wrote:
> an -> a
Do you mean that the hash table is a map from names to their types? I don't quite get what "it is a separate area ..." means.


https://reviews.llvm.org/D33552





More information about the llvm-commits mailing list