summaryrefslogtreecommitdiff
path: root/regress/include/bitstring/good/32
diff options
context:
space:
mode:
Diffstat (limited to 'regress/include/bitstring/good/32')
-rw-r--r--regress/include/bitstring/good/32303
1 files changed, 303 insertions, 0 deletions
diff --git a/regress/include/bitstring/good/32 b/regress/include/bitstring/good/32
new file mode 100644
index 00000000000..2e1ca55d6e3
--- /dev/null
+++ b/regress/include/bitstring/good/32
@@ -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