summaryrefslogtreecommitdiff
path: root/regress/include/bitstring/good/32
blob: 2e1ca55d6e323f6a71e2ca93f6530ef7744c947d (plain)
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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
Testing with TEST_LENGTH = 32

test _bit_byte, _bit_mask, and bitstr_size
  i   _bit_byte(i)   _bit_mask(i) bitstr_size(i)
  0              0              1              0
  1              0              2              1
  2              0              4              1
  3              0              8              1
  4              0             16              1
  5              0             32              1
  6              0             64              1
  7              0            128              1
  8              1              1              1
  9              1              2              2
 10              1              4              2
 11              1              8              2
 12              1             16              2
 13              1             32              2
 14              1             64              2
 15              1            128              2
 16              2              1              2
 17              2              2              3
 18              2              4              3
 19              2              8              3
 20              2             16              3
 21              2             32              3
 22              2             64              3
 23              2            128              3
 24              3              1              3
 25              3              2              4
 26              3              4              4
 27              3              8              4
 28              3             16              4
 29              3             32              4
 30              3             64              4
 31              3            128              4

test bit_alloc, clearbits, bit_ffc, bit_ffs
be:   0  -1 00000000000000000000000000000000
is:   0  -1 00000000000000000000000000000000

test bit_set
be:   1   0 10010010010010010010010010010010
is:   1   0 10010010010010010010010010010010

test bit_clear
be:   0   3 00010000010000010000010000010000
is:   0   3 00010000010000010000010000010000

test bit_test using previous bitstring
  i    bit_test(i)
  0              0
  1              0
  2              0
  3              8
  4              0
  5              0
  6              0
  7              0
  8              0
  9              2
 10              0
 11              0
 12              0
 13              0
 14              0
 15            128
 16              0
 17              0
 18              0
 19              0
 20              0
 21             32
 22              0
 23              0
 24              0
 25              0
 26              0
 27              8
 28              0
 29              0
 30              0
 31              0

test clearbits
be:   0  -1 00000000000000000000000000000000
is:   0  -1 00000000000000000000000000000000

test bit_nset and bit_nclear
be:   0   1 01111111111111111111111111111110
is:   0   1 01111111111111111111111111111110
be:   0   1 01000000000000000000000000000010
is:   0   1 01000000000000000000000000000010
be:   0  -1 00000000000000000000000000000000
is:   0  -1 00000000000000000000000000000000
be:  31   0 11111111111111111111111111111110
is:  31   0 11111111111111111111111111111110
be:   0  -1 00000000000000000000000000000000
is:   0  -1 00000000000000000000000000000000

first 1 bit should move right 1 position each line
  0  -1   0 11111111111111111111111111111111
  1   0   1 01111111111111111111111111111111
  2   0   2 00111111111111111111111111111111
  3   0   3 00011111111111111111111111111111
  4   0   4 00001111111111111111111111111111
  5   0   5 00000111111111111111111111111111
  6   0   6 00000011111111111111111111111111
  7   0   7 00000001111111111111111111111111
  8   0   8 00000000111111111111111111111111
  9   0   9 00000000011111111111111111111111
 10   0  10 00000000001111111111111111111111
 11   0  11 00000000000111111111111111111111
 12   0  12 00000000000011111111111111111111
 13   0  13 00000000000001111111111111111111
 14   0  14 00000000000000111111111111111111
 15   0  15 00000000000000011111111111111111
 16   0  16 00000000000000001111111111111111
 17   0  17 00000000000000000111111111111111
 18   0  18 00000000000000000011111111111111
 19   0  19 00000000000000000001111111111111
 20   0  20 00000000000000000000111111111111
 21   0  21 00000000000000000000011111111111
 22   0  22 00000000000000000000001111111111
 23   0  23 00000000000000000000000111111111
 24   0  24 00000000000000000000000011111111
 25   0  25 00000000000000000000000001111111
 26   0  26 00000000000000000000000000111111
 27   0  27 00000000000000000000000000011111
 28   0  28 00000000000000000000000000001111
 29   0  29 00000000000000000000000000000111
 30   0  30 00000000000000000000000000000011
 31   0  31 00000000000000000000000000000001

