[libcxx-commits] [PATCH] D121492: [libc++] Fix performance inconsistency between unordered_map copy-assignment and copy-construction
    Louis Dionne via Phabricator via libcxx-commits 
    libcxx-commits at lists.llvm.org
       
    Fri Mar 11 13:49:20 PST 2022
    
    
  
ldionne created this revision.
Herald added a project: All.
ldionne requested review of this revision.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.
We were not rehashing the hash table before performing assignment, which
resulted in greatly sub-optimal performance when compared to the
otherwise equivalent copy constructor.
This patch also adds a test that will start failing should a performance
difference be reintroduced in the future.
rdar://89335436
Repository:
  rG LLVM Github Monorepo
https://reviews.llvm.org/D121492
Files:
  libcxx/include/__hash_table
  libcxx/include/unordered_map
  libcxx/include/unordered_set
  libcxx/test/libcxx/containers/unord/perf.assignment_vs_construction.pass.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D121492.414742.patch
Type: text/x-patch
Size: 8421 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20220311/26a1054b/attachment-0001.bin>
    
    
More information about the libcxx-commits
mailing list