[PATCH] D64640: PDB HashTable: Move TraitsT from class parameter to the methods that need it

Nico Weber via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 12 08:21:29 PDT 2019


thakis created this revision.
thakis added a reviewer: rnk.
Herald added a subscriber: hiraditya.
Herald added a project: LLVM.

The traits object is only used by a few methods. Deserializing a hash
table and walking it is possible without the traits object, so it
shouldn't be required to build a dummy object for that use case.

The TraitsT object used to be a function template parameter before
r327647, this restores it to that state.

This makes it clear that the traits object isn't needed at all in 1 of
the current 3 uses of HashTable (and I am going to add another use that
doesn't need it), and that the default PdbHashTraits isn't used outside
of tests.

While here, also re-enable 3 checks in the test that were commented out
(which requires making HashTableInternals templated and giving FooBar
an operator==).

No intended behavior change.


https://reviews.llvm.org/D64640

Files:
  llvm/include/llvm/DebugInfo/PDB/Native/HashTable.h
  llvm/include/llvm/DebugInfo/PDB/Native/NamedStreamMap.h
  llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
  llvm/lib/DebugInfo/PDB/Native/NamedStreamMap.cpp
  llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
  llvm/unittests/DebugInfo/PDB/HashTableTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D64640.209492.patch
Type: text/x-patch
Size: 16206 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190712/632936de/attachment.bin>


More information about the llvm-commits mailing list