Convert the include tests to atf.
Initial work from the GSoC 2008 project by Lukasz Strzygowski.
This commit is contained in:
parent
bbd81cb35e
commit
6cbeb05cb2
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: Makefile,v 1.21 2010/07/13 21:13:21 jmmv Exp $
|
||||
# $NetBSD: Makefile,v 1.22 2010/07/17 19:26:27 jmmv Exp $
|
||||
|
||||
.include <bsd.own.mk>
|
||||
|
||||
|
@ -8,7 +8,7 @@ ATFFILE= yes
|
|||
SUBDIR= crypto games ipf util
|
||||
|
||||
.if ${MKATF} != "no"
|
||||
SUBDIR+= fs net kernel lib libexec rump sys syscall
|
||||
SUBDIR+= fs include kernel lib libexec net rump sys syscall
|
||||
|
||||
. if ${MACHINE} != "evbppc" && ${MKKMOD} != "no"
|
||||
SUBDIR+= modules
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
# $NetBSD: Makefile,v 1.1 2010/07/17 19:26:27 jmmv Exp $
|
||||
|
||||
NOMAN= # defined
|
||||
|
||||
.include <bsd.own.mk>
|
||||
|
||||
TESTSDIR= ${TESTSBASE}/include
|
||||
TESTS_SUBDIRS= sys
|
||||
|
||||
TESTS_C= t_bitstring
|
||||
TESTS_C+= t_inttypes
|
||||
TESTS_C+= t_limits
|
||||
TESTS_C+= t_stdint
|
||||
|
||||
FILESDIR= ${TESTSDIR}
|
||||
FILES= d_bitstring_27.out
|
||||
FILES+= d_bitstring_32.out
|
||||
FILES+= d_bitstring_49.out
|
||||
FILES+= d_bitstring_64.out
|
||||
FILES+= d_bitstring_67.out
|
||||
FILES+= d_bitstring_8.out
|
||||
|
||||
.include <bsd.test.mk>
|
|
@ -0,0 +1,263 @@
|
|||
Testing with TEST_LENGTH = 27
|
||||
|
||||
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
|
||||
|
||||
test bit_alloc, clearbits, bit_ffc, bit_ffs
|
||||
be: 0 -1 000000000000000000000000000
|
||||
is: 0 -1 000000000000000000000000000
|
||||
|
||||
test bit_set
|
||||
be: 1 0 100100100100100100100100100
|
||||
is: 1 0 100100100100100100100100100
|
||||
|
||||
test bit_clear
|
||||
be: 0 3 000100000100000100000100000
|
||||
is: 0 3 000100000100000100000100000
|
||||
|
||||
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
|
||||
|
||||
test clearbits
|
||||
be: 0 -1 000000000000000000000000000
|
||||
is: 0 -1 000000000000000000000000000
|
||||
|
||||
test bit_nset and bit_nclear
|
||||
be: 0 1 011111111111111111111111110
|
||||
is: 0 1 011111111111111111111111110
|
||||
be: 0 1 010000000000000000000000010
|
||||
is: 0 1 010000000000000000000000010
|
||||
be: 0 -1 000000000000000000000000000
|
||||
is: 0 -1 000000000000000000000000000
|
||||
be: 26 0 111111111111111111111111110
|
||||
is: 26 0 111111111111111111111111110
|
||||
be: 0 -1 000000000000000000000000000
|
||||
is: 0 -1 000000000000000000000000000
|
||||
|
||||
first 1 bit should move right 1 position each line
|
||||
0 -1 0 111111111111111111111111111
|
||||
1 0 1 011111111111111111111111111
|
||||
2 0 2 001111111111111111111111111
|
||||
3 0 3 000111111111111111111111111
|
||||
4 0 4 000011111111111111111111111
|
||||
5 0 5 000001111111111111111111111
|
||||
6 0 6 000000111111111111111111111
|
||||
7 0 7 000000011111111111111111111
|
||||
8 0 8 000000001111111111111111111
|
||||
9 0 9 000000000111111111111111111
|
||||
10 0 10 000000000011111111111111111
|
||||
11 0 11 000000000001111111111111111
|
||||
12 0 12 000000000000111111111111111
|
||||
13 0 13 000000000000011111111111111
|
||||
14 0 14 000000000000001111111111111
|
||||
15 0 15 000000000000000111111111111
|
||||
16 0 16 000000000000000011111111111
|
||||
17 0 17 000000000000000001111111111
|
||||
18 0 18 000000000000000000111111111
|
||||
19 0 19 000000000000000000011111111
|
||||
20 0 20 000000000000000000001111111
|
||||
21 0 21 000000000000000000000111111
|
||||
22 0 22 000000000000000000000011111
|
||||
23 0 23 000000000000000000000001111
|
||||
24 0 24 000000000000000000000000111
|
||||
25 0 25 000000000000000000000000011
|
||||
26 0 26 000000000000000000000000001
|
||||
|
||||
first 0 bit should move right 1 position each line
|
||||
0 0 -1 000000000000000000000000000
|
||||
1 1 0 100000000000000000000000000
|
||||
2 2 0 110000000000000000000000000
|
||||
3 3 0 111000000000000000000000000
|
||||
4 4 0 111100000000000000000000000
|
||||
5 5 0 111110000000000000000000000
|
||||
6 6 0 111111000000000000000000000
|
||||
7 7 0 111111100000000000000000000
|
||||
8 8 0 111111110000000000000000000
|
||||
9 9 0 111111111000000000000000000
|
||||
10 10 0 111111111100000000000000000
|
||||
11 11 0 111111111110000000000000000
|
||||
12 12 0 111111111111000000000000000
|
||||
13 13 0 111111111111100000000000000
|
||||
14 14 0 111111111111110000000000000
|
||||
15 15 0 111111111111111000000000000
|
||||
16 16 0 111111111111111100000000000
|
||||
17 17 0 111111111111111110000000000
|
||||
18 18 0 111111111111111111000000000
|
||||
19 19 0 111111111111111111100000000
|
||||
20 20 0 111111111111111111110000000
|
||||
21 21 0 111111111111111111111000000
|
||||
22 22 0 111111111111111111111100000
|
||||
23 23 0 111111111111111111111110000
|
||||
24 24 0 111111111111111111111111000
|
||||
25 25 0 111111111111111111111111100
|
||||
26 26 0 111111111111111111111111110
|
||||
|
||||
first 0 bit should move left 1 position each line
|
||||
0 -1 0 111111111111111111111111111
|
||||
1 26 0 111111111111111111111111110
|
||||
2 25 0 111111111111111111111111100
|
||||
3 24 0 111111111111111111111111000
|
||||
4 23 0 111111111111111111111110000
|
||||
5 22 0 111111111111111111111100000
|
||||
6 21 0 111111111111111111111000000
|
||||
7 20 0 111111111111111111110000000
|
||||
8 19 0 111111111111111111100000000
|
||||
9 18 0 111111111111111111000000000
|
||||
10 17 0 111111111111111110000000000
|
||||
11 16 0 111111111111111100000000000
|
||||
12 15 0 111111111111111000000000000
|
||||
13 14 0 111111111111110000000000000
|
||||
14 13 0 111111111111100000000000000
|
||||
15 12 0 111111111111000000000000000
|
||||
16 11 0 111111111110000000000000000
|
||||
17 10 0 111111111100000000000000000
|
||||
18 9 0 111111111000000000000000000
|
||||
19 8 0 111111110000000000000000000
|
||||
20 7 0 111111100000000000000000000
|
||||
21 6 0 111111000000000000000000000
|
||||
22 5 0 111110000000000000000000000
|
||||
23 4 0 111100000000000000000000000
|
||||
24 3 0 111000000000000000000000000
|
||||
25 2 0 110000000000000000000000000
|
||||
26 1 0 100000000000000000000000000
|
||||
|
||||
first 1 bit should move left 1 position each line
|
||||
0 0 -1 000000000000000000000000000
|
||||
1 0 26 000000000000000000000000001
|
||||
2 0 25 000000000000000000000000011
|
||||
3 0 24 000000000000000000000000111
|
||||
4 0 23 000000000000000000000001111
|
||||
5 0 22 000000000000000000000011111
|
||||
6 0 21 000000000000000000000111111
|
||||
7 0 20 000000000000000000001111111
|
||||
8 0 19 000000000000000000011111111
|
||||
9 0 18 000000000000000000111111111
|
||||
10 0 17 000000000000000001111111111
|
||||
11 0 16 000000000000000011111111111
|
||||
12 0 15 000000000000000111111111111
|
||||
13 0 14 000000000000001111111111111
|
||||
14 0 13 000000000000011111111111111
|
||||
15 0 12 000000000000111111111111111
|
||||
16 0 11 000000000001111111111111111
|
||||
17 0 10 000000000011111111111111111
|
||||
18 0 9 000000000111111111111111111
|
||||
19 0 8 000000001111111111111111111
|
||||
20 0 7 000000011111111111111111111
|
||||
21 0 6 000000111111111111111111111
|
||||
22 0 5 000001111111111111111111111
|
||||
23 0 4 000011111111111111111111111
|
||||
24 0 3 000111111111111111111111111
|
||||
25 0 2 001111111111111111111111111
|
||||
26 0 1 011111111111111111111111111
|
||||
|
||||
0 bit should move right 1 position each line
|
||||
0 0 1 011111111111111111111111111
|
||||
1 1 0 101111111111111111111111111
|
||||
2 2 0 110111111111111111111111111
|
||||
3 3 0 111011111111111111111111111
|
||||
4 4 0 111101111111111111111111111
|
||||
5 5 0 111110111111111111111111111
|
||||
6 6 0 111111011111111111111111111
|
||||
7 7 0 111111101111111111111111111
|
||||
8 8 0 111111110111111111111111111
|
||||
9 9 0 111111111011111111111111111
|
||||
10 10 0 111111111101111111111111111
|
||||
11 11 0 111111111110111111111111111
|
||||
12 12 0 111111111111011111111111111
|
||||
13 13 0 111111111111101111111111111
|
||||
14 14 0 111111111111110111111111111
|
||||
15 15 0 111111111111111011111111111
|
||||
16 16 0 111111111111111101111111111
|
||||
17 17 0 111111111111111110111111111
|
||||
18 18 0 111111111111111111011111111
|
||||
19 19 0 111111111111111111101111111
|
||||
20 20 0 111111111111111111110111111
|
||||
21 21 0 111111111111111111111011111
|
||||
22 22 0 111111111111111111111101111
|
||||
23 23 0 111111111111111111111110111
|
||||
24 24 0 111111111111111111111111011
|
||||
25 25 0 111111111111111111111111101
|
||||
26 26 0 111111111111111111111111110
|
||||
|
||||
1 bit should move right 1 position each line
|
||||
0 1 0 100000000000000000000000000
|
||||
1 0 1 010000000000000000000000000
|
||||
2 0 2 001000000000000000000000000
|
||||
3 0 3 000100000000000000000000000
|
||||
4 0 4 000010000000000000000000000
|
||||
5 0 5 000001000000000000000000000
|
||||
6 0 6 000000100000000000000000000
|
||||
7 0 7 000000010000000000000000000
|
||||
8 0 8 000000001000000000000000000
|
||||
9 0 9 000000000100000000000000000
|
||||
10 0 10 000000000010000000000000000
|
||||
11 0 11 000000000001000000000000000
|
||||
12 0 12 000000000000100000000000000
|
||||
13 0 13 000000000000010000000000000
|
||||
14 0 14 000000000000001000000000000
|
||||
15 0 15 000000000000000100000000000
|
||||
16 0 16 000000000000000010000000000
|
||||
17 0 17 000000000000000001000000000
|
||||
18 0 18 000000000000000000100000000
|
||||
19 0 19 000000000000000000010000000
|
||||
20 0 20 000000000000000000001000000
|
||||
21 0 21 000000000000000000000100000
|
||||
22 0 22 000000000000000000000010000
|
||||
23 0 23 000000000000000000000001000
|
||||
24 0 24 000000000000000000000000100
|
||||
25 0 25 000000000000000000000000010
|
||||
26 0 26 000000000000000000000000001
|
|
@ -0,0 +1,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
|
|
@ -0,0 +1,439 @@
|
|||
Testing with TEST_LENGTH = 49
|
||||
|
||||
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
|
||||
32 4 1 4
|
||||
33 4 2 5
|
||||
34 4 4 5
|
||||
35 4 8 5
|
||||
36 4 16 5
|
||||
37 4 32 5
|
||||
38 4 64 5
|
||||
39 4 128 5
|
||||
40 5 1 5
|
||||
41 5 2 6
|
||||
42 5 4 6
|
||||
43 5 8 6
|
||||
44 5 16 6
|
||||
45 5 32 6
|
||||
46 5 64 6
|
||||
47 5 128 6
|
||||
48 6 1 6
|
||||
|
||||
test bit_alloc, clearbits, bit_ffc, bit_ffs
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
|
||||
test bit_set
|
||||
be: 1 0 1001001001001001001001001001001001001001001001001
|
||||
is: 1 0 1001001001001001001001001001001001001001001001001
|
||||
|
||||
test bit_clear
|
||||
be: 0 3 0001000001000001000001000001000001000001000001000
|
||||
is: 0 3 0001000001000001000001000001000001000001000001000
|
||||
|
||||
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
|
||||
32 0
|
||||
33 2
|
||||
34 0
|
||||
35 0
|
||||
36 0
|
||||
37 0
|
||||
38 0
|
||||
39 128
|
||||
40 0
|
||||
41 0
|
||||
42 0
|
||||
43 0
|
||||
44 0
|
||||
45 32
|
||||
46 0
|
||||
47 0
|
||||
48 0
|
||||
|
||||
test clearbits
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
|
||||
test bit_nset and bit_nclear
|
||||
be: 0 1 0111111111111111111111111111111111111111111111110
|
||||
is: 0 1 0111111111111111111111111111111111111111111111110
|
||||
be: 0 1 0100000000000000000000000000000000000000000000010
|
||||
is: 0 1 0100000000000000000000000000000000000000000000010
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
be: 48 0 1111111111111111111111111111111111111111111111110
|
||||
is: 48 0 1111111111111111111111111111111111111111111111110
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000
|
||||
|
||||
first 1 bit should move right 1 position each line
|
||||
0 -1 0 1111111111111111111111111111111111111111111111111
|
||||
1 0 1 0111111111111111111111111111111111111111111111111
|
||||
2 0 2 0011111111111111111111111111111111111111111111111
|
||||
3 0 3 0001111111111111111111111111111111111111111111111
|
||||
4 0 4 0000111111111111111111111111111111111111111111111
|
||||
5 0 5 0000011111111111111111111111111111111111111111111
|
||||
6 0 6 0000001111111111111111111111111111111111111111111
|
||||
7 0 7 0000000111111111111111111111111111111111111111111
|
||||
8 0 8 0000000011111111111111111111111111111111111111111
|
||||
9 0 9 0000000001111111111111111111111111111111111111111
|
||||
10 0 10 0000000000111111111111111111111111111111111111111
|
||||
11 0 11 0000000000011111111111111111111111111111111111111
|
||||
12 0 12 0000000000001111111111111111111111111111111111111
|
||||
13 0 13 0000000000000111111111111111111111111111111111111
|
||||
14 0 14 0000000000000011111111111111111111111111111111111
|
||||
15 0 15 0000000000000001111111111111111111111111111111111
|
||||
16 0 16 0000000000000000111111111111111111111111111111111
|
||||
17 0 17 0000000000000000011111111111111111111111111111111
|
||||
18 0 18 0000000000000000001111111111111111111111111111111
|
||||
19 0 19 0000000000000000000111111111111111111111111111111
|
||||
20 0 20 0000000000000000000011111111111111111111111111111
|
||||
21 0 21 0000000000000000000001111111111111111111111111111
|
||||
22 0 22 0000000000000000000000111111111111111111111111111
|
||||
23 0 23 0000000000000000000000011111111111111111111111111
|
||||
24 0 24 0000000000000000000000001111111111111111111111111
|
||||
25 0 25 0000000000000000000000000111111111111111111111111
|
||||
26 0 26 0000000000000000000000000011111111111111111111111
|
||||
27 0 27 0000000000000000000000000001111111111111111111111
|
||||
28 0 28 0000000000000000000000000000111111111111111111111
|
||||
29 0 29 0000000000000000000000000000011111111111111111111
|
||||
30 0 30 0000000000000000000000000000001111111111111111111
|
||||
31 0 31 0000000000000000000000000000000111111111111111111
|
||||
32 0 32 0000000000000000000000000000000011111111111111111
|
||||
33 0 33 0000000000000000000000000000000001111111111111111
|
||||
34 0 34 0000000000000000000000000000000000111111111111111
|
||||
35 0 35 0000000000000000000000000000000000011111111111111
|
||||
36 0 36 0000000000000000000000000000000000001111111111111
|
||||
37 0 37 0000000000000000000000000000000000000111111111111
|
||||
38 0 38 0000000000000000000000000000000000000011111111111
|
||||
39 0 39 0000000000000000000000000000000000000001111111111
|
||||
40 0 40 0000000000000000000000000000000000000000111111111
|
||||
41 0 41 0000000000000000000000000000000000000000011111111
|
||||
42 0 42 0000000000000000000000000000000000000000001111111
|
||||
43 0 43 0000000000000000000000000000000000000000000111111
|
||||
44 0 44 0000000000000000000000000000000000000000000011111
|
||||
45 0 45 0000000000000000000000000000000000000000000001111
|
||||
46 0 46 0000000000000000000000000000000000000000000000111
|
||||
47 0 47 0000000000000000000000000000000000000000000000011
|
||||
48 0 48 0000000000000000000000000000000000000000000000001
|
||||
|
||||
first 0 bit should move right 1 position each line
|
||||
0 0 -1 0000000000000000000000000000000000000000000000000
|
||||
1 1 0 1000000000000000000000000000000000000000000000000
|
||||
2 2 0 1100000000000000000000000000000000000000000000000
|
||||
3 3 0 1110000000000000000000000000000000000000000000000
|
||||
4 4 0 1111000000000000000000000000000000000000000000000
|
||||
5 5 0 1111100000000000000000000000000000000000000000000
|
||||
6 6 0 1111110000000000000000000000000000000000000000000
|
||||
7 7 0 1111111000000000000000000000000000000000000000000
|
||||
8 8 0 1111111100000000000000000000000000000000000000000
|
||||
9 9 0 1111111110000000000000000000000000000000000000000
|
||||
10 10 0 1111111111000000000000000000000000000000000000000
|
||||
11 11 0 1111111111100000000000000000000000000000000000000
|
||||
12 12 0 1111111111110000000000000000000000000000000000000
|
||||
13 13 0 1111111111111000000000000000000000000000000000000
|
||||
14 14 0 1111111111111100000000000000000000000000000000000
|
||||
15 15 0 1111111111111110000000000000000000000000000000000
|
||||
16 16 0 1111111111111111000000000000000000000000000000000
|
||||
17 17 0 1111111111111111100000000000000000000000000000000
|
||||
18 18 0 1111111111111111110000000000000000000000000000000
|
||||
19 19 0 1111111111111111111000000000000000000000000000000
|
||||
20 20 0 1111111111111111111100000000000000000000000000000
|
||||
21 21 0 1111111111111111111110000000000000000000000000000
|
||||
22 22 0 1111111111111111111111000000000000000000000000000
|
||||
23 23 0 1111111111111111111111100000000000000000000000000
|
||||
24 24 0 1111111111111111111111110000000000000000000000000
|
||||
25 25 0 1111111111111111111111111000000000000000000000000
|
||||
26 26 0 1111111111111111111111111100000000000000000000000
|
||||
27 27 0 1111111111111111111111111110000000000000000000000
|
||||
28 28 0 1111111111111111111111111111000000000000000000000
|
||||
29 29 0 1111111111111111111111111111100000000000000000000
|
||||
30 30 0 1111111111111111111111111111110000000000000000000
|
||||
31 31 0 1111111111111111111111111111111000000000000000000
|
||||
32 32 0 1111111111111111111111111111111100000000000000000
|
||||
33 33 0 1111111111111111111111111111111110000000000000000
|
||||
34 34 0 1111111111111111111111111111111111000000000000000
|
||||
35 35 0 1111111111111111111111111111111111100000000000000
|
||||
36 36 0 1111111111111111111111111111111111110000000000000
|
||||
37 37 0 1111111111111111111111111111111111111000000000000
|
||||
38 38 0 1111111111111111111111111111111111111100000000000
|
||||
39 39 0 1111111111111111111111111111111111111110000000000
|
||||
40 40 0 1111111111111111111111111111111111111111000000000
|
||||
41 41 0 1111111111111111111111111111111111111111100000000
|
||||
42 42 0 1111111111111111111111111111111111111111110000000
|
||||
43 43 0 1111111111111111111111111111111111111111111000000
|
||||
44 44 0 1111111111111111111111111111111111111111111100000
|
||||
45 45 0 1111111111111111111111111111111111111111111110000
|
||||
46 46 0 1111111111111111111111111111111111111111111111000
|
||||
47 47 0 1111111111111111111111111111111111111111111111100
|
||||
48 48 0 1111111111111111111111111111111111111111111111110
|
||||
|
||||
first 0 bit should move left 1 position each line
|
||||
0 -1 0 1111111111111111111111111111111111111111111111111
|
||||
1 48 0 1111111111111111111111111111111111111111111111110
|
||||
2 47 0 1111111111111111111111111111111111111111111111100
|
||||
3 46 0 1111111111111111111111111111111111111111111111000
|
||||
4 45 0 1111111111111111111111111111111111111111111110000
|
||||
5 44 0 1111111111111111111111111111111111111111111100000
|
||||
6 43 0 1111111111111111111111111111111111111111111000000
|
||||
7 42 0 1111111111111111111111111111111111111111110000000
|
||||
8 41 0 1111111111111111111111111111111111111111100000000
|
||||
9 40 0 1111111111111111111111111111111111111111000000000
|
||||
10 39 0 1111111111111111111111111111111111111110000000000
|
||||
11 38 0 1111111111111111111111111111111111111100000000000
|
||||
12 37 0 1111111111111111111111111111111111111000000000000
|
||||
13 36 0 1111111111111111111111111111111111110000000000000
|
||||
14 35 0 1111111111111111111111111111111111100000000000000
|
||||
15 34 0 1111111111111111111111111111111111000000000000000
|
||||
16 33 0 1111111111111111111111111111111110000000000000000
|
||||
17 32 0 1111111111111111111111111111111100000000000000000
|
||||
18 31 0 1111111111111111111111111111111000000000000000000
|
||||
19 30 0 1111111111111111111111111111110000000000000000000
|
||||
20 29 0 1111111111111111111111111111100000000000000000000
|
||||
21 28 0 1111111111111111111111111111000000000000000000000
|
||||
22 27 0 1111111111111111111111111110000000000000000000000
|
||||
23 26 0 1111111111111111111111111100000000000000000000000
|
||||
24 25 0 1111111111111111111111111000000000000000000000000
|
||||
25 24 0 1111111111111111111111110000000000000000000000000
|
||||
26 23 0 1111111111111111111111100000000000000000000000000
|
||||
27 22 0 1111111111111111111111000000000000000000000000000
|
||||
28 21 0 1111111111111111111110000000000000000000000000000
|
||||
29 20 0 1111111111111111111100000000000000000000000000000
|
||||
30 19 0 1111111111111111111000000000000000000000000000000
|
||||
31 18 0 1111111111111111110000000000000000000000000000000
|
||||
32 17 0 1111111111111111100000000000000000000000000000000
|
||||
33 16 0 1111111111111111000000000000000000000000000000000
|
||||
34 15 0 1111111111111110000000000000000000000000000000000
|
||||
35 14 0 1111111111111100000000000000000000000000000000000
|
||||
36 13 0 1111111111111000000000000000000000000000000000000
|
||||
37 12 0 1111111111110000000000000000000000000000000000000
|
||||
38 11 0 1111111111100000000000000000000000000000000000000
|
||||
39 10 0 1111111111000000000000000000000000000000000000000
|
||||
40 9 0 1111111110000000000000000000000000000000000000000
|
||||
41 8 0 1111111100000000000000000000000000000000000000000
|
||||
42 7 0 1111111000000000000000000000000000000000000000000
|
||||
43 6 0 1111110000000000000000000000000000000000000000000
|
||||
44 5 0 1111100000000000000000000000000000000000000000000
|
||||
45 4 0 1111000000000000000000000000000000000000000000000
|
||||
46 3 0 1110000000000000000000000000000000000000000000000
|
||||
47 2 0 1100000000000000000000000000000000000000000000000
|
||||
48 1 0 1000000000000000000000000000000000000000000000000
|
||||
|
||||
first 1 bit should move left 1 position each line
|
||||
0 0 -1 0000000000000000000000000000000000000000000000000
|
||||
1 0 48 0000000000000000000000000000000000000000000000001
|
||||
2 0 47 0000000000000000000000000000000000000000000000011
|
||||
3 0 46 0000000000000000000000000000000000000000000000111
|
||||
4 0 45 0000000000000000000000000000000000000000000001111
|
||||
5 0 44 0000000000000000000000000000000000000000000011111
|
||||
6 0 43 0000000000000000000000000000000000000000000111111
|
||||
7 0 42 0000000000000000000000000000000000000000001111111
|
||||
8 0 41 0000000000000000000000000000000000000000011111111
|
||||
9 0 40 0000000000000000000000000000000000000000111111111
|
||||
10 0 39 0000000000000000000000000000000000000001111111111
|
||||
11 0 38 0000000000000000000000000000000000000011111111111
|
||||
12 0 37 0000000000000000000000000000000000000111111111111
|
||||
13 0 36 0000000000000000000000000000000000001111111111111
|
||||
14 0 35 0000000000000000000000000000000000011111111111111
|
||||
15 0 34 0000000000000000000000000000000000111111111111111
|
||||
16 0 33 0000000000000000000000000000000001111111111111111
|
||||
17 0 32 0000000000000000000000000000000011111111111111111
|
||||
18 0 31 0000000000000000000000000000000111111111111111111
|
||||
19 0 30 0000000000000000000000000000001111111111111111111
|
||||
20 0 29 0000000000000000000000000000011111111111111111111
|
||||
21 0 28 0000000000000000000000000000111111111111111111111
|
||||
22 0 27 0000000000000000000000000001111111111111111111111
|
||||
23 0 26 0000000000000000000000000011111111111111111111111
|
||||
24 0 25 0000000000000000000000000111111111111111111111111
|
||||
25 0 24 0000000000000000000000001111111111111111111111111
|
||||
26 0 23 0000000000000000000000011111111111111111111111111
|
||||
27 0 22 0000000000000000000000111111111111111111111111111
|
||||
28 0 21 0000000000000000000001111111111111111111111111111
|
||||
29 0 20 0000000000000000000011111111111111111111111111111
|
||||
30 0 19 0000000000000000000111111111111111111111111111111
|
||||
31 0 18 0000000000000000001111111111111111111111111111111
|
||||
32 0 17 0000000000000000011111111111111111111111111111111
|
||||
33 0 16 0000000000000000111111111111111111111111111111111
|
||||
34 0 15 0000000000000001111111111111111111111111111111111
|
||||
35 0 14 0000000000000011111111111111111111111111111111111
|
||||
36 0 13 0000000000000111111111111111111111111111111111111
|
||||
37 0 12 0000000000001111111111111111111111111111111111111
|
||||
38 0 11 0000000000011111111111111111111111111111111111111
|
||||
39 0 10 0000000000111111111111111111111111111111111111111
|
||||
40 0 9 0000000001111111111111111111111111111111111111111
|
||||
41 0 8 0000000011111111111111111111111111111111111111111
|
||||
42 0 7 0000000111111111111111111111111111111111111111111
|
||||
43 0 6 0000001111111111111111111111111111111111111111111
|
||||
44 0 5 0000011111111111111111111111111111111111111111111
|
||||
45 0 4 0000111111111111111111111111111111111111111111111
|
||||
46 0 3 0001111111111111111111111111111111111111111111111
|
||||
47 0 2 0011111111111111111111111111111111111111111111111
|
||||
48 0 1 0111111111111111111111111111111111111111111111111
|
||||
|
||||
0 bit should move right 1 position each line
|
||||
0 0 1 0111111111111111111111111111111111111111111111111
|
||||
1 1 0 1011111111111111111111111111111111111111111111111
|
||||
2 2 0 1101111111111111111111111111111111111111111111111
|
||||
3 3 0 1110111111111111111111111111111111111111111111111
|
||||
4 4 0 1111011111111111111111111111111111111111111111111
|
||||
5 5 0 1111101111111111111111111111111111111111111111111
|
||||
6 6 0 1111110111111111111111111111111111111111111111111
|
||||
7 7 0 1111111011111111111111111111111111111111111111111
|
||||
8 8 0 1111111101111111111111111111111111111111111111111
|
||||
9 9 0 1111111110111111111111111111111111111111111111111
|
||||
10 10 0 1111111111011111111111111111111111111111111111111
|
||||
11 11 0 1111111111101111111111111111111111111111111111111
|
||||
12 12 0 1111111111110111111111111111111111111111111111111
|
||||
13 13 0 1111111111111011111111111111111111111111111111111
|
||||
14 14 0 1111111111111101111111111111111111111111111111111
|
||||
15 15 0 1111111111111110111111111111111111111111111111111
|
||||
16 16 0 1111111111111111011111111111111111111111111111111
|
||||
17 17 0 1111111111111111101111111111111111111111111111111
|
||||
18 18 0 1111111111111111110111111111111111111111111111111
|
||||
19 19 0 1111111111111111111011111111111111111111111111111
|
||||
20 20 0 1111111111111111111101111111111111111111111111111
|
||||
21 21 0 1111111111111111111110111111111111111111111111111
|
||||
22 22 0 1111111111111111111111011111111111111111111111111
|
||||
23 23 0 1111111111111111111111101111111111111111111111111
|
||||
24 24 0 1111111111111111111111110111111111111111111111111
|
||||
25 25 0 1111111111111111111111111011111111111111111111111
|
||||
26 26 0 1111111111111111111111111101111111111111111111111
|
||||
27 27 0 1111111111111111111111111110111111111111111111111
|
||||
28 28 0 1111111111111111111111111111011111111111111111111
|
||||
29 29 0 1111111111111111111111111111101111111111111111111
|
||||
30 30 0 1111111111111111111111111111110111111111111111111
|
||||
31 31 0 1111111111111111111111111111111011111111111111111
|
||||
32 32 0 1111111111111111111111111111111101111111111111111
|
||||
33 33 0 1111111111111111111111111111111110111111111111111
|
||||
34 34 0 1111111111111111111111111111111111011111111111111
|
||||
35 35 0 1111111111111111111111111111111111101111111111111
|
||||
36 36 0 1111111111111111111111111111111111110111111111111
|
||||
37 37 0 1111111111111111111111111111111111111011111111111
|
||||
38 38 0 1111111111111111111111111111111111111101111111111
|
||||
39 39 0 1111111111111111111111111111111111111110111111111
|
||||
40 40 0 1111111111111111111111111111111111111111011111111
|
||||
41 41 0 1111111111111111111111111111111111111111101111111
|
||||
42 42 0 1111111111111111111111111111111111111111110111111
|
||||
43 43 0 1111111111111111111111111111111111111111111011111
|
||||
44 44 0 1111111111111111111111111111111111111111111101111
|
||||
45 45 0 1111111111111111111111111111111111111111111110111
|
||||
46 46 0 1111111111111111111111111111111111111111111111011
|
||||
47 47 0 1111111111111111111111111111111111111111111111101
|
||||
48 48 0 1111111111111111111111111111111111111111111111110
|
||||
|
||||
1 bit should move right 1 position each line
|
||||
0 1 0 1000000000000000000000000000000000000000000000000
|
||||
1 0 1 0100000000000000000000000000000000000000000000000
|
||||
2 0 2 0010000000000000000000000000000000000000000000000
|
||||
3 0 3 0001000000000000000000000000000000000000000000000
|
||||
4 0 4 0000100000000000000000000000000000000000000000000
|
||||
5 0 5 0000010000000000000000000000000000000000000000000
|
||||
6 0 6 0000001000000000000000000000000000000000000000000
|
||||
7 0 7 0000000100000000000000000000000000000000000000000
|
||||
8 0 8 0000000010000000000000000000000000000000000000000
|
||||
9 0 9 0000000001000000000000000000000000000000000000000
|
||||
10 0 10 0000000000100000000000000000000000000000000000000
|
||||
11 0 11 0000000000010000000000000000000000000000000000000
|
||||
12 0 12 0000000000001000000000000000000000000000000000000
|
||||
13 0 13 0000000000000100000000000000000000000000000000000
|
||||
14 0 14 0000000000000010000000000000000000000000000000000
|
||||
15 0 15 0000000000000001000000000000000000000000000000000
|
||||
16 0 16 0000000000000000100000000000000000000000000000000
|
||||
17 0 17 0000000000000000010000000000000000000000000000000
|
||||
18 0 18 0000000000000000001000000000000000000000000000000
|
||||
19 0 19 0000000000000000000100000000000000000000000000000
|
||||
20 0 20 0000000000000000000010000000000000000000000000000
|
||||
21 0 21 0000000000000000000001000000000000000000000000000
|
||||
22 0 22 0000000000000000000000100000000000000000000000000
|
||||
23 0 23 0000000000000000000000010000000000000000000000000
|
||||
24 0 24 0000000000000000000000001000000000000000000000000
|
||||
25 0 25 0000000000000000000000000100000000000000000000000
|
||||
26 0 26 0000000000000000000000000010000000000000000000000
|
||||
27 0 27 0000000000000000000000000001000000000000000000000
|
||||
28 0 28 0000000000000000000000000000100000000000000000000
|
||||
29 0 29 0000000000000000000000000000010000000000000000000
|
||||
30 0 30 0000000000000000000000000000001000000000000000000
|
||||
31 0 31 0000000000000000000000000000000100000000000000000
|
||||
32 0 32 0000000000000000000000000000000010000000000000000
|
||||
33 0 33 0000000000000000000000000000000001000000000000000
|
||||
34 0 34 0000000000000000000000000000000000100000000000000
|
||||
35 0 35 0000000000000000000000000000000000010000000000000
|
||||
36 0 36 0000000000000000000000000000000000001000000000000
|
||||
37 0 37 0000000000000000000000000000000000000100000000000
|
||||
38 0 38 0000000000000000000000000000000000000010000000000
|
||||
39 0 39 0000000000000000000000000000000000000001000000000
|
||||
40 0 40 0000000000000000000000000000000000000000100000000
|
||||
41 0 41 0000000000000000000000000000000000000000010000000
|
||||
42 0 42 0000000000000000000000000000000000000000001000000
|
||||
43 0 43 0000000000000000000000000000000000000000000100000
|
||||
44 0 44 0000000000000000000000000000000000000000000010000
|
||||
45 0 45 0000000000000000000000000000000000000000000001000
|
||||
46 0 46 0000000000000000000000000000000000000000000000100
|
||||
47 0 47 0000000000000000000000000000000000000000000000010
|
||||
48 0 48 0000000000000000000000000000000000000000000000001
|
|
@ -0,0 +1,559 @@
|
|||
Testing with TEST_LENGTH = 64
|
||||
|
||||
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
|
||||
32 4 1 4
|
||||
33 4 2 5
|
||||
34 4 4 5
|
||||
35 4 8 5
|
||||
36 4 16 5
|
||||
37 4 32 5
|
||||
38 4 64 5
|
||||
39 4 128 5
|
||||
40 5 1 5
|
||||
41 5 2 6
|
||||
42 5 4 6
|
||||
43 5 8 6
|
||||
44 5 16 6
|
||||
45 5 32 6
|
||||
46 5 64 6
|
||||
47 5 128 6
|
||||
48 6 1 6
|
||||
49 6 2 7
|
||||
50 6 4 7
|
||||
51 6 8 7
|
||||
52 6 16 7
|
||||
53 6 32 7
|
||||
54 6 64 7
|
||||
55 6 128 7
|
||||
56 7 1 7
|
||||
57 7 2 8
|
||||
58 7 4 8
|
||||
59 7 8 8
|
||||
60 7 16 8
|
||||
61 7 32 8
|
||||
62 7 64 8
|
||||
63 7 128 8
|
||||
|
||||
test bit_alloc, clearbits, bit_ffc, bit_ffs
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
test bit_set
|
||||
be: 1 0 1001001001001001001001001001001001001001001001001001001001001001
|
||||
is: 1 0 1001001001001001001001001001001001001001001001001001001001001001
|
||||
|
||||
test bit_clear
|
||||
be: 0 3 0001000001000001000001000001000001000001000001000001000001000001
|
||||
is: 0 3 0001000001000001000001000001000001000001000001000001000001000001
|
||||
|
||||
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
|
||||
32 0
|
||||
33 2
|
||||
34 0
|
||||
35 0
|
||||
36 0
|
||||
37 0
|
||||
38 0
|
||||
39 128
|
||||
40 0
|
||||
41 0
|
||||
42 0
|
||||
43 0
|
||||
44 0
|
||||
45 32
|
||||
46 0
|
||||
47 0
|
||||
48 0
|
||||
49 0
|
||||
50 0
|
||||
51 8
|
||||
52 0
|
||||
53 0
|
||||
54 0
|
||||
55 0
|
||||
56 0
|
||||
57 2
|
||||
58 0
|
||||
59 0
|
||||
60 0
|
||||
61 0
|
||||
62 0
|
||||
63 128
|
||||
|
||||
test clearbits
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
test bit_nset and bit_nclear
|
||||
be: 0 1 0111111111111111111111111111111111111111111111111111111111111110
|
||||
is: 0 1 0111111111111111111111111111111111111111111111111111111111111110
|
||||
be: 0 1 0100000000000000000000000000000000000000000000000000000000000010
|
||||
is: 0 1 0100000000000000000000000000000000000000000000000000000000000010
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
be: 63 0 1111111111111111111111111111111111111111111111111111111111111110
|
||||
is: 63 0 1111111111111111111111111111111111111111111111111111111111111110
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
first 1 bit should move right 1 position each line
|
||||
0 -1 0 1111111111111111111111111111111111111111111111111111111111111111
|
||||
1 0 1 0111111111111111111111111111111111111111111111111111111111111111
|
||||
2 0 2 0011111111111111111111111111111111111111111111111111111111111111
|
||||
3 0 3 0001111111111111111111111111111111111111111111111111111111111111
|
||||
4 0 4 0000111111111111111111111111111111111111111111111111111111111111
|
||||
5 0 5 0000011111111111111111111111111111111111111111111111111111111111
|
||||
6 0 6 0000001111111111111111111111111111111111111111111111111111111111
|
||||
7 0 7 0000000111111111111111111111111111111111111111111111111111111111
|
||||
8 0 8 0000000011111111111111111111111111111111111111111111111111111111
|
||||
9 0 9 0000000001111111111111111111111111111111111111111111111111111111
|
||||
10 0 10 0000000000111111111111111111111111111111111111111111111111111111
|
||||
11 0 11 0000000000011111111111111111111111111111111111111111111111111111
|
||||
12 0 12 0000000000001111111111111111111111111111111111111111111111111111
|
||||
13 0 13 0000000000000111111111111111111111111111111111111111111111111111
|
||||
14 0 14 0000000000000011111111111111111111111111111111111111111111111111
|
||||
15 0 15 0000000000000001111111111111111111111111111111111111111111111111
|
||||
16 0 16 0000000000000000111111111111111111111111111111111111111111111111
|
||||
17 0 17 0000000000000000011111111111111111111111111111111111111111111111
|
||||
18 0 18 0000000000000000001111111111111111111111111111111111111111111111
|
||||
19 0 19 0000000000000000000111111111111111111111111111111111111111111111
|
||||
20 0 20 0000000000000000000011111111111111111111111111111111111111111111
|
||||
21 0 21 0000000000000000000001111111111111111111111111111111111111111111
|
||||
22 0 22 0000000000000000000000111111111111111111111111111111111111111111
|
||||
23 0 23 0000000000000000000000011111111111111111111111111111111111111111
|
||||
24 0 24 0000000000000000000000001111111111111111111111111111111111111111
|
||||
25 0 25 0000000000000000000000000111111111111111111111111111111111111111
|
||||
26 0 26 0000000000000000000000000011111111111111111111111111111111111111
|
||||
27 0 27 0000000000000000000000000001111111111111111111111111111111111111
|
||||
28 0 28 0000000000000000000000000000111111111111111111111111111111111111
|
||||
29 0 29 0000000000000000000000000000011111111111111111111111111111111111
|
||||
30 0 30 0000000000000000000000000000001111111111111111111111111111111111
|
||||
31 0 31 0000000000000000000000000000000111111111111111111111111111111111
|
||||
32 0 32 0000000000000000000000000000000011111111111111111111111111111111
|
||||
33 0 33 0000000000000000000000000000000001111111111111111111111111111111
|
||||
34 0 34 0000000000000000000000000000000000111111111111111111111111111111
|
||||
35 0 35 0000000000000000000000000000000000011111111111111111111111111111
|
||||
36 0 36 0000000000000000000000000000000000001111111111111111111111111111
|
||||
37 0 37 0000000000000000000000000000000000000111111111111111111111111111
|
||||
38 0 38 0000000000000000000000000000000000000011111111111111111111111111
|
||||
39 0 39 0000000000000000000000000000000000000001111111111111111111111111
|
||||
40 0 40 0000000000000000000000000000000000000000111111111111111111111111
|
||||
41 0 41 0000000000000000000000000000000000000000011111111111111111111111
|
||||
42 0 42 0000000000000000000000000000000000000000001111111111111111111111
|
||||
43 0 43 0000000000000000000000000000000000000000000111111111111111111111
|
||||
44 0 44 0000000000000000000000000000000000000000000011111111111111111111
|
||||
45 0 45 0000000000000000000000000000000000000000000001111111111111111111
|
||||
46 0 46 0000000000000000000000000000000000000000000000111111111111111111
|
||||
47 0 47 0000000000000000000000000000000000000000000000011111111111111111
|
||||
48 0 48 0000000000000000000000000000000000000000000000001111111111111111
|
||||
49 0 49 0000000000000000000000000000000000000000000000000111111111111111
|
||||
50 0 50 0000000000000000000000000000000000000000000000000011111111111111
|
||||
51 0 51 0000000000000000000000000000000000000000000000000001111111111111
|
||||
52 0 52 0000000000000000000000000000000000000000000000000000111111111111
|
||||
53 0 53 0000000000000000000000000000000000000000000000000000011111111111
|
||||
54 0 54 0000000000000000000000000000000000000000000000000000001111111111
|
||||
55 0 55 0000000000000000000000000000000000000000000000000000000111111111
|
||||
56 0 56 0000000000000000000000000000000000000000000000000000000011111111
|
||||
57 0 57 0000000000000000000000000000000000000000000000000000000001111111
|
||||
58 0 58 0000000000000000000000000000000000000000000000000000000000111111
|
||||
59 0 59 0000000000000000000000000000000000000000000000000000000000011111
|
||||
60 0 60 0000000000000000000000000000000000000000000000000000000000001111
|
||||
61 0 61 0000000000000000000000000000000000000000000000000000000000000111
|
||||
62 0 62 0000000000000000000000000000000000000000000000000000000000000011
|
||||
63 0 63 0000000000000000000000000000000000000000000000000000000000000001
|
||||
|
||||
first 0 bit should move right 1 position each line
|
||||
0 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
1 1 0 1000000000000000000000000000000000000000000000000000000000000000
|
||||
2 2 0 1100000000000000000000000000000000000000000000000000000000000000
|
||||
3 3 0 1110000000000000000000000000000000000000000000000000000000000000
|
||||
4 4 0 1111000000000000000000000000000000000000000000000000000000000000
|
||||
5 5 0 1111100000000000000000000000000000000000000000000000000000000000
|
||||
6 6 0 1111110000000000000000000000000000000000000000000000000000000000
|
||||
7 7 0 1111111000000000000000000000000000000000000000000000000000000000
|
||||
8 8 0 1111111100000000000000000000000000000000000000000000000000000000
|
||||
9 9 0 1111111110000000000000000000000000000000000000000000000000000000
|
||||
10 10 0 1111111111000000000000000000000000000000000000000000000000000000
|
||||
11 11 0 1111111111100000000000000000000000000000000000000000000000000000
|
||||
12 12 0 1111111111110000000000000000000000000000000000000000000000000000
|
||||
13 13 0 1111111111111000000000000000000000000000000000000000000000000000
|
||||
14 14 0 1111111111111100000000000000000000000000000000000000000000000000
|
||||
15 15 0 1111111111111110000000000000000000000000000000000000000000000000
|
||||
16 16 0 1111111111111111000000000000000000000000000000000000000000000000
|
||||
17 17 0 1111111111111111100000000000000000000000000000000000000000000000
|
||||
18 18 0 1111111111111111110000000000000000000000000000000000000000000000
|
||||
19 19 0 1111111111111111111000000000000000000000000000000000000000000000
|
||||
20 20 0 1111111111111111111100000000000000000000000000000000000000000000
|
||||
21 21 0 1111111111111111111110000000000000000000000000000000000000000000
|
||||
22 22 0 1111111111111111111111000000000000000000000000000000000000000000
|
||||
23 23 0 1111111111111111111111100000000000000000000000000000000000000000
|
||||
24 24 0 1111111111111111111111110000000000000000000000000000000000000000
|
||||
25 25 0 1111111111111111111111111000000000000000000000000000000000000000
|
||||
26 26 0 1111111111111111111111111100000000000000000000000000000000000000
|
||||
27 27 0 1111111111111111111111111110000000000000000000000000000000000000
|
||||
28 28 0 1111111111111111111111111111000000000000000000000000000000000000
|
||||
29 29 0 1111111111111111111111111111100000000000000000000000000000000000
|
||||
30 30 0 1111111111111111111111111111110000000000000000000000000000000000
|
||||
31 31 0 1111111111111111111111111111111000000000000000000000000000000000
|
||||
32 32 0 1111111111111111111111111111111100000000000000000000000000000000
|
||||
33 33 0 1111111111111111111111111111111110000000000000000000000000000000
|
||||
34 34 0 1111111111111111111111111111111111000000000000000000000000000000
|
||||
35 35 0 1111111111111111111111111111111111100000000000000000000000000000
|
||||
36 36 0 1111111111111111111111111111111111110000000000000000000000000000
|
||||
37 37 0 1111111111111111111111111111111111111000000000000000000000000000
|
||||
38 38 0 1111111111111111111111111111111111111100000000000000000000000000
|
||||
39 39 0 1111111111111111111111111111111111111110000000000000000000000000
|
||||
40 40 0 1111111111111111111111111111111111111111000000000000000000000000
|
||||
41 41 0 1111111111111111111111111111111111111111100000000000000000000000
|
||||
42 42 0 1111111111111111111111111111111111111111110000000000000000000000
|
||||
43 43 0 1111111111111111111111111111111111111111111000000000000000000000
|
||||
44 44 0 1111111111111111111111111111111111111111111100000000000000000000
|
||||
45 45 0 1111111111111111111111111111111111111111111110000000000000000000
|
||||
46 46 0 1111111111111111111111111111111111111111111111000000000000000000
|
||||
47 47 0 1111111111111111111111111111111111111111111111100000000000000000
|
||||
48 48 0 1111111111111111111111111111111111111111111111110000000000000000
|
||||
49 49 0 1111111111111111111111111111111111111111111111111000000000000000
|
||||
50 50 0 1111111111111111111111111111111111111111111111111100000000000000
|
||||
51 51 0 1111111111111111111111111111111111111111111111111110000000000000
|
||||
52 52 0 1111111111111111111111111111111111111111111111111111000000000000
|
||||
53 53 0 1111111111111111111111111111111111111111111111111111100000000000
|
||||
54 54 0 1111111111111111111111111111111111111111111111111111110000000000
|
||||
55 55 0 1111111111111111111111111111111111111111111111111111111000000000
|
||||
56 56 0 1111111111111111111111111111111111111111111111111111111100000000
|
||||
57 57 0 1111111111111111111111111111111111111111111111111111111110000000
|
||||
58 58 0 1111111111111111111111111111111111111111111111111111111111000000
|
||||
59 59 0 1111111111111111111111111111111111111111111111111111111111100000
|
||||
60 60 0 1111111111111111111111111111111111111111111111111111111111110000
|
||||
61 61 0 1111111111111111111111111111111111111111111111111111111111111000
|
||||
62 62 0 1111111111111111111111111111111111111111111111111111111111111100
|
||||
63 63 0 1111111111111111111111111111111111111111111111111111111111111110
|
||||
|
||||
first 0 bit should move left 1 position each line
|
||||
0 -1 0 1111111111111111111111111111111111111111111111111111111111111111
|
||||
1 63 0 1111111111111111111111111111111111111111111111111111111111111110
|
||||
2 62 0 1111111111111111111111111111111111111111111111111111111111111100
|
||||
3 61 0 1111111111111111111111111111111111111111111111111111111111111000
|
||||
4 60 0 1111111111111111111111111111111111111111111111111111111111110000
|
||||
5 59 0 1111111111111111111111111111111111111111111111111111111111100000
|
||||
6 58 0 1111111111111111111111111111111111111111111111111111111111000000
|
||||
7 57 0 1111111111111111111111111111111111111111111111111111111110000000
|
||||
8 56 0 1111111111111111111111111111111111111111111111111111111100000000
|
||||
9 55 0 1111111111111111111111111111111111111111111111111111111000000000
|
||||
10 54 0 1111111111111111111111111111111111111111111111111111110000000000
|
||||
11 53 0 1111111111111111111111111111111111111111111111111111100000000000
|
||||
12 52 0 1111111111111111111111111111111111111111111111111111000000000000
|
||||
13 51 0 1111111111111111111111111111111111111111111111111110000000000000
|
||||
14 50 0 1111111111111111111111111111111111111111111111111100000000000000
|
||||
15 49 0 1111111111111111111111111111111111111111111111111000000000000000
|
||||
16 48 0 1111111111111111111111111111111111111111111111110000000000000000
|
||||
17 47 0 1111111111111111111111111111111111111111111111100000000000000000
|
||||
18 46 0 1111111111111111111111111111111111111111111111000000000000000000
|
||||
19 45 0 1111111111111111111111111111111111111111111110000000000000000000
|
||||
20 44 0 1111111111111111111111111111111111111111111100000000000000000000
|
||||
21 43 0 1111111111111111111111111111111111111111111000000000000000000000
|
||||
22 42 0 1111111111111111111111111111111111111111110000000000000000000000
|
||||
23 41 0 1111111111111111111111111111111111111111100000000000000000000000
|
||||
24 40 0 1111111111111111111111111111111111111111000000000000000000000000
|
||||
25 39 0 1111111111111111111111111111111111111110000000000000000000000000
|
||||
26 38 0 1111111111111111111111111111111111111100000000000000000000000000
|
||||
27 37 0 1111111111111111111111111111111111111000000000000000000000000000
|
||||
28 36 0 1111111111111111111111111111111111110000000000000000000000000000
|
||||
29 35 0 1111111111111111111111111111111111100000000000000000000000000000
|
||||
30 34 0 1111111111111111111111111111111111000000000000000000000000000000
|
||||
31 33 0 1111111111111111111111111111111110000000000000000000000000000000
|
||||
32 32 0 1111111111111111111111111111111100000000000000000000000000000000
|
||||
33 31 0 1111111111111111111111111111111000000000000000000000000000000000
|
||||
34 30 0 1111111111111111111111111111110000000000000000000000000000000000
|
||||
35 29 0 1111111111111111111111111111100000000000000000000000000000000000
|
||||
36 28 0 1111111111111111111111111111000000000000000000000000000000000000
|
||||
37 27 0 1111111111111111111111111110000000000000000000000000000000000000
|
||||
38 26 0 1111111111111111111111111100000000000000000000000000000000000000
|
||||
39 25 0 1111111111111111111111111000000000000000000000000000000000000000
|
||||
40 24 0 1111111111111111111111110000000000000000000000000000000000000000
|
||||
41 23 0 1111111111111111111111100000000000000000000000000000000000000000
|
||||
42 22 0 1111111111111111111111000000000000000000000000000000000000000000
|
||||
43 21 0 1111111111111111111110000000000000000000000000000000000000000000
|
||||
44 20 0 1111111111111111111100000000000000000000000000000000000000000000
|
||||
45 19 0 1111111111111111111000000000000000000000000000000000000000000000
|
||||
46 18 0 1111111111111111110000000000000000000000000000000000000000000000
|
||||
47 17 0 1111111111111111100000000000000000000000000000000000000000000000
|
||||
48 16 0 1111111111111111000000000000000000000000000000000000000000000000
|
||||
49 15 0 1111111111111110000000000000000000000000000000000000000000000000
|
||||
50 14 0 1111111111111100000000000000000000000000000000000000000000000000
|
||||
51 13 0 1111111111111000000000000000000000000000000000000000000000000000
|
||||
52 12 0 1111111111110000000000000000000000000000000000000000000000000000
|
||||
53 11 0 1111111111100000000000000000000000000000000000000000000000000000
|
||||
54 10 0 1111111111000000000000000000000000000000000000000000000000000000
|
||||
55 9 0 1111111110000000000000000000000000000000000000000000000000000000
|
||||
56 8 0 1111111100000000000000000000000000000000000000000000000000000000
|
||||
57 7 0 1111111000000000000000000000000000000000000000000000000000000000
|
||||
58 6 0 1111110000000000000000000000000000000000000000000000000000000000
|
||||
59 5 0 1111100000000000000000000000000000000000000000000000000000000000
|
||||
60 4 0 1111000000000000000000000000000000000000000000000000000000000000
|
||||
61 3 0 1110000000000000000000000000000000000000000000000000000000000000
|
||||
62 2 0 1100000000000000000000000000000000000000000000000000000000000000
|
||||
63 1 0 1000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
first 1 bit should move left 1 position each line
|
||||
0 0 -1 0000000000000000000000000000000000000000000000000000000000000000
|
||||
1 0 63 0000000000000000000000000000000000000000000000000000000000000001
|
||||
2 0 62 0000000000000000000000000000000000000000000000000000000000000011
|
||||
3 0 61 0000000000000000000000000000000000000000000000000000000000000111
|
||||
4 0 60 0000000000000000000000000000000000000000000000000000000000001111
|
||||
5 0 59 0000000000000000000000000000000000000000000000000000000000011111
|
||||
6 0 58 0000000000000000000000000000000000000000000000000000000000111111
|
||||
7 0 57 0000000000000000000000000000000000000000000000000000000001111111
|
||||
8 0 56 0000000000000000000000000000000000000000000000000000000011111111
|
||||
9 0 55 0000000000000000000000000000000000000000000000000000000111111111
|
||||
10 0 54 0000000000000000000000000000000000000000000000000000001111111111
|
||||
11 0 53 0000000000000000000000000000000000000000000000000000011111111111
|
||||
12 0 52 0000000000000000000000000000000000000000000000000000111111111111
|
||||
13 0 51 0000000000000000000000000000000000000000000000000001111111111111
|
||||
14 0 50 0000000000000000000000000000000000000000000000000011111111111111
|
||||
15 0 49 0000000000000000000000000000000000000000000000000111111111111111
|
||||
16 0 48 0000000000000000000000000000000000000000000000001111111111111111
|
||||
17 0 47 0000000000000000000000000000000000000000000000011111111111111111
|
||||
18 0 46 0000000000000000000000000000000000000000000000111111111111111111
|
||||
19 0 45 0000000000000000000000000000000000000000000001111111111111111111
|
||||
20 0 44 0000000000000000000000000000000000000000000011111111111111111111
|
||||
21 0 43 0000000000000000000000000000000000000000000111111111111111111111
|
||||
22 0 42 0000000000000000000000000000000000000000001111111111111111111111
|
||||
23 0 41 0000000000000000000000000000000000000000011111111111111111111111
|
||||
24 0 40 0000000000000000000000000000000000000000111111111111111111111111
|
||||
25 0 39 0000000000000000000000000000000000000001111111111111111111111111
|
||||
26 0 38 0000000000000000000000000000000000000011111111111111111111111111
|
||||
27 0 37 0000000000000000000000000000000000000111111111111111111111111111
|
||||
28 0 36 0000000000000000000000000000000000001111111111111111111111111111
|
||||
29 0 35 0000000000000000000000000000000000011111111111111111111111111111
|
||||
30 0 34 0000000000000000000000000000000000111111111111111111111111111111
|
||||
31 0 33 0000000000000000000000000000000001111111111111111111111111111111
|
||||
32 0 32 0000000000000000000000000000000011111111111111111111111111111111
|
||||
33 0 31 0000000000000000000000000000000111111111111111111111111111111111
|
||||
34 0 30 0000000000000000000000000000001111111111111111111111111111111111
|
||||
35 0 29 0000000000000000000000000000011111111111111111111111111111111111
|
||||
36 0 28 0000000000000000000000000000111111111111111111111111111111111111
|
||||
37 0 27 0000000000000000000000000001111111111111111111111111111111111111
|
||||
38 0 26 0000000000000000000000000011111111111111111111111111111111111111
|
||||
39 0 25 0000000000000000000000000111111111111111111111111111111111111111
|
||||
40 0 24 0000000000000000000000001111111111111111111111111111111111111111
|
||||
41 0 23 0000000000000000000000011111111111111111111111111111111111111111
|
||||
42 0 22 0000000000000000000000111111111111111111111111111111111111111111
|
||||
43 0 21 0000000000000000000001111111111111111111111111111111111111111111
|
||||
44 0 20 0000000000000000000011111111111111111111111111111111111111111111
|
||||
45 0 19 0000000000000000000111111111111111111111111111111111111111111111
|
||||
46 0 18 0000000000000000001111111111111111111111111111111111111111111111
|
||||
47 0 17 0000000000000000011111111111111111111111111111111111111111111111
|
||||
48 0 16 0000000000000000111111111111111111111111111111111111111111111111
|
||||
49 0 15 0000000000000001111111111111111111111111111111111111111111111111
|
||||
50 0 14 0000000000000011111111111111111111111111111111111111111111111111
|
||||
51 0 13 0000000000000111111111111111111111111111111111111111111111111111
|
||||
52 0 12 0000000000001111111111111111111111111111111111111111111111111111
|
||||
53 0 11 0000000000011111111111111111111111111111111111111111111111111111
|
||||
54 0 10 0000000000111111111111111111111111111111111111111111111111111111
|
||||
55 0 9 0000000001111111111111111111111111111111111111111111111111111111
|
||||
56 0 8 0000000011111111111111111111111111111111111111111111111111111111
|
||||
57 0 7 0000000111111111111111111111111111111111111111111111111111111111
|
||||
58 0 6 0000001111111111111111111111111111111111111111111111111111111111
|
||||
59 0 5 0000011111111111111111111111111111111111111111111111111111111111
|
||||
60 0 4 0000111111111111111111111111111111111111111111111111111111111111
|
||||
61 0 3 0001111111111111111111111111111111111111111111111111111111111111
|
||||
62 0 2 0011111111111111111111111111111111111111111111111111111111111111
|
||||
63 0 1 0111111111111111111111111111111111111111111111111111111111111111
|
||||
|
||||
0 bit should move right 1 position each line
|
||||
0 0 1 0111111111111111111111111111111111111111111111111111111111111111
|
||||
1 1 0 1011111111111111111111111111111111111111111111111111111111111111
|
||||
2 2 0 1101111111111111111111111111111111111111111111111111111111111111
|
||||
3 3 0 1110111111111111111111111111111111111111111111111111111111111111
|
||||
4 4 0 1111011111111111111111111111111111111111111111111111111111111111
|
||||
5 5 0 1111101111111111111111111111111111111111111111111111111111111111
|
||||
6 6 0 1111110111111111111111111111111111111111111111111111111111111111
|
||||
7 7 0 1111111011111111111111111111111111111111111111111111111111111111
|
||||
8 8 0 1111111101111111111111111111111111111111111111111111111111111111
|
||||
9 9 0 1111111110111111111111111111111111111111111111111111111111111111
|
||||
10 10 0 1111111111011111111111111111111111111111111111111111111111111111
|
||||
11 11 0 1111111111101111111111111111111111111111111111111111111111111111
|
||||
12 12 0 1111111111110111111111111111111111111111111111111111111111111111
|
||||
13 13 0 1111111111111011111111111111111111111111111111111111111111111111
|
||||
14 14 0 1111111111111101111111111111111111111111111111111111111111111111
|
||||
15 15 0 1111111111111110111111111111111111111111111111111111111111111111
|
||||
16 16 0 1111111111111111011111111111111111111111111111111111111111111111
|
||||
17 17 0 1111111111111111101111111111111111111111111111111111111111111111
|
||||
18 18 0 1111111111111111110111111111111111111111111111111111111111111111
|
||||
19 19 0 1111111111111111111011111111111111111111111111111111111111111111
|
||||
20 20 0 1111111111111111111101111111111111111111111111111111111111111111
|
||||
21 21 0 1111111111111111111110111111111111111111111111111111111111111111
|
||||
22 22 0 1111111111111111111111011111111111111111111111111111111111111111
|
||||
23 23 0 1111111111111111111111101111111111111111111111111111111111111111
|
||||
24 24 0 1111111111111111111111110111111111111111111111111111111111111111
|
||||
25 25 0 1111111111111111111111111011111111111111111111111111111111111111
|
||||
26 26 0 1111111111111111111111111101111111111111111111111111111111111111
|
||||
27 27 0 1111111111111111111111111110111111111111111111111111111111111111
|
||||
28 28 0 1111111111111111111111111111011111111111111111111111111111111111
|
||||
29 29 0 1111111111111111111111111111101111111111111111111111111111111111
|
||||
30 30 0 1111111111111111111111111111110111111111111111111111111111111111
|
||||
31 31 0 1111111111111111111111111111111011111111111111111111111111111111
|
||||
32 32 0 1111111111111111111111111111111101111111111111111111111111111111
|
||||
33 33 0 1111111111111111111111111111111110111111111111111111111111111111
|
||||
34 34 0 1111111111111111111111111111111111011111111111111111111111111111
|
||||
35 35 0 1111111111111111111111111111111111101111111111111111111111111111
|
||||
36 36 0 1111111111111111111111111111111111110111111111111111111111111111
|
||||
37 37 0 1111111111111111111111111111111111111011111111111111111111111111
|
||||
38 38 0 1111111111111111111111111111111111111101111111111111111111111111
|
||||
39 39 0 1111111111111111111111111111111111111110111111111111111111111111
|
||||
40 40 0 1111111111111111111111111111111111111111011111111111111111111111
|
||||
41 41 0 1111111111111111111111111111111111111111101111111111111111111111
|
||||
42 42 0 1111111111111111111111111111111111111111110111111111111111111111
|
||||
43 43 0 1111111111111111111111111111111111111111111011111111111111111111
|
||||
44 44 0 1111111111111111111111111111111111111111111101111111111111111111
|
||||
45 45 0 1111111111111111111111111111111111111111111110111111111111111111
|
||||
46 46 0 1111111111111111111111111111111111111111111111011111111111111111
|
||||
47 47 0 1111111111111111111111111111111111111111111111101111111111111111
|
||||
48 48 0 1111111111111111111111111111111111111111111111110111111111111111
|
||||
49 49 0 1111111111111111111111111111111111111111111111111011111111111111
|
||||
50 50 0 1111111111111111111111111111111111111111111111111101111111111111
|
||||
51 51 0 1111111111111111111111111111111111111111111111111110111111111111
|
||||
52 52 0 1111111111111111111111111111111111111111111111111111011111111111
|
||||
53 53 0 1111111111111111111111111111111111111111111111111111101111111111
|
||||
54 54 0 1111111111111111111111111111111111111111111111111111110111111111
|
||||
55 55 0 1111111111111111111111111111111111111111111111111111111011111111
|
||||
56 56 0 1111111111111111111111111111111111111111111111111111111101111111
|
||||
57 57 0 1111111111111111111111111111111111111111111111111111111110111111
|
||||
58 58 0 1111111111111111111111111111111111111111111111111111111111011111
|
||||
59 59 0 1111111111111111111111111111111111111111111111111111111111101111
|
||||
60 60 0 1111111111111111111111111111111111111111111111111111111111110111
|
||||
61 61 0 1111111111111111111111111111111111111111111111111111111111111011
|
||||
62 62 0 1111111111111111111111111111111111111111111111111111111111111101
|
||||
63 63 0 1111111111111111111111111111111111111111111111111111111111111110
|
||||
|
||||
1 bit should move right 1 position each line
|
||||
0 1 0 1000000000000000000000000000000000000000000000000000000000000000
|
||||
1 0 1 0100000000000000000000000000000000000000000000000000000000000000
|
||||
2 0 2 0010000000000000000000000000000000000000000000000000000000000000
|
||||
3 0 3 0001000000000000000000000000000000000000000000000000000000000000
|
||||
4 0 4 0000100000000000000000000000000000000000000000000000000000000000
|
||||
5 0 5 0000010000000000000000000000000000000000000000000000000000000000
|
||||
6 0 6 0000001000000000000000000000000000000000000000000000000000000000
|
||||
7 0 7 0000000100000000000000000000000000000000000000000000000000000000
|
||||
8 0 8 0000000010000000000000000000000000000000000000000000000000000000
|
||||
9 0 9 0000000001000000000000000000000000000000000000000000000000000000
|
||||
10 0 10 0000000000100000000000000000000000000000000000000000000000000000
|
||||
11 0 11 0000000000010000000000000000000000000000000000000000000000000000
|
||||
12 0 12 0000000000001000000000000000000000000000000000000000000000000000
|
||||
13 0 13 0000000000000100000000000000000000000000000000000000000000000000
|
||||
14 0 14 0000000000000010000000000000000000000000000000000000000000000000
|
||||
15 0 15 0000000000000001000000000000000000000000000000000000000000000000
|
||||
16 0 16 0000000000000000100000000000000000000000000000000000000000000000
|
||||
17 0 17 0000000000000000010000000000000000000000000000000000000000000000
|
||||
18 0 18 0000000000000000001000000000000000000000000000000000000000000000
|
||||
19 0 19 0000000000000000000100000000000000000000000000000000000000000000
|
||||
20 0 20 0000000000000000000010000000000000000000000000000000000000000000
|
||||
21 0 21 0000000000000000000001000000000000000000000000000000000000000000
|
||||
22 0 22 0000000000000000000000100000000000000000000000000000000000000000
|
||||
23 0 23 0000000000000000000000010000000000000000000000000000000000000000
|
||||
24 0 24 0000000000000000000000001000000000000000000000000000000000000000
|
||||
25 0 25 0000000000000000000000000100000000000000000000000000000000000000
|
||||
26 0 26 0000000000000000000000000010000000000000000000000000000000000000
|
||||
27 0 27 0000000000000000000000000001000000000000000000000000000000000000
|
||||
28 0 28 0000000000000000000000000000100000000000000000000000000000000000
|
||||
29 0 29 0000000000000000000000000000010000000000000000000000000000000000
|
||||
30 0 30 0000000000000000000000000000001000000000000000000000000000000000
|
||||
31 0 31 0000000000000000000000000000000100000000000000000000000000000000
|
||||
32 0 32 0000000000000000000000000000000010000000000000000000000000000000
|
||||
33 0 33 0000000000000000000000000000000001000000000000000000000000000000
|
||||
34 0 34 0000000000000000000000000000000000100000000000000000000000000000
|
||||
35 0 35 0000000000000000000000000000000000010000000000000000000000000000
|
||||
36 0 36 0000000000000000000000000000000000001000000000000000000000000000
|
||||
37 0 37 0000000000000000000000000000000000000100000000000000000000000000
|
||||
38 0 38 0000000000000000000000000000000000000010000000000000000000000000
|
||||
39 0 39 0000000000000000000000000000000000000001000000000000000000000000
|
||||
40 0 40 0000000000000000000000000000000000000000100000000000000000000000
|
||||
41 0 41 0000000000000000000000000000000000000000010000000000000000000000
|
||||
42 0 42 0000000000000000000000000000000000000000001000000000000000000000
|
||||
43 0 43 0000000000000000000000000000000000000000000100000000000000000000
|
||||
44 0 44 0000000000000000000000000000000000000000000010000000000000000000
|
||||
45 0 45 0000000000000000000000000000000000000000000001000000000000000000
|
||||
46 0 46 0000000000000000000000000000000000000000000000100000000000000000
|
||||
47 0 47 0000000000000000000000000000000000000000000000010000000000000000
|
||||
48 0 48 0000000000000000000000000000000000000000000000001000000000000000
|
||||
49 0 49 0000000000000000000000000000000000000000000000000100000000000000
|
||||
50 0 50 0000000000000000000000000000000000000000000000000010000000000000
|
||||
51 0 51 0000000000000000000000000000000000000000000000000001000000000000
|
||||
52 0 52 0000000000000000000000000000000000000000000000000000100000000000
|
||||
53 0 53 0000000000000000000000000000000000000000000000000000010000000000
|
||||
54 0 54 0000000000000000000000000000000000000000000000000000001000000000
|
||||
55 0 55 0000000000000000000000000000000000000000000000000000000100000000
|
||||
56 0 56 0000000000000000000000000000000000000000000000000000000010000000
|
||||
57 0 57 0000000000000000000000000000000000000000000000000000000001000000
|
||||
58 0 58 0000000000000000000000000000000000000000000000000000000000100000
|
||||
59 0 59 0000000000000000000000000000000000000000000000000000000000010000
|
||||
60 0 60 0000000000000000000000000000000000000000000000000000000000001000
|
||||
61 0 61 0000000000000000000000000000000000000000000000000000000000000100
|
||||
62 0 62 0000000000000000000000000000000000000000000000000000000000000010
|
||||
63 0 63 0000000000000000000000000000000000000000000000000000000000000001
|
|
@ -0,0 +1,583 @@
|
|||
Testing with TEST_LENGTH = 67
|
||||
|
||||
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
|
||||
32 4 1 4
|
||||
33 4 2 5
|
||||
34 4 4 5
|
||||
35 4 8 5
|
||||
36 4 16 5
|
||||
37 4 32 5
|
||||
38 4 64 5
|
||||
39 4 128 5
|
||||
40 5 1 5
|
||||
41 5 2 6
|
||||
42 5 4 6
|
||||
43 5 8 6
|
||||
44 5 16 6
|
||||
45 5 32 6
|
||||
46 5 64 6
|
||||
47 5 128 6
|
||||
48 6 1 6
|
||||
49 6 2 7
|
||||
50 6 4 7
|
||||
51 6 8 7
|
||||
52 6 16 7
|
||||
53 6 32 7
|
||||
54 6 64 7
|
||||
55 6 128 7
|
||||
56 7 1 7
|
||||
57 7 2 8
|
||||
58 7 4 8
|
||||
59 7 8 8
|
||||
60 7 16 8
|
||||
61 7 32 8
|
||||
62 7 64 8
|
||||
63 7 128 8
|
||||
64 8 1 8
|
||||
65 8 2 9
|
||||
66 8 4 9
|
||||
|
||||
test bit_alloc, clearbits, bit_ffc, bit_ffs
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
test bit_set
|
||||
be: 1 0 1001001001001001001001001001001001001001001001001001001001001001001
|
||||
is: 1 0 1001001001001001001001001001001001001001001001001001001001001001001
|
||||
|
||||
test bit_clear
|
||||
be: 0 3 0001000001000001000001000001000001000001000001000001000001000001000
|
||||
is: 0 3 0001000001000001000001000001000001000001000001000001000001000001000
|
||||
|
||||
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
|
||||
32 0
|
||||
33 2
|
||||
34 0
|
||||
35 0
|
||||
36 0
|
||||
37 0
|
||||
38 0
|
||||
39 128
|
||||
40 0
|
||||
41 0
|
||||
42 0
|
||||
43 0
|
||||
44 0
|
||||
45 32
|
||||
46 0
|
||||
47 0
|
||||
48 0
|
||||
49 0
|
||||
50 0
|
||||
51 8
|
||||
52 0
|
||||
53 0
|
||||
54 0
|
||||
55 0
|
||||
56 0
|
||||
57 2
|
||||
58 0
|
||||
59 0
|
||||
60 0
|
||||
61 0
|
||||
62 0
|
||||
63 128
|
||||
64 0
|
||||
65 0
|
||||
66 0
|
||||
|
||||
test clearbits
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
test bit_nset and bit_nclear
|
||||
be: 0 1 0111111111111111111111111111111111111111111111111111111111111111110
|
||||
is: 0 1 0111111111111111111111111111111111111111111111111111111111111111110
|
||||
be: 0 1 0100000000000000000000000000000000000000000000000000000000000000010
|
||||
is: 0 1 0100000000000000000000000000000000000000000000000000000000000000010
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
be: 66 0 1111111111111111111111111111111111111111111111111111111111111111110
|
||||
is: 66 0 1111111111111111111111111111111111111111111111111111111111111111110
|
||||
be: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
is: 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
first 1 bit should move right 1 position each line
|
||||
0 -1 0 1111111111111111111111111111111111111111111111111111111111111111111
|
||||
1 0 1 0111111111111111111111111111111111111111111111111111111111111111111
|
||||
2 0 2 0011111111111111111111111111111111111111111111111111111111111111111
|
||||
3 0 3 0001111111111111111111111111111111111111111111111111111111111111111
|
||||
4 0 4 0000111111111111111111111111111111111111111111111111111111111111111
|
||||
5 0 5 0000011111111111111111111111111111111111111111111111111111111111111
|
||||
6 0 6 0000001111111111111111111111111111111111111111111111111111111111111
|
||||
7 0 7 0000000111111111111111111111111111111111111111111111111111111111111
|
||||
8 0 8 0000000011111111111111111111111111111111111111111111111111111111111
|
||||
9 0 9 0000000001111111111111111111111111111111111111111111111111111111111
|
||||
10 0 10 0000000000111111111111111111111111111111111111111111111111111111111
|
||||
11 0 11 0000000000011111111111111111111111111111111111111111111111111111111
|
||||
12 0 12 0000000000001111111111111111111111111111111111111111111111111111111
|
||||
13 0 13 0000000000000111111111111111111111111111111111111111111111111111111
|
||||
14 0 14 0000000000000011111111111111111111111111111111111111111111111111111
|
||||
15 0 15 0000000000000001111111111111111111111111111111111111111111111111111
|
||||
16 0 16 0000000000000000111111111111111111111111111111111111111111111111111
|
||||
17 0 17 0000000000000000011111111111111111111111111111111111111111111111111
|
||||
18 0 18 0000000000000000001111111111111111111111111111111111111111111111111
|
||||
19 0 19 0000000000000000000111111111111111111111111111111111111111111111111
|
||||
20 0 20 0000000000000000000011111111111111111111111111111111111111111111111
|
||||
21 0 21 0000000000000000000001111111111111111111111111111111111111111111111
|
||||
22 0 22 0000000000000000000000111111111111111111111111111111111111111111111
|
||||
23 0 23 0000000000000000000000011111111111111111111111111111111111111111111
|
||||
24 0 24 0000000000000000000000001111111111111111111111111111111111111111111
|
||||
25 0 25 0000000000000000000000000111111111111111111111111111111111111111111
|
||||
26 0 26 0000000000000000000000000011111111111111111111111111111111111111111
|
||||
27 0 27 0000000000000000000000000001111111111111111111111111111111111111111
|
||||
28 0 28 0000000000000000000000000000111111111111111111111111111111111111111
|
||||
29 0 29 0000000000000000000000000000011111111111111111111111111111111111111
|
||||
30 0 30 0000000000000000000000000000001111111111111111111111111111111111111
|
||||
31 0 31 0000000000000000000000000000000111111111111111111111111111111111111
|
||||
32 0 32 0000000000000000000000000000000011111111111111111111111111111111111
|
||||
33 0 33 0000000000000000000000000000000001111111111111111111111111111111111
|
||||
34 0 34 0000000000000000000000000000000000111111111111111111111111111111111
|
||||
35 0 35 0000000000000000000000000000000000011111111111111111111111111111111
|
||||
36 0 36 0000000000000000000000000000000000001111111111111111111111111111111
|
||||
37 0 37 0000000000000000000000000000000000000111111111111111111111111111111
|
||||
38 0 38 0000000000000000000000000000000000000011111111111111111111111111111
|
||||
39 0 39 0000000000000000000000000000000000000001111111111111111111111111111
|
||||
40 0 40 0000000000000000000000000000000000000000111111111111111111111111111
|
||||
41 0 41 0000000000000000000000000000000000000000011111111111111111111111111
|
||||
42 0 42 0000000000000000000000000000000000000000001111111111111111111111111
|
||||
43 0 43 0000000000000000000000000000000000000000000111111111111111111111111
|
||||
44 0 44 0000000000000000000000000000000000000000000011111111111111111111111
|
||||
45 0 45 0000000000000000000000000000000000000000000001111111111111111111111
|
||||
46 0 46 0000000000000000000000000000000000000000000000111111111111111111111
|
||||
47 0 47 0000000000000000000000000000000000000000000000011111111111111111111
|
||||
48 0 48 0000000000000000000000000000000000000000000000001111111111111111111
|
||||
49 0 49 0000000000000000000000000000000000000000000000000111111111111111111
|
||||
50 0 50 0000000000000000000000000000000000000000000000000011111111111111111
|
||||
51 0 51 0000000000000000000000000000000000000000000000000001111111111111111
|
||||
52 0 52 0000000000000000000000000000000000000000000000000000111111111111111
|
||||
53 0 53 0000000000000000000000000000000000000000000000000000011111111111111
|
||||
54 0 54 0000000000000000000000000000000000000000000000000000001111111111111
|
||||
55 0 55 0000000000000000000000000000000000000000000000000000000111111111111
|
||||
56 0 56 0000000000000000000000000000000000000000000000000000000011111111111
|
||||
57 0 57 0000000000000000000000000000000000000000000000000000000001111111111
|
||||
58 0 58 0000000000000000000000000000000000000000000000000000000000111111111
|
||||
59 0 59 0000000000000000000000000000000000000000000000000000000000011111111
|
||||
60 0 60 0000000000000000000000000000000000000000000000000000000000001111111
|
||||
61 0 61 0000000000000000000000000000000000000000000000000000000000000111111
|
||||
62 0 62 0000000000000000000000000000000000000000000000000000000000000011111
|
||||
63 0 63 0000000000000000000000000000000000000000000000000000000000000001111
|
||||
64 0 64 0000000000000000000000000000000000000000000000000000000000000000111
|
||||
65 0 65 0000000000000000000000000000000000000000000000000000000000000000011
|
||||
66 0 66 0000000000000000000000000000000000000000000000000000000000000000001
|
||||
|
||||
first 0 bit should move right 1 position each line
|
||||
0 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
1 1 0 1000000000000000000000000000000000000000000000000000000000000000000
|
||||
2 2 0 1100000000000000000000000000000000000000000000000000000000000000000
|
||||
3 3 0 1110000000000000000000000000000000000000000000000000000000000000000
|
||||
4 4 0 1111000000000000000000000000000000000000000000000000000000000000000
|
||||
5 5 0 1111100000000000000000000000000000000000000000000000000000000000000
|
||||
6 6 0 1111110000000000000000000000000000000000000000000000000000000000000
|
||||
7 7 0 1111111000000000000000000000000000000000000000000000000000000000000
|
||||
8 8 0 1111111100000000000000000000000000000000000000000000000000000000000
|
||||
9 9 0 1111111110000000000000000000000000000000000000000000000000000000000
|
||||
10 10 0 1111111111000000000000000000000000000000000000000000000000000000000
|
||||
11 11 0 1111111111100000000000000000000000000000000000000000000000000000000
|
||||
12 12 0 1111111111110000000000000000000000000000000000000000000000000000000
|
||||
13 13 0 1111111111111000000000000000000000000000000000000000000000000000000
|
||||
14 14 0 1111111111111100000000000000000000000000000000000000000000000000000
|
||||
15 15 0 1111111111111110000000000000000000000000000000000000000000000000000
|
||||
16 16 0 1111111111111111000000000000000000000000000000000000000000000000000
|
||||
17 17 0 1111111111111111100000000000000000000000000000000000000000000000000
|
||||
18 18 0 1111111111111111110000000000000000000000000000000000000000000000000
|
||||
19 19 0 1111111111111111111000000000000000000000000000000000000000000000000
|
||||
20 20 0 1111111111111111111100000000000000000000000000000000000000000000000
|
||||
21 21 0 1111111111111111111110000000000000000000000000000000000000000000000
|
||||
22 22 0 1111111111111111111111000000000000000000000000000000000000000000000
|
||||
23 23 0 1111111111111111111111100000000000000000000000000000000000000000000
|
||||
24 24 0 1111111111111111111111110000000000000000000000000000000000000000000
|
||||
25 25 0 1111111111111111111111111000000000000000000000000000000000000000000
|
||||
26 26 0 1111111111111111111111111100000000000000000000000000000000000000000
|
||||
27 27 0 1111111111111111111111111110000000000000000000000000000000000000000
|
||||
28 28 0 1111111111111111111111111111000000000000000000000000000000000000000
|
||||
29 29 0 1111111111111111111111111111100000000000000000000000000000000000000
|
||||
30 30 0 1111111111111111111111111111110000000000000000000000000000000000000
|
||||
31 31 0 1111111111111111111111111111111000000000000000000000000000000000000
|
||||
32 32 0 1111111111111111111111111111111100000000000000000000000000000000000
|
||||
33 33 0 1111111111111111111111111111111110000000000000000000000000000000000
|
||||
34 34 0 1111111111111111111111111111111111000000000000000000000000000000000
|
||||
35 35 0 1111111111111111111111111111111111100000000000000000000000000000000
|
||||
36 36 0 1111111111111111111111111111111111110000000000000000000000000000000
|
||||
37 37 0 1111111111111111111111111111111111111000000000000000000000000000000
|
||||
38 38 0 1111111111111111111111111111111111111100000000000000000000000000000
|
||||
39 39 0 1111111111111111111111111111111111111110000000000000000000000000000
|
||||
40 40 0 1111111111111111111111111111111111111111000000000000000000000000000
|
||||
41 41 0 1111111111111111111111111111111111111111100000000000000000000000000
|
||||
42 42 0 1111111111111111111111111111111111111111110000000000000000000000000
|
||||
43 43 0 1111111111111111111111111111111111111111111000000000000000000000000
|
||||
44 44 0 1111111111111111111111111111111111111111111100000000000000000000000
|
||||
45 45 0 1111111111111111111111111111111111111111111110000000000000000000000
|
||||
46 46 0 1111111111111111111111111111111111111111111111000000000000000000000
|
||||
47 47 0 1111111111111111111111111111111111111111111111100000000000000000000
|
||||
48 48 0 1111111111111111111111111111111111111111111111110000000000000000000
|
||||
49 49 0 1111111111111111111111111111111111111111111111111000000000000000000
|
||||
50 50 0 1111111111111111111111111111111111111111111111111100000000000000000
|
||||
51 51 0 1111111111111111111111111111111111111111111111111110000000000000000
|
||||
52 52 0 1111111111111111111111111111111111111111111111111111000000000000000
|
||||
53 53 0 1111111111111111111111111111111111111111111111111111100000000000000
|
||||
54 54 0 1111111111111111111111111111111111111111111111111111110000000000000
|
||||
55 55 0 1111111111111111111111111111111111111111111111111111111000000000000
|
||||
56 56 0 1111111111111111111111111111111111111111111111111111111100000000000
|
||||
57 57 0 1111111111111111111111111111111111111111111111111111111110000000000
|
||||
58 58 0 1111111111111111111111111111111111111111111111111111111111000000000
|
||||
59 59 0 1111111111111111111111111111111111111111111111111111111111100000000
|
||||
60 60 0 1111111111111111111111111111111111111111111111111111111111110000000
|
||||
61 61 0 1111111111111111111111111111111111111111111111111111111111111000000
|
||||
62 62 0 1111111111111111111111111111111111111111111111111111111111111100000
|
||||
63 63 0 1111111111111111111111111111111111111111111111111111111111111110000
|
||||
64 64 0 1111111111111111111111111111111111111111111111111111111111111111000
|
||||
65 65 0 1111111111111111111111111111111111111111111111111111111111111111100
|
||||
66 66 0 1111111111111111111111111111111111111111111111111111111111111111110
|
||||
|
||||
first 0 bit should move left 1 position each line
|
||||
0 -1 0 1111111111111111111111111111111111111111111111111111111111111111111
|
||||
1 66 0 1111111111111111111111111111111111111111111111111111111111111111110
|
||||
2 65 0 1111111111111111111111111111111111111111111111111111111111111111100
|
||||
3 64 0 1111111111111111111111111111111111111111111111111111111111111111000
|
||||
4 63 0 1111111111111111111111111111111111111111111111111111111111111110000
|
||||
5 62 0 1111111111111111111111111111111111111111111111111111111111111100000
|
||||
6 61 0 1111111111111111111111111111111111111111111111111111111111111000000
|
||||
7 60 0 1111111111111111111111111111111111111111111111111111111111110000000
|
||||
8 59 0 1111111111111111111111111111111111111111111111111111111111100000000
|
||||
9 58 0 1111111111111111111111111111111111111111111111111111111111000000000
|
||||
10 57 0 1111111111111111111111111111111111111111111111111111111110000000000
|
||||
11 56 0 1111111111111111111111111111111111111111111111111111111100000000000
|
||||
12 55 0 1111111111111111111111111111111111111111111111111111111000000000000
|
||||
13 54 0 1111111111111111111111111111111111111111111111111111110000000000000
|
||||
14 53 0 1111111111111111111111111111111111111111111111111111100000000000000
|
||||
15 52 0 1111111111111111111111111111111111111111111111111111000000000000000
|
||||
16 51 0 1111111111111111111111111111111111111111111111111110000000000000000
|
||||
17 50 0 1111111111111111111111111111111111111111111111111100000000000000000
|
||||
18 49 0 1111111111111111111111111111111111111111111111111000000000000000000
|
||||
19 48 0 1111111111111111111111111111111111111111111111110000000000000000000
|
||||
20 47 0 1111111111111111111111111111111111111111111111100000000000000000000
|
||||
21 46 0 1111111111111111111111111111111111111111111111000000000000000000000
|
||||
22 45 0 1111111111111111111111111111111111111111111110000000000000000000000
|
||||
23 44 0 1111111111111111111111111111111111111111111100000000000000000000000
|
||||
24 43 0 1111111111111111111111111111111111111111111000000000000000000000000
|
||||
25 42 0 1111111111111111111111111111111111111111110000000000000000000000000
|
||||
26 41 0 1111111111111111111111111111111111111111100000000000000000000000000
|
||||
27 40 0 1111111111111111111111111111111111111111000000000000000000000000000
|
||||
28 39 0 1111111111111111111111111111111111111110000000000000000000000000000
|
||||
29 38 0 1111111111111111111111111111111111111100000000000000000000000000000
|
||||
30 37 0 1111111111111111111111111111111111111000000000000000000000000000000
|
||||
31 36 0 1111111111111111111111111111111111110000000000000000000000000000000
|
||||
32 35 0 1111111111111111111111111111111111100000000000000000000000000000000
|
||||
33 34 0 1111111111111111111111111111111111000000000000000000000000000000000
|
||||
34 33 0 1111111111111111111111111111111110000000000000000000000000000000000
|
||||
35 32 0 1111111111111111111111111111111100000000000000000000000000000000000
|
||||
36 31 0 1111111111111111111111111111111000000000000000000000000000000000000
|
||||
37 30 0 1111111111111111111111111111110000000000000000000000000000000000000
|
||||
38 29 0 1111111111111111111111111111100000000000000000000000000000000000000
|
||||
39 28 0 1111111111111111111111111111000000000000000000000000000000000000000
|
||||
40 27 0 1111111111111111111111111110000000000000000000000000000000000000000
|
||||
41 26 0 1111111111111111111111111100000000000000000000000000000000000000000
|
||||
42 25 0 1111111111111111111111111000000000000000000000000000000000000000000
|
||||
43 24 0 1111111111111111111111110000000000000000000000000000000000000000000
|
||||
44 23 0 1111111111111111111111100000000000000000000000000000000000000000000
|
||||
45 22 0 1111111111111111111111000000000000000000000000000000000000000000000
|
||||
46 21 0 1111111111111111111110000000000000000000000000000000000000000000000
|
||||
47 20 0 1111111111111111111100000000000000000000000000000000000000000000000
|
||||
48 19 0 1111111111111111111000000000000000000000000000000000000000000000000
|
||||
49 18 0 1111111111111111110000000000000000000000000000000000000000000000000
|
||||
50 17 0 1111111111111111100000000000000000000000000000000000000000000000000
|
||||
51 16 0 1111111111111111000000000000000000000000000000000000000000000000000
|
||||
52 15 0 1111111111111110000000000000000000000000000000000000000000000000000
|
||||
53 14 0 1111111111111100000000000000000000000000000000000000000000000000000
|
||||
54 13 0 1111111111111000000000000000000000000000000000000000000000000000000
|
||||
55 12 0 1111111111110000000000000000000000000000000000000000000000000000000
|
||||
56 11 0 1111111111100000000000000000000000000000000000000000000000000000000
|
||||
57 10 0 1111111111000000000000000000000000000000000000000000000000000000000
|
||||
58 9 0 1111111110000000000000000000000000000000000000000000000000000000000
|
||||
59 8 0 1111111100000000000000000000000000000000000000000000000000000000000
|
||||
60 7 0 1111111000000000000000000000000000000000000000000000000000000000000
|
||||
61 6 0 1111110000000000000000000000000000000000000000000000000000000000000
|
||||
62 5 0 1111100000000000000000000000000000000000000000000000000000000000000
|
||||
63 4 0 1111000000000000000000000000000000000000000000000000000000000000000
|
||||
64 3 0 1110000000000000000000000000000000000000000000000000000000000000000
|
||||
65 2 0 1100000000000000000000000000000000000000000000000000000000000000000
|
||||
66 1 0 1000000000000000000000000000000000000000000000000000000000000000000
|
||||
|
||||
first 1 bit should move left 1 position each line
|
||||
0 0 -1 0000000000000000000000000000000000000000000000000000000000000000000
|
||||
1 0 66 0000000000000000000000000000000000000000000000000000000000000000001
|
||||
2 0 65 0000000000000000000000000000000000000000000000000000000000000000011
|
||||
3 0 64 0000000000000000000000000000000000000000000000000000000000000000111
|
||||
4 0 63 0000000000000000000000000000000000000000000000000000000000000001111
|
||||
5 0 62 0000000000000000000000000000000000000000000000000000000000000011111
|
||||
6 0 61 0000000000000000000000000000000000000000000000000000000000000111111
|
||||
7 0 60 0000000000000000000000000000000000000000000000000000000000001111111
|
||||
8 0 59 0000000000000000000000000000000000000000000000000000000000011111111
|
||||
9 0 58 0000000000000000000000000000000000000000000000000000000000111111111
|
||||
10 0 57 0000000000000000000000000000000000000000000000000000000001111111111
|
||||
11 0 56 0000000000000000000000000000000000000000000000000000000011111111111
|
||||
12 0 55 0000000000000000000000000000000000000000000000000000000111111111111
|
||||
13 0 54 0000000000000000000000000000000000000000000000000000001111111111111
|
||||
14 0 53 0000000000000000000000000000000000000000000000000000011111111111111
|
||||
15 0 52 0000000000000000000000000000000000000000000000000000111111111111111
|
||||
16 0 51 0000000000000000000000000000000000000000000000000001111111111111111
|
||||
17 0 50 0000000000000000000000000000000000000000000000000011111111111111111
|
||||
18 0 49 0000000000000000000000000000000000000000000000000111111111111111111
|
||||
19 0 48 0000000000000000000000000000000000000000000000001111111111111111111
|
||||
20 0 47 0000000000000000000000000000000000000000000000011111111111111111111
|
||||
21 0 46 0000000000000000000000000000000000000000000000111111111111111111111
|
||||
22 0 45 0000000000000000000000000000000000000000000001111111111111111111111
|
||||
23 0 44 0000000000000000000000000000000000000000000011111111111111111111111
|
||||
24 0 43 0000000000000000000000000000000000000000000111111111111111111111111
|
||||
25 0 42 0000000000000000000000000000000000000000001111111111111111111111111
|
||||
26 0 41 0000000000000000000000000000000000000000011111111111111111111111111
|
||||
27 0 40 0000000000000000000000000000000000000000111111111111111111111111111
|
||||
28 0 39 0000000000000000000000000000000000000001111111111111111111111111111
|
||||
29 0 38 0000000000000000000000000000000000000011111111111111111111111111111
|
||||
30 0 37 0000000000000000000000000000000000000111111111111111111111111111111
|
||||
31 0 36 0000000000000000000000000000000000001111111111111111111111111111111
|
||||
32 0 35 0000000000000000000000000000000000011111111111111111111111111111111
|
||||
33 0 34 0000000000000000000000000000000000111111111111111111111111111111111
|
||||
34 0 33 0000000000000000000000000000000001111111111111111111111111111111111
|
||||
35 0 32 0000000000000000000000000000000011111111111111111111111111111111111
|
||||
36 0 31 0000000000000000000000000000000111111111111111111111111111111111111
|
||||
37 0 30 0000000000000000000000000000001111111111111111111111111111111111111
|
||||
38 0 29 0000000000000000000000000000011111111111111111111111111111111111111
|
||||
39 0 28 0000000000000000000000000000111111111111111111111111111111111111111
|
||||
40 0 27 0000000000000000000000000001111111111111111111111111111111111111111
|
||||
41 0 26 0000000000000000000000000011111111111111111111111111111111111111111
|
||||
42 0 25 0000000000000000000000000111111111111111111111111111111111111111111
|
||||
43 0 24 0000000000000000000000001111111111111111111111111111111111111111111
|
||||
44 0 23 0000000000000000000000011111111111111111111111111111111111111111111
|
||||
45 0 22 0000000000000000000000111111111111111111111111111111111111111111111
|
||||
46 0 21 0000000000000000000001111111111111111111111111111111111111111111111
|
||||
47 0 20 0000000000000000000011111111111111111111111111111111111111111111111
|
||||
48 0 19 0000000000000000000111111111111111111111111111111111111111111111111
|
||||
49 0 18 0000000000000000001111111111111111111111111111111111111111111111111
|
||||
50 0 17 0000000000000000011111111111111111111111111111111111111111111111111
|
||||
51 0 16 0000000000000000111111111111111111111111111111111111111111111111111
|
||||
52 0 15 0000000000000001111111111111111111111111111111111111111111111111111
|
||||
53 0 14 0000000000000011111111111111111111111111111111111111111111111111111
|
||||
54 0 13 0000000000000111111111111111111111111111111111111111111111111111111
|
||||
55 0 12 0000000000001111111111111111111111111111111111111111111111111111111
|
||||
56 0 11 0000000000011111111111111111111111111111111111111111111111111111111
|
||||
57 0 10 0000000000111111111111111111111111111111111111111111111111111111111
|
||||
58 0 9 0000000001111111111111111111111111111111111111111111111111111111111
|
||||
59 0 8 0000000011111111111111111111111111111111111111111111111111111111111
|
||||
60 0 7 0000000111111111111111111111111111111111111111111111111111111111111
|
||||
61 0 6 0000001111111111111111111111111111111111111111111111111111111111111
|
||||
62 0 5 0000011111111111111111111111111111111111111111111111111111111111111
|
||||
63 0 4 0000111111111111111111111111111111111111111111111111111111111111111
|
||||
64 0 3 0001111111111111111111111111111111111111111111111111111111111111111
|
||||
65 0 2 0011111111111111111111111111111111111111111111111111111111111111111
|
||||
66 0 1 0111111111111111111111111111111111111111111111111111111111111111111
|
||||
|
||||
0 bit should move right 1 position each line
|
||||
0 0 1 0111111111111111111111111111111111111111111111111111111111111111111
|
||||
1 1 0 1011111111111111111111111111111111111111111111111111111111111111111
|
||||
2 2 0 1101111111111111111111111111111111111111111111111111111111111111111
|
||||
3 3 0 1110111111111111111111111111111111111111111111111111111111111111111
|
||||
4 4 0 1111011111111111111111111111111111111111111111111111111111111111111
|
||||
5 5 0 1111101111111111111111111111111111111111111111111111111111111111111
|
||||
6 6 0 1111110111111111111111111111111111111111111111111111111111111111111
|
||||
7 7 0 1111111011111111111111111111111111111111111111111111111111111111111
|
||||
8 8 0 1111111101111111111111111111111111111111111111111111111111111111111
|
||||
9 9 0 1111111110111111111111111111111111111111111111111111111111111111111
|
||||
10 10 0 1111111111011111111111111111111111111111111111111111111111111111111
|
||||
11 11 0 1111111111101111111111111111111111111111111111111111111111111111111
|
||||
12 12 0 1111111111110111111111111111111111111111111111111111111111111111111
|
||||
13 13 0 1111111111111011111111111111111111111111111111111111111111111111111
|
||||
14 14 0 1111111111111101111111111111111111111111111111111111111111111111111
|
||||
15 15 0 1111111111111110111111111111111111111111111111111111111111111111111
|
||||
16 16 0 1111111111111111011111111111111111111111111111111111111111111111111
|
||||
17 17 0 1111111111111111101111111111111111111111111111111111111111111111111
|
||||
18 18 0 1111111111111111110111111111111111111111111111111111111111111111111
|
||||
19 19 0 1111111111111111111011111111111111111111111111111111111111111111111
|
||||
20 20 0 1111111111111111111101111111111111111111111111111111111111111111111
|
||||
21 21 0 1111111111111111111110111111111111111111111111111111111111111111111
|
||||
22 22 0 1111111111111111111111011111111111111111111111111111111111111111111
|
||||
23 23 0 1111111111111111111111101111111111111111111111111111111111111111111
|
||||
24 24 0 1111111111111111111111110111111111111111111111111111111111111111111
|
||||
25 25 0 1111111111111111111111111011111111111111111111111111111111111111111
|
||||
26 26 0 1111111111111111111111111101111111111111111111111111111111111111111
|
||||
27 27 0 1111111111111111111111111110111111111111111111111111111111111111111
|
||||
28 28 0 1111111111111111111111111111011111111111111111111111111111111111111
|
||||
29 29 0 1111111111111111111111111111101111111111111111111111111111111111111
|
||||
30 30 0 1111111111111111111111111111110111111111111111111111111111111111111
|
||||
31 31 0 1111111111111111111111111111111011111111111111111111111111111111111
|
||||
32 32 0 1111111111111111111111111111111101111111111111111111111111111111111
|
||||
33 33 0 1111111111111111111111111111111110111111111111111111111111111111111
|
||||
34 34 0 1111111111111111111111111111111111011111111111111111111111111111111
|
||||
35 35 0 1111111111111111111111111111111111101111111111111111111111111111111
|
||||
36 36 0 1111111111111111111111111111111111110111111111111111111111111111111
|
||||
37 37 0 1111111111111111111111111111111111111011111111111111111111111111111
|
||||
38 38 0 1111111111111111111111111111111111111101111111111111111111111111111
|
||||
39 39 0 1111111111111111111111111111111111111110111111111111111111111111111
|
||||
40 40 0 1111111111111111111111111111111111111111011111111111111111111111111
|
||||
41 41 0 1111111111111111111111111111111111111111101111111111111111111111111
|
||||
42 42 0 1111111111111111111111111111111111111111110111111111111111111111111
|
||||
43 43 0 1111111111111111111111111111111111111111111011111111111111111111111
|
||||
44 44 0 1111111111111111111111111111111111111111111101111111111111111111111
|
||||
45 45 0 1111111111111111111111111111111111111111111110111111111111111111111
|
||||
46 46 0 1111111111111111111111111111111111111111111111011111111111111111111
|
||||
47 47 0 1111111111111111111111111111111111111111111111101111111111111111111
|
||||
48 48 0 1111111111111111111111111111111111111111111111110111111111111111111
|
||||
49 49 0 1111111111111111111111111111111111111111111111111011111111111111111
|
||||
50 50 0 1111111111111111111111111111111111111111111111111101111111111111111
|
||||
51 51 0 1111111111111111111111111111111111111111111111111110111111111111111
|
||||
52 52 0 1111111111111111111111111111111111111111111111111111011111111111111
|
||||
53 53 0 1111111111111111111111111111111111111111111111111111101111111111111
|
||||
54 54 0 1111111111111111111111111111111111111111111111111111110111111111111
|
||||
55 55 0 1111111111111111111111111111111111111111111111111111111011111111111
|
||||
56 56 0 1111111111111111111111111111111111111111111111111111111101111111111
|
||||
57 57 0 1111111111111111111111111111111111111111111111111111111110111111111
|
||||
58 58 0 1111111111111111111111111111111111111111111111111111111111011111111
|
||||
59 59 0 1111111111111111111111111111111111111111111111111111111111101111111
|
||||
60 60 0 1111111111111111111111111111111111111111111111111111111111110111111
|
||||
61 61 0 1111111111111111111111111111111111111111111111111111111111111011111
|
||||
62 62 0 1111111111111111111111111111111111111111111111111111111111111101111
|
||||
63 63 0 1111111111111111111111111111111111111111111111111111111111111110111
|
||||
64 64 0 1111111111111111111111111111111111111111111111111111111111111111011
|
||||
65 65 0 1111111111111111111111111111111111111111111111111111111111111111101
|
||||
66 66 0 1111111111111111111111111111111111111111111111111111111111111111110
|
||||
|
||||
1 bit should move right 1 position each line
|
||||
0 1 0 1000000000000000000000000000000000000000000000000000000000000000000
|
||||
1 0 1 0100000000000000000000000000000000000000000000000000000000000000000
|
||||
2 0 2 0010000000000000000000000000000000000000000000000000000000000000000
|
||||
3 0 3 0001000000000000000000000000000000000000000000000000000000000000000
|
||||
4 0 4 0000100000000000000000000000000000000000000000000000000000000000000
|
||||
5 0 5 0000010000000000000000000000000000000000000000000000000000000000000
|
||||
6 0 6 0000001000000000000000000000000000000000000000000000000000000000000
|
||||
7 0 7 0000000100000000000000000000000000000000000000000000000000000000000
|
||||
8 0 8 0000000010000000000000000000000000000000000000000000000000000000000
|
||||
9 0 9 0000000001000000000000000000000000000000000000000000000000000000000
|
||||
10 0 10 0000000000100000000000000000000000000000000000000000000000000000000
|
||||
11 0 11 0000000000010000000000000000000000000000000000000000000000000000000
|
||||
12 0 12 0000000000001000000000000000000000000000000000000000000000000000000
|
||||
13 0 13 0000000000000100000000000000000000000000000000000000000000000000000
|
||||
14 0 14 0000000000000010000000000000000000000000000000000000000000000000000
|
||||
15 0 15 0000000000000001000000000000000000000000000000000000000000000000000
|
||||
16 0 16 0000000000000000100000000000000000000000000000000000000000000000000
|
||||
17 0 17 0000000000000000010000000000000000000000000000000000000000000000000
|
||||
18 0 18 0000000000000000001000000000000000000000000000000000000000000000000
|
||||
19 0 19 0000000000000000000100000000000000000000000000000000000000000000000
|
||||
20 0 20 0000000000000000000010000000000000000000000000000000000000000000000
|
||||
21 0 21 0000000000000000000001000000000000000000000000000000000000000000000
|
||||
22 0 22 0000000000000000000000100000000000000000000000000000000000000000000
|
||||
23 0 23 0000000000000000000000010000000000000000000000000000000000000000000
|
||||
24 0 24 0000000000000000000000001000000000000000000000000000000000000000000
|
||||
25 0 25 0000000000000000000000000100000000000000000000000000000000000000000
|
||||
26 0 26 0000000000000000000000000010000000000000000000000000000000000000000
|
||||
27 0 27 0000000000000000000000000001000000000000000000000000000000000000000
|
||||
28 0 28 0000000000000000000000000000100000000000000000000000000000000000000
|
||||
29 0 29 0000000000000000000000000000010000000000000000000000000000000000000
|
||||
30 0 30 0000000000000000000000000000001000000000000000000000000000000000000
|
||||
31 0 31 0000000000000000000000000000000100000000000000000000000000000000000
|
||||
32 0 32 0000000000000000000000000000000010000000000000000000000000000000000
|
||||
33 0 33 0000000000000000000000000000000001000000000000000000000000000000000
|
||||
34 0 34 0000000000000000000000000000000000100000000000000000000000000000000
|
||||
35 0 35 0000000000000000000000000000000000010000000000000000000000000000000
|
||||
36 0 36 0000000000000000000000000000000000001000000000000000000000000000000
|
||||
37 0 37 0000000000000000000000000000000000000100000000000000000000000000000
|
||||
38 0 38 0000000000000000000000000000000000000010000000000000000000000000000
|
||||
39 0 39 0000000000000000000000000000000000000001000000000000000000000000000
|
||||
40 0 40 0000000000000000000000000000000000000000100000000000000000000000000
|
||||
41 0 41 0000000000000000000000000000000000000000010000000000000000000000000
|
||||
42 0 42 0000000000000000000000000000000000000000001000000000000000000000000
|
||||
43 0 43 0000000000000000000000000000000000000000000100000000000000000000000
|
||||
44 0 44 0000000000000000000000000000000000000000000010000000000000000000000
|
||||
45 0 45 0000000000000000000000000000000000000000000001000000000000000000000
|
||||
46 0 46 0000000000000000000000000000000000000000000000100000000000000000000
|
||||
47 0 47 0000000000000000000000000000000000000000000000010000000000000000000
|
||||
48 0 48 0000000000000000000000000000000000000000000000001000000000000000000
|
||||
49 0 49 0000000000000000000000000000000000000000000000000100000000000000000
|
||||
50 0 50 0000000000000000000000000000000000000000000000000010000000000000000
|
||||
51 0 51 0000000000000000000000000000000000000000000000000001000000000000000
|
||||
52 0 52 0000000000000000000000000000000000000000000000000000100000000000000
|
||||
53 0 53 0000000000000000000000000000000000000000000000000000010000000000000
|
||||
54 0 54 0000000000000000000000000000000000000000000000000000001000000000000
|
||||
55 0 55 0000000000000000000000000000000000000000000000000000000100000000000
|
||||
56 0 56 0000000000000000000000000000000000000000000000000000000010000000000
|
||||
57 0 57 0000000000000000000000000000000000000000000000000000000001000000000
|
||||
58 0 58 0000000000000000000000000000000000000000000000000000000000100000000
|
||||
59 0 59 0000000000000000000000000000000000000000000000000000000000010000000
|
||||
60 0 60 0000000000000000000000000000000000000000000000000000000000001000000
|
||||
61 0 61 0000000000000000000000000000000000000000000000000000000000000100000
|
||||
62 0 62 0000000000000000000000000000000000000000000000000000000000000010000
|
||||
63 0 63 0000000000000000000000000000000000000000000000000000000000000001000
|
||||
64 0 64 0000000000000000000000000000000000000000000000000000000000000000100
|
||||
65 0 65 0000000000000000000000000000000000000000000000000000000000000000010
|
||||
66 0 66 0000000000000000000000000000000000000000000000000000000000000000001
|
|
@ -0,0 +1,111 @@
|
|||
Testing with TEST_LENGTH = 8
|
||||
|
||||
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
|
||||
|
||||
test bit_alloc, clearbits, bit_ffc, bit_ffs
|
||||
be: 0 -1 00000000
|
||||
is: 0 -1 00000000
|
||||
|
||||
test bit_set
|
||||
be: 1 0 10010010
|
||||
is: 1 0 10010010
|
||||
|
||||
test bit_clear
|
||||
be: 0 3 00010000
|
||||
is: 0 3 00010000
|
||||
|
||||
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
|
||||
|
||||
test clearbits
|
||||
be: 0 -1 00000000
|
||||
is: 0 -1 00000000
|
||||
|
||||
test bit_nset and bit_nclear
|
||||
be: 0 1 01111110
|
||||
is: 0 1 01111110
|
||||
be: 0 1 01000010
|
||||
is: 0 1 01000010
|
||||
be: 0 -1 00000000
|
||||
is: 0 -1 00000000
|
||||
be: 7 0 11111110
|
||||
is: 7 0 11111110
|
||||
be: 0 -1 00000000
|
||||
is: 0 -1 00000000
|
||||
|
||||
first 1 bit should move right 1 position each line
|
||||
0 -1 0 11111111
|
||||
1 0 1 01111111
|
||||
2 0 2 00111111
|
||||
3 0 3 00011111
|
||||
4 0 4 00001111
|
||||
5 0 5 00000111
|
||||
6 0 6 00000011
|
||||
7 0 7 00000001
|
||||
|
||||
first 0 bit should move right 1 position each line
|
||||
0 0 -1 00000000
|
||||
1 1 0 10000000
|
||||
2 2 0 11000000
|
||||
3 3 0 11100000
|
||||
4 4 0 11110000
|
||||
5 5 0 11111000
|
||||
6 6 0 11111100
|
||||
7 7 0 11111110
|
||||
|
||||
first 0 bit should move left 1 position each line
|
||||
0 -1 0 11111111
|
||||
1 7 0 11111110
|
||||
2 6 0 11111100
|
||||
3 5 0 11111000
|
||||
4 4 0 11110000
|
||||
5 3 0 11100000
|
||||
6 2 0 11000000
|
||||
7 1 0 10000000
|
||||
|
||||
first 1 bit should move left 1 position each line
|
||||
0 0 -1 00000000
|
||||
1 0 7 00000001
|
||||
2 0 6 00000011
|
||||
3 0 5 00000111
|
||||
4 0 4 00001111
|
||||
5 0 3 00011111
|
||||
6 0 2 00111111
|
||||
7 0 1 01111111
|
||||
|
||||
0 bit should move right 1 position each line
|
||||
0 0 1 01111111
|
||||
1 1 0 10111111
|
||||
2 2 0 11011111
|
||||
3 3 0 11101111
|
||||
4 4 0 11110111
|
||||
5 5 0 11111011
|
||||
6 6 0 11111101
|
||||
7 7 0 11111110
|
||||
|
||||
1 bit should move right 1 position each line
|
||||
0 1 0 10000000
|
||||
1 0 1 01000000
|
||||
2 0 2 00100000
|
||||
3 0 3 00010000
|
||||
4 0 4 00001000
|
||||
5 0 5 00000100
|
||||
6 0 6 00000010
|
||||
7 0 7 00000001
|
|
@ -0,0 +1,11 @@
|
|||
# $NetBSD: Makefile,v 1.1 2010/07/17 19:26:27 jmmv Exp $
|
||||
|
||||
NOMAN= # defined
|
||||
|
||||
.include <bsd.own.mk>
|
||||
|
||||
TESTSDIR= ${TESTSBASE}/include/sys
|
||||
|
||||
TESTS_C= t_bootblock
|
||||
|
||||
.include <bsd.test.mk>
|
|
@ -0,0 +1,73 @@
|
|||
/* $NetBSD: t_bootblock.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, 2008, 2010 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||||
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__COPYRIGHT("@(#) Copyright (c) 2008, 2010\
|
||||
The NetBSD Foundation, inc. All rights reserved.");
|
||||
__RCSID("$NetBSD: t_bootblock.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $");
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/bootblock.h>
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <atf-c.h>
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(mbr_sector);
|
||||
ATF_TC_BODY(mbr_sector, tc)
|
||||
{
|
||||
ATF_CHECK_EQ(512, sizeof(struct mbr_sector));
|
||||
|
||||
ATF_CHECK_EQ(MBR_BPB_OFFSET, offsetof(struct mbr_sector, mbr_bpb));
|
||||
ATF_CHECK_EQ(MBR_BS_OFFSET, offsetof(struct mbr_sector, mbr_bootsel));
|
||||
|
||||
ATF_CHECK_EQ(440, offsetof(struct mbr_sector, mbr_dsn));
|
||||
|
||||
ATF_CHECK_EQ(446, MBR_PART_OFFSET);
|
||||
ATF_CHECK_EQ(MBR_PART_OFFSET, offsetof(struct mbr_sector, mbr_parts));
|
||||
|
||||
ATF_CHECK_EQ(510, MBR_MAGIC_OFFSET);
|
||||
ATF_CHECK_EQ(MBR_MAGIC_OFFSET, offsetof(struct mbr_sector, mbr_magic));
|
||||
}
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(mbr_partition);
|
||||
ATF_TC_BODY(mbr_partition, tc)
|
||||
{
|
||||
ATF_CHECK_EQ(16, sizeof(struct mbr_partition));
|
||||
}
|
||||
|
||||
ATF_TP_ADD_TCS(tp)
|
||||
{
|
||||
|
||||
ATF_TP_ADD_TC(tp, mbr_sector);
|
||||
ATF_TP_ADD_TC(tp, mbr_partition);
|
||||
|
||||
return atf_no_error();
|
||||
}
|
|
@ -0,0 +1,305 @@
|
|||
/* $NetBSD: t_bitstring.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1993, 2008, 2010 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||||
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <assert.h>
|
||||
#include <bitstring.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <atf-c.h>
|
||||
|
||||
static void
|
||||
clearbits(bitstr_t *b, int n)
|
||||
{
|
||||
int i = bitstr_size(n);
|
||||
|
||||
while(i--)
|
||||
*(b + i) = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
printbits(FILE *file, bitstr_t *b, int n)
|
||||
{
|
||||
int i;
|
||||
int jc, js;
|
||||
|
||||
bit_ffc(b, n, &jc);
|
||||
bit_ffs(b, n, &js);
|
||||
|
||||
(void) fprintf(file, "%3d %3d ", jc, js);
|
||||
|
||||
for (i=0; i < n; i++) {
|
||||
(void) fprintf(file, "%c", (bit_test(b, i) ? '1' : '0'));
|
||||
}
|
||||
|
||||
(void) fprintf(file, "%c", '\n');
|
||||
}
|
||||
|
||||
static void
|
||||
calculate_data(FILE *file, const int test_length)
|
||||
{
|
||||
int b, i;
|
||||
bitstr_t *bs;
|
||||
bitstr_t bit_decl(bss, 37); /* Mostly a random number. */
|
||||
|
||||
assert(test_length >= 4);
|
||||
|
||||
(void) fprintf(file, "Testing with TEST_LENGTH = %d\n\n", test_length);
|
||||
|
||||
(void) fprintf(file, "test _bit_byte, _bit_mask, and bitstr_size\n");
|
||||
(void) fprintf(file, " i _bit_byte(i) _bit_mask(i) bitstr_size(i)\n");
|
||||
|
||||
for (i=0; i < test_length; i++) {
|
||||
(void) fprintf(file, "%3d%15d%15d%15d\n",
|
||||
i, _bit_byte(i), _bit_mask(i), bitstr_size(i));
|
||||
}
|
||||
|
||||
bs = bit_alloc(test_length);
|
||||
clearbits(bs, test_length);
|
||||
(void) fprintf(file, "\ntest bit_alloc, clearbits, bit_ffc, bit_ffs\n");
|
||||
(void) fprintf(file, "be: 0 -1 ");
|
||||
for (i=0; i < test_length; i++)
|
||||
(void) fprintf(file, "%c", '0');
|
||||
(void) fprintf(file, "\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
|
||||
(void) fprintf(file, "\ntest bit_set\n");
|
||||
for (i=0; i < test_length; i+=3)
|
||||
bit_set(bs, i);
|
||||
(void) fprintf(file, "be: 1 0 ");
|
||||
for (i=0; i < test_length; i++)
|
||||
(void) fprintf(file, "%c", *("100" + (i % 3)));
|
||||
(void) fprintf(file, "\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
|
||||
(void) fprintf(file, "\ntest bit_clear\n");
|
||||
for (i=0; i < test_length; i+=6)
|
||||
bit_clear(bs, i);
|
||||
(void) fprintf(file, "be: 0 3 ");
|
||||
for (i=0; i < test_length; i++)
|
||||
(void) fprintf(file, "%c", *("000100" + (i % 6)));
|
||||
(void) fprintf(file, "\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
|
||||
(void) fprintf(file, "\ntest bit_test using previous bitstring\n");
|
||||
(void) fprintf(file, " i bit_test(i)\n");
|
||||
for (i=0; i < test_length; i++)
|
||||
(void) fprintf(file, "%3d%15d\n", i, bit_test(bs, i));
|
||||
|
||||
clearbits(bs, test_length);
|
||||
(void) fprintf(file, "\ntest clearbits\n");
|
||||
(void) fprintf(file, "be: 0 -1 ");
|
||||
for (i=0; i < test_length; i++)
|
||||
(void) fprintf(file, "%c", '0');
|
||||
(void) fprintf(file, "\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
|
||||
(void) fprintf(file, "\ntest bit_nset and bit_nclear\n");
|
||||
bit_nset(bs, 1, test_length - 2);
|
||||
(void) fprintf(file, "be: 0 1 0");
|
||||
for (i=0; i < test_length - 2; i++)
|
||||
(void) fprintf(file, "%c", '1');
|
||||
(void) fprintf(file, "0\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
|
||||
bit_nclear(bs, 2, test_length - 3);
|
||||
(void) fprintf(file, "be: 0 1 01");
|
||||
for (i=0; i < test_length - 4; i++)
|
||||
(void) fprintf(file, "%c", '0');
|
||||
(void) fprintf(file, "10\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
|
||||
bit_nclear(bs, 0, test_length - 1);
|
||||
(void) fprintf(file, "be: 0 -1 ");
|
||||
for (i=0; i < test_length; i++)
|
||||
(void) fprintf(file, "%c", '0');
|
||||
(void) fprintf(file, "\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
bit_nset(bs, 0, test_length - 2);
|
||||
(void) fprintf(file, "be: %3d 0 ",test_length - 1);
|
||||
for (i=0; i < test_length - 1; i++)
|
||||
(void) fprintf(file, "%c", '1');
|
||||
fprintf(file, "%c", '0');
|
||||
(void) fprintf(file, "\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
bit_nclear(bs, 0, test_length - 1);
|
||||
(void) fprintf(file, "be: 0 -1 ");
|
||||
for (i=0; i < test_length; i++)
|
||||
(void) fprintf(file, "%c", '0');
|
||||
(void) fprintf(file, "\nis: ");
|
||||
printbits(file, bs, test_length);
|
||||
|
||||
(void) fprintf(file, "\n");
|
||||
(void) fprintf(file, "first 1 bit should move right 1 position each line\n");
|
||||
for (i=0; i < test_length; i++) {
|
||||
bit_nclear(bs, 0, test_length - 1);
|
||||
bit_nset(bs, i, test_length - 1);
|
||||
(void) fprintf(file, "%3d ", i); printbits(file, bs, test_length);
|
||||
}
|
||||
|
||||
(void) fprintf(file, "\n");
|
||||
(void) fprintf(file, "first 0 bit should move right 1 position each line\n");
|
||||
for (i=0; i < test_length; i++) {
|
||||
bit_nset(bs, 0, test_length - 1);
|
||||
bit_nclear(bs, i, test_length - 1);
|
||||
(void) fprintf(file, "%3d ", i); printbits(file, bs, test_length);
|
||||
}
|
||||
|
||||
(void) fprintf(file, "\n");
|
||||
(void) fprintf(file, "first 0 bit should move left 1 position each line\n");
|
||||
for (i=0; i < test_length; i++) {
|
||||
bit_nclear(bs, 0, test_length - 1);
|
||||
bit_nset(bs, 0, test_length - 1 - i);
|
||||
(void) fprintf(file, "%3d ", i); printbits(file, bs, test_length);
|
||||
}
|
||||
|
||||
(void) fprintf(file, "\n");
|
||||
(void) fprintf(file, "first 1 bit should move left 1 position each line\n");
|
||||
for (i=0; i < test_length; i++) {
|
||||
bit_nset(bs, 0, test_length - 1);
|
||||
bit_nclear(bs, 0, test_length - 1 - i);
|
||||
(void) fprintf(file, "%3d ", i); printbits(file, bs, test_length);
|
||||
}
|
||||
|
||||
(void) fprintf(file, "\n");
|
||||
(void) fprintf(file, "0 bit should move right 1 position each line\n");
|
||||
for (i=0; i < test_length; i++) {
|
||||
bit_nset(bs, 0, test_length - 1);
|
||||
bit_nclear(bs, i, i);
|
||||
(void) fprintf(file, "%3d ", i); printbits(file, bs, test_length);
|
||||
}
|
||||
|
||||
(void) fprintf(file, "\n");
|
||||
(void) fprintf(file, "1 bit should move right 1 position each line\n");
|
||||
for (i=0; i < test_length; i++) {
|
||||
bit_nclear(bs, 0, test_length - 1);
|
||||
bit_nset(bs, i, i);
|
||||
(void) fprintf(file, "%3d ", i); printbits(file, bs, test_length);
|
||||
}
|
||||
|
||||
(void) free(bs);
|
||||
}
|
||||
|
||||
void
|
||||
one_check(const atf_tc_t *tc, const int test_length)
|
||||
{
|
||||
FILE *out;
|
||||
char command[1024];
|
||||
|
||||
ATF_REQUIRE((out = fopen("out", "w")) != NULL);
|
||||
calculate_data(out, test_length);
|
||||
fclose(out);
|
||||
|
||||
/* XXX The following is a huge hack that was added to simplify the
|
||||
* conversion of these tests from src/regress/ to src/tests/. The
|
||||
* tests in this file should be checking their own results, without
|
||||
* having to resort to external data files. */
|
||||
snprintf(command, sizeof(command), "diff -u %s/d_bitstring_%d.out out",
|
||||
atf_tc_get_config_var(tc, "srcdir"), test_length);
|
||||
if (system(command) != EXIT_SUCCESS)
|
||||
atf_tc_fail("Test failed; see output for details");
|
||||
}
|
||||
|
||||
ATF_TC(bits_8);
|
||||
ATF_TC_HEAD(bits_8, tc)
|
||||
{
|
||||
atf_tc_set_md_var(tc, "descr", "Checks 8-bit long bitstrings");
|
||||
atf_tc_set_md_var(tc, "use.fs", "true");
|
||||
}
|
||||
ATF_TC_BODY(bits_8, tc)
|
||||
{
|
||||
one_check(tc, 8);
|
||||
}
|
||||
|
||||
ATF_TC(bits_27);
|
||||
ATF_TC_HEAD(bits_27, tc)
|
||||
{
|
||||
atf_tc_set_md_var(tc, "descr", "Checks 27-bit long bitstrings");
|
||||
atf_tc_set_md_var(tc, "use.fs", "true");
|
||||
}
|
||||
ATF_TC_BODY(bits_27, tc)
|
||||
{
|
||||
one_check(tc, 27);
|
||||
}
|
||||
|
||||
ATF_TC(bits_32);
|
||||
ATF_TC_HEAD(bits_32, tc)
|
||||
{
|
||||
atf_tc_set_md_var(tc, "descr", "Checks 32-bit long bitstrings");
|
||||
atf_tc_set_md_var(tc, "use.fs", "true");
|
||||
}
|
||||
ATF_TC_BODY(bits_32, tc)
|
||||
{
|
||||
one_check(tc, 32);
|
||||
}
|
||||
|
||||
ATF_TC(bits_49);
|
||||
ATF_TC_HEAD(bits_49, tc)
|
||||
{
|
||||
atf_tc_set_md_var(tc, "descr", "Checks 49-bit long bitstrings");
|
||||
atf_tc_set_md_var(tc, "use.fs", "true");
|
||||
}
|
||||
ATF_TC_BODY(bits_49, tc)
|
||||
{
|
||||
one_check(tc, 49);
|
||||
}
|
||||
|
||||
ATF_TC(bits_64);
|
||||
ATF_TC_HEAD(bits_64, tc)
|
||||
{
|
||||
atf_tc_set_md_var(tc, "descr", "Checks 64-bit long bitstrings");
|
||||
atf_tc_set_md_var(tc, "use.fs", "true");
|
||||
}
|
||||
ATF_TC_BODY(bits_64, tc)
|
||||
{
|
||||
one_check(tc, 64);
|
||||
}
|
||||
|
||||
ATF_TC(bits_67);
|
||||
ATF_TC_HEAD(bits_67, tc)
|
||||
{
|
||||
atf_tc_set_md_var(tc, "descr", "Checks 67-bit long bitstrings");
|
||||
atf_tc_set_md_var(tc, "use.fs", "true");
|
||||
}
|
||||
ATF_TC_BODY(bits_67, tc)
|
||||
{
|
||||
one_check(tc, 67);
|
||||
}
|
||||
|
||||
ATF_TP_ADD_TCS(tp)
|
||||
{
|
||||
|
||||
ATF_TP_ADD_TC(tp, bits_8);
|
||||
ATF_TP_ADD_TC(tp, bits_27);
|
||||
ATF_TP_ADD_TC(tp, bits_32);
|
||||
ATF_TP_ADD_TC(tp, bits_49);
|
||||
ATF_TP_ADD_TC(tp, bits_64);
|
||||
ATF_TP_ADD_TC(tp, bits_67);
|
||||
|
||||
return atf_no_error();
|
||||
}
|
|
@ -0,0 +1,250 @@
|
|||
/* $NetBSD: t_inttypes.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||||
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <atf-c.h>
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(fmt_io);
|
||||
ATF_TC_BODY(fmt_io, tc)
|
||||
{
|
||||
char buf[64];
|
||||
|
||||
int8_t i8;
|
||||
int16_t i16;
|
||||
int32_t i32;
|
||||
int64_t i64;
|
||||
int_least8_t il8;
|
||||
int_least16_t il16;
|
||||
int_least32_t il32;
|
||||
int_least64_t il64;
|
||||
int_fast8_t if8;
|
||||
int_fast16_t if16;
|
||||
int_fast32_t if32;
|
||||
int_fast64_t if64;
|
||||
intmax_t im;
|
||||
intptr_t ip;
|
||||
uint8_t ui8;
|
||||
uint16_t ui16;
|
||||
uint32_t ui32;
|
||||
uint64_t ui64;
|
||||
uint_least8_t uil8;
|
||||
uint_least16_t uil16;
|
||||
uint_least32_t uil32;
|
||||
uint_least64_t uil64;
|
||||
uint_fast8_t uif8;
|
||||
uint_fast16_t uif16;
|
||||
uint_fast32_t uif32;
|
||||
uint_fast64_t uif64;
|
||||
uintmax_t uim;
|
||||
uintptr_t uip;
|
||||
|
||||
#define PRINT(fmt, var) \
|
||||
ATF_CHECK(snprintf(buf, sizeof(buf), "%" fmt, var) > 0)
|
||||
#define SCAN(fmt, var) \
|
||||
ATF_CHECK(sscanf(buf, "%" fmt, &var) > 0)
|
||||
|
||||
PRINT(PRId8, i8);
|
||||
PRINT(PRId16, i16);
|
||||
PRINT(PRId32, i32);
|
||||
PRINT(PRId64, i64);
|
||||
PRINT(PRIdLEAST8, il8);
|
||||
PRINT(PRIdLEAST16, il16);
|
||||
PRINT(PRIdLEAST32, il32);
|
||||
PRINT(PRIdLEAST64, il64);
|
||||
PRINT(PRIdFAST8, if8);
|
||||
PRINT(PRIdFAST16, if16);
|
||||
PRINT(PRIdFAST32, if32);
|
||||
PRINT(PRIdFAST64, if64);
|
||||
PRINT(PRIdMAX, im);
|
||||
PRINT(PRIdPTR, ip);
|
||||
|
||||
PRINT(PRIi8, i8);
|
||||
PRINT(PRIi16, i16);
|
||||
PRINT(PRIi32, i32);
|
||||
PRINT(PRIi64, i64);
|
||||
PRINT(PRIiLEAST8, il8);
|
||||
PRINT(PRIiLEAST16, il16);
|
||||
PRINT(PRIiLEAST32, il32);
|
||||
PRINT(PRIiLEAST64, il64);
|
||||
PRINT(PRIiFAST8, if8);
|
||||
PRINT(PRIiFAST16, if16);
|
||||
PRINT(PRIiFAST32, if32);
|
||||
PRINT(PRIiFAST64, if64);
|
||||
PRINT(PRIiMAX, im);
|
||||
PRINT(PRIiPTR, ip);
|
||||
|
||||
PRINT(PRIo8, ui8);
|
||||
PRINT(PRIo16, ui16);
|
||||
PRINT(PRIo32, ui32);
|
||||
PRINT(PRIo64, ui64);
|
||||
PRINT(PRIoLEAST8, uil8);
|
||||
PRINT(PRIoLEAST16, uil16);
|
||||
PRINT(PRIoLEAST32, uil32);
|
||||
PRINT(PRIoLEAST64, uil64);
|
||||
PRINT(PRIoFAST8, uif8);
|
||||
PRINT(PRIoFAST16, uif16);
|
||||
PRINT(PRIoFAST32, uif32);
|
||||
PRINT(PRIoFAST64, uif64);
|
||||
PRINT(PRIoMAX, uim);
|
||||
PRINT(PRIoPTR, uip);
|
||||
|
||||
PRINT(PRIu8, ui8);
|
||||
PRINT(PRIu16, ui16);
|
||||
PRINT(PRIu32, ui32);
|
||||
PRINT(PRIu64, ui64);
|
||||
PRINT(PRIuLEAST8, uil8);
|
||||
PRINT(PRIuLEAST16, uil16);
|
||||
PRINT(PRIuLEAST32, uil32);
|
||||
PRINT(PRIuLEAST64, uil64);
|
||||
PRINT(PRIuFAST8, uif8);
|
||||
PRINT(PRIuFAST16, uif16);
|
||||
PRINT(PRIuFAST32, uif32);
|
||||
PRINT(PRIuFAST64, uif64);
|
||||
PRINT(PRIuMAX, uim);
|
||||
PRINT(PRIuPTR, uip);
|
||||
|
||||
PRINT(PRIx8, ui8);
|
||||
PRINT(PRIx16, ui16);
|
||||
PRINT(PRIx32, ui32);
|
||||
PRINT(PRIx64, ui64);
|
||||
PRINT(PRIxLEAST8, uil8);
|
||||
PRINT(PRIxLEAST16, uil16);
|
||||
PRINT(PRIxLEAST32, uil32);
|
||||
PRINT(PRIxLEAST64, uil64);
|
||||
PRINT(PRIxFAST8, uif8);
|
||||
PRINT(PRIxFAST16, uif16);
|
||||
PRINT(PRIxFAST32, uif32);
|
||||
PRINT(PRIxFAST64, uif64);
|
||||
PRINT(PRIxMAX, uim);
|
||||
PRINT(PRIxPTR, uip);
|
||||
|
||||
PRINT(PRIX8, ui8);
|
||||
PRINT(PRIX16, ui16);
|
||||
PRINT(PRIX32, ui32);
|
||||
PRINT(PRIX64, ui64);
|
||||
PRINT(PRIXLEAST8, uil8);
|
||||
PRINT(PRIXLEAST16, uil16);
|
||||
PRINT(PRIXLEAST32, uil32);
|
||||
PRINT(PRIXLEAST64, uil64);
|
||||
PRINT(PRIXFAST8, uif8);
|
||||
PRINT(PRIXFAST16, uif16);
|
||||
PRINT(PRIXFAST32, uif32);
|
||||
PRINT(PRIXFAST64, uif64);
|
||||
PRINT(PRIXMAX, uim);
|
||||
PRINT(PRIXPTR, uip);
|
||||
|
||||
|
||||
SCAN(SCNd8, i8);
|
||||
SCAN(SCNd16, i16);
|
||||
SCAN(SCNd32, i32);
|
||||
SCAN(SCNd64, i64);
|
||||
SCAN(SCNdLEAST8, il8);
|
||||
SCAN(SCNdLEAST16, il16);
|
||||
SCAN(SCNdLEAST32, il32);
|
||||
SCAN(SCNdLEAST64, il64);
|
||||
SCAN(SCNdFAST8, if8);
|
||||
SCAN(SCNdFAST16, if16);
|
||||
SCAN(SCNdFAST32, if32);
|
||||
SCAN(SCNdFAST64, if64);
|
||||
SCAN(SCNdMAX, im);
|
||||
SCAN(SCNdPTR, ip);
|
||||
|
||||
SCAN(SCNi8, i8);
|
||||
SCAN(SCNi16, i16);
|
||||
SCAN(SCNi32, i32);
|
||||
SCAN(SCNi64, i64);
|
||||
SCAN(SCNiLEAST8, il8);
|
||||
SCAN(SCNiLEAST16, il16);
|
||||
SCAN(SCNiLEAST32, il32);
|
||||
SCAN(SCNiLEAST64, il64);
|
||||
SCAN(SCNiFAST8, if8);
|
||||
SCAN(SCNiFAST16, if16);
|
||||
SCAN(SCNiFAST32, if32);
|
||||
SCAN(SCNiFAST64, if64);
|
||||
SCAN(SCNiMAX, im);
|
||||
SCAN(SCNiPTR, ip);
|
||||
|
||||
SCAN(SCNo8, ui8);
|
||||
SCAN(SCNo16, ui16);
|
||||
SCAN(SCNo32, ui32);
|
||||
SCAN(SCNo64, ui64);
|
||||
SCAN(SCNoLEAST8, uil8);
|
||||
SCAN(SCNoLEAST16, uil16);
|
||||
SCAN(SCNoLEAST32, uil32);
|
||||
SCAN(SCNoLEAST64, uil64);
|
||||
SCAN(SCNoFAST8, uif8);
|
||||
SCAN(SCNoFAST16, uif16);
|
||||
SCAN(SCNoFAST32, uif32);
|
||||
SCAN(SCNoFAST64, uif64);
|
||||
SCAN(SCNoMAX, uim);
|
||||
SCAN(SCNoPTR, uip);
|
||||
|
||||
SCAN(SCNu8, ui8);
|
||||
SCAN(SCNu16, ui16);
|
||||
SCAN(SCNu32, ui32);
|
||||
SCAN(SCNu64, ui64);
|
||||
SCAN(SCNuLEAST8, uil8);
|
||||
SCAN(SCNuLEAST16, uil16);
|
||||
SCAN(SCNuLEAST32, uil32);
|
||||
SCAN(SCNuLEAST64, uil64);
|
||||
SCAN(SCNuFAST8, uif8);
|
||||
SCAN(SCNuFAST16, uif16);
|
||||
SCAN(SCNuFAST32, uif32);
|
||||
SCAN(SCNuFAST64, uif64);
|
||||
SCAN(SCNuMAX, uim);
|
||||
SCAN(SCNuPTR, uip);
|
||||
|
||||
SCAN(SCNx8, ui8);
|
||||
SCAN(SCNx16, ui16);
|
||||
SCAN(SCNx32, ui32);
|
||||
SCAN(SCNx64, ui64);
|
||||
SCAN(SCNxLEAST8, uil8);
|
||||
SCAN(SCNxLEAST16, uil16);
|
||||
SCAN(SCNxLEAST32, uil32);
|
||||
SCAN(SCNxLEAST64, uil64);
|
||||
SCAN(SCNxFAST8, uif8);
|
||||
SCAN(SCNxFAST16, uif16);
|
||||
SCAN(SCNxFAST32, uif32);
|
||||
SCAN(SCNxFAST64, uif64);
|
||||
SCAN(SCNxMAX, uim);
|
||||
SCAN(SCNxPTR, uip);
|
||||
|
||||
#undef SCAN
|
||||
#undef PRINT
|
||||
}
|
||||
|
||||
ATF_TP_ADD_TCS(tp)
|
||||
{
|
||||
|
||||
ATF_TP_ADD_TC(tp, fmt_io);
|
||||
|
||||
return atf_no_error();
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
/* $NetBSD: t_limits.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, 2010 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||||
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__COPYRIGHT("@(#) Copyright (c) 2008, 2010\
|
||||
The NetBSD Foundation, inc. All rights reserved.");
|
||||
__RCSID("$NetBSD: t_limits.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $");
|
||||
|
||||
#include <limits.h>
|
||||
|
||||
#include <atf-c.h>
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(char);
|
||||
ATF_TC_BODY(char, tc)
|
||||
{
|
||||
ATF_CHECK(CHAR_MIN < UCHAR_MAX);
|
||||
}
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(short);
|
||||
ATF_TC_BODY(short, tc)
|
||||
{
|
||||
ATF_CHECK(SHRT_MIN < USHRT_MAX);
|
||||
}
|
||||
|
||||
ATF_TP_ADD_TCS(tp)
|
||||
{
|
||||
|
||||
ATF_TP_ADD_TC(tp, char);
|
||||
ATF_TP_ADD_TC(tp, short);
|
||||
|
||||
return atf_no_error();
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
/* $NetBSD: t_stdint.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, 2010 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||||
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__COPYRIGHT("@(#) Copyright (c) 2008, 2010\
|
||||
The NetBSD Foundation, inc. All rights reserved.");
|
||||
__RCSID("$NetBSD: t_stdint.c,v 1.1 2010/07/17 19:26:27 jmmv Exp $");
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include <atf-c.h>
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(int8);
|
||||
ATF_TC_BODY(int8, tc)
|
||||
{
|
||||
ATF_CHECK(INT8_MIN < UINT8_MAX);
|
||||
}
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(int16);
|
||||
ATF_TC_BODY(int16, tc)
|
||||
{
|
||||
ATF_CHECK(INT16_MIN < UINT16_MAX);
|
||||
}
|
||||
|
||||
ATF_TP_ADD_TCS(tp)
|
||||
{
|
||||
|
||||
ATF_TP_ADD_TC(tp, int8);
|
||||
ATF_TP_ADD_TC(tp, int16);
|
||||
|
||||
return atf_no_error();
|
||||
}
|
Loading…
Reference in New Issue