[llvm-commits] [llvm] r166609 - /llvm/trunk/include/llvm/ADT/DenseMap.h
Pete Cooper
peter_cooper at apple.com
Wed Oct 24 11:50:44 PDT 2012
Author: pete
Date: Wed Oct 24 13:50:44 2012
New Revision: 166609
URL: http://llvm.org/viewvc/llvm-project?rev=166609&view=rev
Log:
Improve DenseMap checks for power of 2 growth. Thanks for the tip Jakob
Modified:
llvm/trunk/include/llvm/ADT/DenseMap.h
Modified: llvm/trunk/include/llvm/ADT/DenseMap.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ADT/DenseMap.h?rev=166609&r1=166608&r2=166609&view=diff
==============================================================================
--- llvm/trunk/include/llvm/ADT/DenseMap.h (original)
+++ llvm/trunk/include/llvm/ADT/DenseMap.h Wed Oct 24 13:50:44 2012
@@ -600,8 +600,7 @@
unsigned OldNumBuckets = NumBuckets;
BucketT *OldBuckets = Buckets;
- AtLeast = isPowerOf2_32(AtLeast) ? AtLeast : NextPowerOf2(AtLeast);
- allocateBuckets(std::max<unsigned>(64, AtLeast));
+ allocateBuckets(std::max<unsigned>(64, NextPowerOf2(AtLeast-1)));
assert(Buckets);
if (!OldBuckets) {
this->BaseT::initEmpty();
@@ -827,10 +826,8 @@
}
void grow(unsigned AtLeast) {
- if (AtLeast >= InlineBuckets) {
- AtLeast = isPowerOf2_32(AtLeast) ? AtLeast : NextPowerOf2(AtLeast);
- AtLeast = std::max<unsigned>(64, AtLeast);
- }
+ if (AtLeast >= InlineBuckets)
+ AtLeast = std::max<unsigned>(64, NextPowerOf2(AtLeast-1));
if (Small) {
if (AtLeast < InlineBuckets)
More information about the llvm-commits
mailing list