first 0 bit should move right 1 position each line
  0   0  -1 00000000000000000000000000000000
  1   1   0 10000000000000000000000000000000
  2   2   0 11000000000000000000000000000000
  3   3   0 11100000000000000000000000000000
  4   4   0 11110000000000000000000000000000
  5   5   0 11111000000000000000000000000000
  6   6   0 11111100000000000000000000000000
  7   7   0 11111110000000000000000000000000
  8   8   0 11111111000000000000000000000000
  9   9   0 11111111100000000000000000000000
 10  10   0 11111111110000000000000000000000
 11  11   0 11111111111000000000000000000000
 12  12   0 11111111111100000000000000000000
 13  13   0 11111111111110000000000000000000
 14  14   0 11111111111111000000000000000000
 15  15   0 11111111111111100000000000000000
 16  16   0 11111111111111110000000000000000
 17  17   0 11111111111111111000000000000000
 18  18   0 11111111111111111100000000000000
 19  19   0 11111111111111111110000000000000
 20  20   0 11111111111111111111000000000000
 21  21   0 11111111111111111111100000000000
 22  22   0 11111111111111111111110000000000
 23  23   0 11111111111111111111111000000000
 24  24   0 11111111111111111111111100000000
 25  25   0 11111111111111111111111110000000
 26  26   0 11111111111111111111111111000000
 27  27   0 11111111111111111111111111100000
 28  28   0 11111111111111111111111111110000
 29  29   0 11111111111111111111111111111000
 30  30   0 11111111111111111111111111111100
 31  31   0 11111111111111111111111111111110

first 0 bit should move left 1 position each line
  0  -1   0 11111111111111111111111111111111
  1  31   0 11111111111111111111111111111110
  2  30   0 11111111111111111111111111111100
  3  29   0 11111111111111111111111111111000
  4  28   0 11111111111111111111111111110000
  5  27   0 11111111111111111111111111100000
  6  26   0 11111111111111111111111111000000
  7  25   0 11111111111111111111111110000000
  8  24   0 11111111111111111111111100000000
  9  23   0 11111111111111111111111000000000
 10  22   0 11111111111111111111110000000000
 11  21   0 11111111111111111111100000000000
 12  20   0 11111111111111111111000000000000
 13  19   0 11111111111111111110000000000000
 14  18   0 11111111111111111100000000000000
 15  17   0 11111111111111111000000000000000
 16  16   0 11111111111111110000000000000000
 17  15   0 11111111111111100000000000000000
 18  14   0 11111111111111000000000000000000
 19  13   0 11111111111110000000000000000000
 20  12   0 11111111111100000000000000000000
 21  11   0 11111111111000000000000000000000
 22  10   0 11111111110000000000000000000000
 23   9   0 11111111100000000000000000000000
 24   8   0 11111111000000000000000000000000
 25   7   0 11111110000000000000000000000000
 26   6   0 11111100000000000000000000000000
 27   5   0 11111000000000000000000000000000
 28   4   0 11110000000000000000000000000000
 29   3   0 11100000000000000000000000000000
 30   2   0 11000000000000000000000000000000
 31   1   0 10000000000000000000000000000000

