diff options
author | Erich Keane <erich.keane@intel.com> | 2020-06-15 08:10:41 -0700 |
---|---|---|
committer | Erich Keane <erich.keane@intel.com> | 2020-06-15 08:15:50 -0700 |
commit | 837ca4796065ccd0ac0d20860341ac06a9645009 (patch) | |
tree | 39a8b2080f376f74124104172195b5e583429340 /llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp | |
parent | 8c61f13a0f7cb4078b3dd4481c89b48fe4a50f77 (diff) | |
download | llvm-837ca4796065ccd0ac0d20860341ac06a9645009.zip llvm-837ca4796065ccd0ac0d20860341ac06a9645009.tar.gz llvm-837ca4796065ccd0ac0d20860341ac06a9645009.tar.bz2 |
[NFCI] Change the data structure of MaybeODRUseExprSet
In 1eddce41, I fixed a non-deterministic result problem by switching a
SmallPtrSet to a SmallSetVector to ensure we iterated it
deterministically. Unfortunately, this seems to show a surprisingly
significant compiletime impact.
This patch does 2 things in an attempt to fix this:
First, it makes the 'small size' optimization 4 instead of 2. As these
are pointers, this only increases the size of Sema by 4
sizeof(pointer)s (2 for the set, 2 for the vector).
Second, instead of using SmallSetVector, which is a SmallVector +
SmallDenseSet, it uses a SetVector of SmallVector + SmallPtrSet. The
hope is that the pointer-specific optimizations of the SmallPtrSet will
minimize the impact on compile-time.
Diffstat (limited to 'llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp')
0 files changed, 0 insertions, 0 deletions