--- a/src/java.base/share/classes/java/util/HashMap.java Mon May 21 12:27:21 2018 -0700
+++ b/src/java.base/share/classes/java/util/HashMap.java Mon May 21 12:49:03 2018 -0700
@@ -376,12 +376,7 @@
* Returns a power of two size for the given target capacity.
*/
static final int tableSizeFor(int cap) {
- int n = cap - 1;
- n |= n >>> 1;
- n |= n >>> 2;
- n |= n >>> 4;
- n |= n >>> 8;
- n |= n >>> 16;
+ int n = -1 >>> Integer.numberOfLeadingZeros(cap - 1);
return (n < 0) ? 1 : (n >= MAXIMUM_CAPACITY) ? MAXIMUM_CAPACITY : n + 1;
}