PostgreSQL Source Code git master
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
dynahash.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

int my_log2 (long num)
 

Function Documentation

◆ my_log2()

int my_log2 ( long  num)

Definition at line 1794 of file dynahash.c.

1795{
1796 /*
1797 * guard against too-large input, which would be invalid for
1798 * pg_ceil_log2_*()
1799 */
1800 if (num > LONG_MAX / 2)
1801 num = LONG_MAX / 2;
1802
1803#if SIZEOF_LONG < 8
1804 return pg_ceil_log2_32(num);
1805#else
1806 return pg_ceil_log2_64(num);
1807#endif
1808}
static uint64 pg_ceil_log2_64(uint64 num)
Definition: pg_bitutils.h:271
static uint32 pg_ceil_log2_32(uint32 num)
Definition: pg_bitutils.h:258

References pg_ceil_log2_32(), and pg_ceil_log2_64().

Referenced by ExecHashTableCreate(), ExecParallelHashTableSetCurrentBatch(), hash_choose_num_partitions(), hash_create(), MultiExecParallelHash(), next_pow2_int(), next_pow2_long(), and subxact_info_read().