]> gitweb.factorcode.org Git - factor.git/blob - core/test/math/bitops.factor
more sql changes
[factor.git] / core / test / math / bitops.factor
1 IN: temporary
2 USE: kernel
3 USE: math
4 USE: test
5 USE: sequences
6
7 [ -2 ] [ 1 bitnot ] unit-test
8 [ -2 ] [ 1 >bignum bitnot ] unit-test
9 [ -2 ] [ 1 >bignum bitnot ] unit-test
10 [ 0 ] [ 123 dup bitnot bitand ] unit-test
11 [ 0 ] [ 123 >bignum dup bitnot bitand ] unit-test
12 [ 0 ] [ 123 dup bitnot >bignum bitand ] unit-test
13 [ 0 ] [ 123 dup bitnot bitand >bignum ] unit-test
14 [ -1 ] [ 123 dup bitnot bitor ] unit-test
15 [ -1 ] [ 123 >bignum dup bitnot bitor ] unit-test
16 [ -1 ] [ 123 dup bitnot >bignum bitor ] unit-test
17 [ -1 ] [ 123 dup bitnot bitor >bignum ] unit-test
18 [ -1 ] [ 123 dup bitnot bitxor ] unit-test
19 [ -1 ] [ 123 >bignum dup bitnot bitxor ] unit-test
20 [ -1 ] [ 123 dup bitnot >bignum bitxor ] unit-test
21 [ -1 ] [ 123 dup bitnot bitxor >bignum ] unit-test
22 [ 4 ] [ 4 7 bitand ] unit-test
23
24 [ 256 ] [ 65536 -8 shift ] unit-test
25 [ 256 ] [ 65536 >bignum -8 shift ] unit-test
26 [ 256 ] [ 65536 -8 >bignum shift ] unit-test
27 [ 256 ] [ 65536 >bignum -8 >bignum shift ] unit-test
28 [ 4294967296 ] [ 1 16 shift 16 shift ] unit-test
29 [ 4294967296 ] [ 1 32 shift ] unit-test
30 [ 1267650600228229401496703205376 ] [ 1 100 shift ] unit-test
31
32 [ t ] [ 1 27 shift fixnum? ] unit-test
33
34 [ t ] [
35     t
36     [ 27 28 29 30 31 32 59 60 61 62 63 64 ]
37     [
38         1 over shift swap 1 >bignum swap shift = and
39     ] each
40 ] unit-test
41
42 [ t ] [
43     t
44     [ 27 28 29 30 31 32 59 60 61 62 63 64 ]
45     [
46         -1 over shift swap -1 >bignum swap shift = and
47     ] each
48 ] unit-test
49
50 [ 12 ] [ 11 4 align ] unit-test
51 [ 12 ] [ 12 4 align ] unit-test
52 [ 10 ] [ 10 2 align ] unit-test
53 [ 14 ] [ 13 2 align ] unit-test
54 [ 11 ] [ 11 1 align ] unit-test