1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

optimize get_power2 [Feature #15631]

Merged: https://github.com/ruby/ruby/pull/2292
This commit is contained in:
pavel 2019-07-19 16:23:00 +02:00 committed by Nobuyoshi Nakada
parent 989e8ad322
commit 8e13da1ee8
No known key found for this signature in database
GPG key ID: 4BC7D6DF58D8DF60

5
st.c
View file

@ -345,10 +345,7 @@ do_hash(st_data_t key, st_table *tab)
static int
get_power2(st_index_t size)
{
unsigned int n;
for (n = 0; size != 0; n++)
size >>= 1;
unsigned int n = ST_INDEX_BITS - nlz_intptr(size);
if (n <= MAX_POWER2)
return n < MINIMAL_POWER2 ? MINIMAL_POWER2 : n;
#ifndef NOT_RUBY