========================= Bitwise Utility Functions ========================= .. include:: check.rst --------------- Source Location --------------- - The main source for bitwise utility functions is located at: ``libc/src/stdbit``. - The source for internal helpers used to implement these is located at: ``libc/src/__support/CPP/bit.h``. - The tests are located at: ``libc/test/src/stdbit/``, ``libc/test/include/stdbit_test.cpp``, and ``src/__support/CPP/bit_test.cpp``. --------------------- Implementation Status --------------------- Functions ========= .. Do not order these, they are as they appear in the standard. ============================ ========= Function Name Available ============================ ========= stdc_leading_zeros_uc |check| stdc_leading_zeros_us |check| stdc_leading_zeros_ui |check| stdc_leading_zeros_ul |check| stdc_leading_zeros_ull |check| stdc_leading_ones_uc |check| stdc_leading_ones_us |check| stdc_leading_ones_ui |check| stdc_leading_ones_ul |check| stdc_leading_ones_ull |check| stdc_trailing_zeros_uc |check| stdc_trailing_zeros_us |check| stdc_trailing_zeros_ui |check| stdc_trailing_zeros_ul |check| stdc_trailing_zeros_ull |check| stdc_trailing_ones_uc |check| stdc_trailing_ones_us |check| stdc_trailing_ones_ui |check| stdc_trailing_ones_ul |check| stdc_trailing_ones_ull |check| stdc_first_leading_zero_uc |check| stdc_first_leading_zero_us |check| stdc_first_leading_zero_ui |check| stdc_first_leading_zero_ul |check| stdc_first_leading_zero_ull |check| stdc_first_leading_one_uc |check| stdc_first_leading_one_us |check| stdc_first_leading_one_ui |check| stdc_first_leading_one_ul |check| stdc_first_leading_one_ull |check| stdc_first_trailing_zero_uc |check| stdc_first_trailing_zero_us |check| stdc_first_trailing_zero_ui |check| stdc_first_trailing_zero_ul |check| stdc_first_trailing_zero_ull |check| stdc_first_trailing_one_uc |check| stdc_first_trailing_one_us |check| stdc_first_trailing_one_ui |check| stdc_first_trailing_one_ul |check| stdc_first_trailing_one_ull |check| stdc_count_zeros_uc |check| stdc_count_zeros_us |check| stdc_count_zeros_ui |check| stdc_count_zeros_ul |check| stdc_count_zeros_ull |check| stdc_count_ones_uc |check| stdc_count_ones_us |check| stdc_count_ones_ui |check| stdc_count_ones_ul |check| stdc_count_ones_ull |check| stdc_has_single_bit_uc |check| stdc_has_single_bit_us |check| stdc_has_single_bit_ui |check| stdc_has_single_bit_ul |check| stdc_has_single_bit_ull |check| stdc_bit_width_uc |check| stdc_bit_width_us |check| stdc_bit_width_ui |check| stdc_bit_width_ul |check| stdc_bit_width_ull |check| stdc_bit_floor_uc |check| stdc_bit_floor_us |check| stdc_bit_floor_ui |check| stdc_bit_floor_ul |check| stdc_bit_floor_ull |check| stdc_bit_ceil_uc |check| stdc_bit_ceil_us |check| stdc_bit_ceil_ui |check| stdc_bit_ceil_ul |check| stdc_bit_ceil_ull |check| ============================ ========= Macros ====== ========================= ========= Macro Name Available ========================= ========= __STDC_VERSION_STDBIT_H__ |check| __STDC_ENDIAN_LITTLE__ |check| __STDC_ENDIAN_BIG__ |check| __STDC_ENDIAN_NATIVE__ |check| stdc_leading_zeros |check| stdc_leading_ones |check| stdc_trailing_zeros |check| stdc_trailing_ones |check| stdc_first_leading_zero |check| stdc_first_leading_one |check| stdc_first_trailing_zero |check| stdc_first_trailing_one |check| stdc_count_zeros |check| stdc_count_ones |check| stdc_has_single_bit |check| stdc_bit_width |check| stdc_bit_floor |check| stdc_bit_ceil |check| ========================= ========= Standards ========= stdbit.h was specified as part of C23 in section 7.18 "Bit and byte utilities."