first 1 bit should move left 1 position each line
  0   0  -1 00000000000000000000000000000000
  1   0  31 00000000000000000000000000000001
  2   0  30 00000000000000000000000000000011
  3   0  29 00000000000000000000000000000111
  4   0  28 00000000000000000000000000001111
  5   0  27 00000000000000000000000000011111
  6   0  26 00000000000000000000000000111111
  7   0  25 00000000000000000000000001111111
  8   0  24 00000000000000000000000011111111
  9   0  23 00000000000000000000000111111111
 10   0  22 00000000000000000000001111111111
 11   0  21 00000000000000000000011111111111
 12   0  20 00000000000000000000111111111111
 13   0  19 00000000000000000001111111111111
 14   0  18 00000000000000000011111111111111
 15   0  17 00000000000000000111111111111111
 16   0  16 00000000000000001111111111111111
 17   0  15 00000000000000011111111111111111
 18   0  14 00000000000000111111111111111111
 19   0  13 00000000000001111111111111111111
 20   0  12 00000000000011111111111111111111
 21   0  11 00000000000111111111111111111111
 22   0  10 00000000001111111111111111111111
 23   0   9 00000000011111111111111111111111
 24   0   8 00000000111111111111111111111111
 25   0   7 00000001111111111111111111111111
 26   0   6 00000011111111111111111111111111
 27   0   5 00000111111111111111111111111111
 28   0   4 00001111111111111111111111111111
 29   0   3 00011111111111111111111111111111
 30   0   2 00111111111111111111111111111111
 31   0   1 01111111111111111111111111111111

0 bit should move right 1 position each line
  0   0   1 01111111111111111111111111111111
  1   1   0 10111111111111111111111111111111
  2   2   0 11011111111111111111111111111111
  3   3   0 11101111111111111111111111111111
  4   4   0 11110111111111111111111111111111
  5   5   0 11111011111111111111111111111111
  6   6   0 11111101111111111111111111111111
  7   7   0 11111110111111111111111111111111
  8   8   0 11111111011111111111111111111111
  9   9   0 11111111101111111111111111111111
 10  10   0 11111111110111111111111111111111
 11  11   0 11111111111011111111111111111111
 12  12   0 11111111111101111111111111111111
 13  13   0 11111111111110111111111111111111
 14  14   0 11111111111111011111111111111111
 15  15   0 11111111111111101111111111111111
 16  16   0 11111111111111110111111111111111
 17  17   0 11111111111111111011111111111111
 18  18   0 11111111111111111101111111111111
 19  19   0 11111111111111111110111111111111
 20  20   0 11111111111111111111011111111111
 21  21   0 11111111111111111111101111111111
 22  22   0 11111111111111111111110111111111
 23  23   0 11111111111111111111111011111111
 24  24   0 11111111111111111111111101111111
 25  25   0 11111111111111111111111110111111
 26  26   0 11111111111111111111111111011111
 27  27   0 11111111111111111111111111101111
 28  28   0 11111111111111111111111111110111
 29  29   0 11111111111111111111111111111011
 30  30   0 11111111111111111111111111111101
 31  31   0 11111111111111111111111111111110

1 bit should move right 1 position each line
  0   1   0 10000000000000000000000000000000
  1   0   1 01000000000000000000000000000000
  2   0   2 00100000000000000000000000000000
  3   0   3 00010000000000000000000000000000
  4   0   4 00001000000000000000000000000000
  5   0   5 00000100000000000000000000000000
  6   0   6 00000010000000000000000000000000
  7   0   7 00000001000000000000000000000000
  8   0   8 00000000100000000000000000000000
  9   0   9 00000000010000000000000000000000
 10   0  10 00000000001000000000000000000000
 11   0  11 00000000000100000000000000000000
 12   0  12 00000000000010000000000000000000
 13   0  13 00000000000001000000000000000000
 14   0  14 00000000000000100000000000000000
 15   0  15 00000000000000010000000000000000
 16   0  16 00000000000000001000000000000000
 17   0  17 00000000000000000100000000000000
 18   0  18 00000000000000000010000000000000
 19   0  19 00000000000000000001000000000000
 20   0  20 00000000000000000000100000000000
 21   0  21 00000000000000000000010000000000
 22   0  22 00000000000000000000001000000000
 23   0  23 00000000000000000000000100000000
 24   0  24 00000000000000000000000010000000
 25   0  25 00000000000000000000000001000000
 26   0  26 00000000000000000000000000100000
 27   0  27 00000000000000000000000000010000
 28   0  28 00000000000000000000000000001000
 29   0  29 00000000000000000000000000000100
 30   0  30 00000000000000000000000000000010
 31   0  31 00000000000000000000000000000001