#include <limits.h>Go to the source code of this file.
Defines | |
| #define | bit_scan_forward32(i) bit_scan_forward_debruijn32(i) |
| #define | bit_scan_forward64(i) bit_scan_forward_debruijn64(i) |
| #define | bit_scan_reverse32(i) bit_scan_reverse_br32(i) |
| #define | bit_scan_reverse64(i) bit_scan_reverse_br64(i) |
| #define | bit_scan_forward(l) bit_scan_forward32((l)) |
| #define | bit_scan_reverse(l) bit_scan_reverse32((l)) |
| #define | DEBRUIJN_CT32 0x04653ADFU |
| #define | DEBRUIJN_CT64 0x0218A392CD3D5DBFULL |
| #define | DEBRUIJN_HASH32(x) (((x)*DEBRUIJN_CT32)>>(sizeof(x)*8-5)) |
| #define | DEBRUIJN_HASH64(x) (((x)*DEBRUIJN_CT64)>>(sizeof(x)*8-6)) |
| #define | bit_scan_forward_debruijn32(x) ( _debruijn_hash32[DEBRUIJN_HASH32((x) & (-(x)))]) |
| #define | bit_scan_forward_debruijn64(x) ( _debruijn_hash64[DEBRUIJN_HASH64((x) & (-(x)))]) |
Functions | |
| int | bit_scan_reverse_debruijn32 (unsigned int v) |
| int | bit_scan_reverse_debruijn64 (unsigned long long v) |
| int | bit_scan_forward_br32 (unsigned int v) |
| int | bit_scan_reverse_br32 (unsigned int v) |
| int | bit_scan_forward_br64 (unsigned long long v) |
| int | bit_scan_reverse_br64 (unsigned long long v) |
Variables | |
| unsigned char | _debruijn_hash32 [32] |
| unsigned char | _debruijn_hash64 [64] |
|
|
Definition at line 139 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 122 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 123 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 170 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 173 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 140 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 124 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 125 of file bit_scan.h. Referenced by main(). |
|
|
Definition at line 161 of file bit_scan.h. |
|
|
Definition at line 162 of file bit_scan.h. |
|
|
Definition at line 164 of file bit_scan.h. Referenced by bit_scan_reverse_debruijn32(). |
|
|
Definition at line 167 of file bit_scan.h. Referenced by bit_scan_reverse_debruijn64(). |
|
|
Definition at line 247 of file bit_scan.h. |
|
|
Definition at line 301 of file bit_scan.h. |
|
|
Definition at line 275 of file bit_scan.h. |
|
|
Definition at line 333 of file bit_scan.h. |
|
|
Definition at line 177 of file bit_scan.h. References _debruijn_hash32, and DEBRUIJN_HASH32. |
|
|
Definition at line 189 of file bit_scan.h. References _debruijn_hash64, and DEBRUIJN_HASH64. |
|
|
Definition at line 29 of file bit_scan.c. Referenced by bit_scan_reverse_debruijn32(). |
|
|
Definition at line 32 of file bit_scan.c. Referenced by bit_scan_reverse_debruijn64(). |
1.3.9.1