1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
/*-
* Copyright (c) 2025-2026 Robert Clausecker <fuz@FreeBSD.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#ifndef __STDC_VERSION_STDBIT_H__
#define __STDC_VERSION_STDBIT_H__ 202311L
#include <sys/cdefs.h>
#include <sys/_types.h>
#include <sys/_stdint.h>
#ifndef _SIZE_T_DECLARED
typedef __size_t size_t;
#define _SIZE_T_DECLARED
#endif
#ifndef _INT_LEAST_T_DECLARED
typedef __int_least8_t int_least8_t;
typedef __int_least16_t int_least16_t;
typedef __int_least32_t int_least32_t;
typedef __int_least64_t int_least64_t;
typedef __uint_least8_t uint_least8_t;
typedef __uint_least16_t uint_least16_t;
typedef __uint_least32_t uint_least32_t;
typedef __uint_least64_t uint_least64_t;
#define _INT_LEAST_T_DECLARED
#endif
/* byte order */
#define __STDC_ENDIAN_LITTLE__ __ORDER_LITTLE_ENDIAN__
#define __STDC_ENDIAN_BIG__ __ORDER_BIG_ENDIAN__
#define __STDC_ENDIAN_NATIVE__ __BYTE_ORDER__
#define __generic_bitfunc(func, x) (_Generic(x, \
unsigned char: func ## _uc, \
unsigned short: func ## _us, \
unsigned int: func ## _ui, \
unsigned long: func ## _ul, \
unsigned long long: func ## _ull)(x))
__BEGIN_DECLS
unsigned int stdc_leading_zeros_uc(unsigned char) __pure2;
unsigned int stdc_leading_zeros_us(unsigned short) __pure2;
unsigned int stdc_leading_zeros_ui(unsigned int) __pure2;
unsigned int stdc_leading_zeros_ul(unsigned long) __pure2;
unsigned int stdc_leading_zeros_ull(unsigned long long) __pure2;
#define stdc_leading_zeros(x) __generic_bitfunc(stdc_leading_zeros, x)
unsigned int stdc_leading_ones_uc(unsigned char) __pure2;
unsigned int stdc_leading_ones_us(unsigned short) __pure2;
unsigned int stdc_leading_ones_ui(unsigned int) __pure2;
unsigned int stdc_leading_ones_ul(unsigned long) __pure2;
unsigned int stdc_leading_ones_ull(unsigned long long) __pure2;
#define stdc_leading_ones(x) __generic_bitfunc(stdc_leading_ones, x)
unsigned int stdc_trailing_zeros_uc(unsigned char) __pure2;
unsigned int stdc_trailing_zeros_us(unsigned short) __pure2;
unsigned int stdc_trailing_zeros_ui(unsigned int) __pure2;
unsigned int stdc_trailing_zeros_ul(unsigned long) __pure2;
unsigned int stdc_trailing_zeros_ull(unsigned long long) __pure2;
#define stdc_trailing_zeros(x) __generic_bitfunc(stdc_trailing_zeros, x)
unsigned int stdc_trailing_ones_uc(unsigned char) __pure2;
unsigned int stdc_trailing_ones_us(unsigned short) __pure2;
unsigned int stdc_trailing_ones_ui(unsigned int) __pure2;
unsigned int stdc_trailing_ones_ul(unsigned long) __pure2;
unsigned int stdc_trailing_ones_ull(unsigned long long) __pure2;
#define stdc_trailing_ones(x) __generic_bitfunc(stdc_trailing_ones, x)
unsigned int stdc_first_leading_zero_uc(unsigned char) __pure2;
unsigned int stdc_first_leading_zero_us(unsigned short) __pure2;
unsigned int stdc_first_leading_zero_ui(unsigned int) __pure2;
unsigned int stdc_first_leading_zero_ul(unsigned long) __pure2;
unsigned int stdc_first_leading_zero_ull(unsigned long long) __pure2;
#define stdc_first_leading_zero(x) __generic_bitfunc(stdc_first_leading_zero, x)
unsigned int stdc_first_leading_one_uc(unsigned char) __pure2;
unsigned int stdc_first_leading_one_us(unsigned short) __pure2;
unsigned int stdc_first_leading_one_ui(unsigned int) __pure2;
unsigned int stdc_first_leading_one_ul(unsigned long) __pure2;
unsigned int stdc_first_leading_one_ull(unsigned long long) __pure2;
#define stdc_first_leading_one(x) __generic_bitfunc(stdc_first_leading_one, x)
unsigned int stdc_first_trailing_zero_uc(unsigned char) __pure2;
unsigned int stdc_first_trailing_zero_us(unsigned short) __pure2;
unsigned int stdc_first_trailing_zero_ui(unsigned int) __pure2;
unsigned int stdc_first_trailing_zero_ul(unsigned long) __pure2;
unsigned int stdc_first_trailing_zero_ull(unsigned long long) __pure2;
#define stdc_first_trailing_zero(x) __generic_bitfunc(stdc_first_trailing_zero, x)
unsigned int stdc_first_trailing_one_uc(unsigned char) __pure2;
unsigned int stdc_first_trailing_one_us(unsigned short) __pure2;
unsigned int stdc_first_trailing_one_ui(unsigned int) __pure2;
unsigned int stdc_first_trailing_one_ul(unsigned long) __pure2;
unsigned int stdc_first_trailing_one_ull(unsigned long long) __pure2;
#define stdc_first_trailing_one(x) __generic_bitfunc(stdc_first_trailing_one, x)
unsigned int stdc_count_zeros_uc(unsigned char) __pure2;
unsigned int stdc_count_zeros_us(unsigned short) __pure2;
unsigned int stdc_count_zeros_ui(unsigned int) __pure2;
unsigned int stdc_count_zeros_ul(unsigned long) __pure2;
unsigned int stdc_count_zeros_ull(unsigned long long) __pure2;
#define stdc_count_zeros(x) __generic_bitfunc(stdc_count_zeros, x)
unsigned int stdc_count_ones_uc(unsigned char) __pure2;
unsigned int stdc_count_ones_us(unsigned short) __pure2;
unsigned int stdc_count_ones_ui(unsigned int) __pure2;
unsigned int stdc_count_ones_ul(unsigned long) __pure2;
unsigned int stdc_count_ones_ull(unsigned long long) __pure2;
#define stdc_count_ones(x) __generic_bitfunc(stdc_count_ones, x)
_Bool stdc_has_single_bit_uc(unsigned char) __pure2;
_Bool stdc_has_single_bit_us(unsigned short) __pure2;
_Bool stdc_has_single_bit_ui(unsigned int) __pure2;
_Bool stdc_has_single_bit_ul(unsigned long) __pure2;
_Bool stdc_has_single_bit_ull(unsigned long long) __pure2;
#define stdc_has_single_bit(x) __generic_bitfunc(stdc_has_single_bit, x)
unsigned int stdc_bit_width_uc(unsigned char) __pure2;
unsigned int stdc_bit_width_us(unsigned short) __pure2;
unsigned int stdc_bit_width_ui(unsigned int) __pure2;
unsigned int stdc_bit_width_ul(unsigned long) __pure2;
unsigned int stdc_bit_width_ull(unsigned long long) __pure2;
#define stdc_bit_width(x) __generic_bitfunc(stdc_bit_width, x)
unsigned char stdc_bit_floor_uc(unsigned char) __pure2;
unsigned short stdc_bit_floor_us(unsigned short) __pure2;
unsigned stdc_bit_floor_ui(unsigned int) __pure2;
unsigned long stdc_bit_floor_ul(unsigned long) __pure2;
unsigned long long stdc_bit_floor_ull(unsigned long long) __pure2;
#define stdc_bit_floor(x) __generic_bitfunc(stdc_bit_floor, x)
unsigned char stdc_bit_ceil_uc(unsigned char) __pure2;
unsigned short stdc_bit_ceil_us(unsigned short) __pure2;
unsigned int stdc_bit_ceil_ui(unsigned int) __pure2;
unsigned long stdc_bit_ceil_ul(unsigned long) __pure2;
unsigned long long stdc_bit_ceil_ull(unsigned long long) __pure2;
#define stdc_bit_ceil(x) __generic_bitfunc(stdc_bit_ceil, x)
__END_DECLS
#endif /* __STDC_VERSION_STDBIT_H__ */
|