Files
mercury/tests/hard_coded/bitwise_int32.exp
Zoltan Somogyi 4c528d429d Add <<u and >>u to library/{int,uint}*.m ...
... along with their unchecked equivalents. These differ from <<, >> and
their unchecked equivalents in that they take the shift amount as a uint,
instead of an int.

library/int.m:
library/int16.m:
library/int32.m:
library/int64.m:
library/int8.m:
library/uint.m:
library/uint16.m:
library/uint32.m:
library/uint64.m:
library/uint8.m:
    As above. The unchecked versions have only declarations, since
    these operations have been recognized as builtins for a while now.

NEWS:
    Document the new operations, and the recent change to recognize
    <<u and >>u as single tokens, and fix a typo in a recent addition.

configure.ac:
    Require the compiler to be sufficiently recent to be able to parse
    <<u and >>u as operators.

compiler/options.m:
    Provide a way for a later change to configure.ac to detect the presence
    of this change.

tests/hard_coded/bitwise_int.exp:
tests/hard_coded/bitwise_int.exp2:
tests/hard_coded/bitwise_int.m:
tests/hard_coded/bitwise_int16.exp:
tests/hard_coded/bitwise_int16.m:
tests/hard_coded/bitwise_int32.exp:
tests/hard_coded/bitwise_int32.m:
tests/hard_coded/bitwise_int64.exp:
tests/hard_coded/bitwise_int64.m:
tests/hard_coded/bitwise_int8.exp:
tests/hard_coded/bitwise_int8.m:
tests/hard_coded/bitwise_uint.exp:
tests/hard_coded/bitwise_uint.exp2:
tests/hard_coded/bitwise_uint.m:
tests/hard_coded/bitwise_uint16.exp:
tests/hard_coded/bitwise_uint16.m:
tests/hard_coded/bitwise_uint32.exp:
tests/hard_coded/bitwise_uint32.m:
tests/hard_coded/bitwise_uint64.exp:
tests/hard_coded/bitwise_uint64.m:
tests/hard_coded/bitwise_uint8.exp:
tests/hard_coded/bitwise_uint8.m:
    Check that <<u and >>u compute the same results as << and >> respectively.
2022-12-07 23:12:33 +11:00

3016 lines
75 KiB
Plaintext

*** Test unary operation '\' ***
\ 10000000000000000000000000000000 =
01111111111111111111111111111111
\ 11111111111111111000000000000000 =
00000000000000000111111111111111
\ 11111111111111111111111110000000 =
00000000000000000000000001111111
\ 00000000000000000000000000000000 =
11111111111111111111111111111111
\ 00000000000000000000000000000001 =
11111111111111111111111111111110
\ 00000000000000000000000000000010 =
11111111111111111111111111111101
\ 00000000000000000000000000001000 =
11111111111111111111111111110111
\ 00000000000000000000000000001010 =
11111111111111111111111111110101
\ 00000000000000000000000000010000 =
11111111111111111111111111101111
\ 00000000000000000000000000010000 =
11111111111111111111111111101111
\ 00000000000000000000000001111111 =
11111111111111111111111110000000
\ 00000000000000000111111111111111 =
11111111111111111000000000000000
\ 01111111111111111111111111111111 =
10000000000000000000000000000000
*** Test binary operation '/\' ***
10000000000000000000000000000000 /\
10000000000000000000000000000000 =
10000000000000000000000000000000
10000000000000000000000000000000 /\
11111111111111111000000000000000 =
10000000000000000000000000000000
10000000000000000000000000000000 /\
11111111111111111111111110000000 =
10000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000000001010 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000000000001111111 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
00000000000000000111111111111111 =
00000000000000000000000000000000
10000000000000000000000000000000 /\
01111111111111111111111111111111 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
10000000000000000000000000000000 =
10000000000000000000000000000000
11111111111111111000000000000000 /\
11111111111111111000000000000000 =
11111111111111111000000000000000
11111111111111111000000000000000 /\
11111111111111111111111110000000 =
11111111111111111000000000000000
11111111111111111000000000000000 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000000000000001010 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000000000001111111 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
00000000000000000111111111111111 =
00000000000000000000000000000000
11111111111111111000000000000000 /\
01111111111111111111111111111111 =
01111111111111111000000000000000
11111111111111111111111110000000 /\
10000000000000000000000000000000 =
10000000000000000000000000000000
11111111111111111111111110000000 /\
11111111111111111000000000000000 =
11111111111111111000000000000000
11111111111111111111111110000000 /\
11111111111111111111111110000000 =
11111111111111111111111110000000
11111111111111111111111110000000 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000000000000001010 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000000000001111111 =
00000000000000000000000000000000
11111111111111111111111110000000 /\
00000000000000000111111111111111 =
00000000000000000111111110000000
11111111111111111111111110000000 /\
01111111111111111111111111111111 =
01111111111111111111111110000000
00000000000000000000000000000000 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000000001010 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000000000001111111 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
00000000000000000111111111111111 =
00000000000000000000000000000000
00000000000000000000000000000000 /\
01111111111111111111111111111111 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
00000000000000000000000000000001 =
00000000000000000000000000000001
00000000000000000000000000000001 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
00000000000000000000000000001010 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000000001 /\
00000000000000000000000001111111 =
00000000000000000000000000000001
00000000000000000000000000000001 /\
00000000000000000111111111111111 =
00000000000000000000000000000001
00000000000000000000000000000001 /\
01111111111111111111111111111111 =
00000000000000000000000000000001
00000000000000000000000000000010 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
00000000000000000000000000000010 =
00000000000000000000000000000010
00000000000000000000000000000010 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
00000000000000000000000000001010 =
00000000000000000000000000000010
00000000000000000000000000000010 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000000010 /\
00000000000000000000000001111111 =
00000000000000000000000000000010
00000000000000000000000000000010 /\
00000000000000000111111111111111 =
00000000000000000000000000000010
00000000000000000000000000000010 /\
01111111111111111111111111111111 =
00000000000000000000000000000010
00000000000000000000000000001000 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
00000000000000000000000000001000 =
00000000000000000000000000001000
00000000000000000000000000001000 /\
00000000000000000000000000001010 =
00000000000000000000000000001000
00000000000000000000000000001000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000001000 /\
00000000000000000000000001111111 =
00000000000000000000000000001000
00000000000000000000000000001000 /\
00000000000000000111111111111111 =
00000000000000000000000000001000
00000000000000000000000000001000 /\
01111111111111111111111111111111 =
00000000000000000000000000001000
00000000000000000000000000001010 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000001010 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000000001010 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000000001010 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000001010 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
00000000000000000000000000001010 /\
00000000000000000000000000000010 =
00000000000000000000000000000010
00000000000000000000000000001010 /\
00000000000000000000000000001000 =
00000000000000000000000000001000
00000000000000000000000000001010 /\
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000000000000001010 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000001010 /\
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000001010 /\
00000000000000000000000001111111 =
00000000000000000000000000001010
00000000000000000000000000001010 /\
00000000000000000111111111111111 =
00000000000000000000000000001010
00000000000000000000000000001010 /\
01111111111111111111111111111111 =
00000000000000000000000000001010
00000000000000000000000000010000 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000001010 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
00000000000000000000000001111111 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
00000000000000000111111111111111 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
01111111111111111111111111111111 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000000001 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000000010 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000001000 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000001010 =
00000000000000000000000000000000
00000000000000000000000000010000 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
00000000000000000000000001111111 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
00000000000000000111111111111111 =
00000000000000000000000000010000
00000000000000000000000000010000 /\
01111111111111111111111111111111 =
00000000000000000000000000010000
00000000000000000000000001111111 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000001111111 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000000000001111111 /\
11111111111111111111111110000000 =
00000000000000000000000000000000
00000000000000000000000001111111 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000001111111 /\
00000000000000000000000000000001 =
00000000000000000000000000000001
00000000000000000000000001111111 /\
00000000000000000000000000000010 =
00000000000000000000000000000010
00000000000000000000000001111111 /\
00000000000000000000000000001000 =
00000000000000000000000000001000
00000000000000000000000001111111 /\
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000000000001111111 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000001111111 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000001111111 /\
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000001111111 /\
00000000000000000111111111111111 =
00000000000000000000000001111111
00000000000000000000000001111111 /\
01111111111111111111111111111111 =
00000000000000000000000001111111
00000000000000000111111111111111 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000111111111111111 /\
11111111111111111000000000000000 =
00000000000000000000000000000000
00000000000000000111111111111111 /\
11111111111111111111111110000000 =
00000000000000000111111110000000
00000000000000000111111111111111 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000111111111111111 /\
00000000000000000000000000000001 =
00000000000000000000000000000001
00000000000000000111111111111111 /\
00000000000000000000000000000010 =
00000000000000000000000000000010
00000000000000000111111111111111 /\
00000000000000000000000000001000 =
00000000000000000000000000001000
00000000000000000111111111111111 /\
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000111111111111111 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000111111111111111 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000111111111111111 /\
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000111111111111111 /\
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000111111111111111 /\
01111111111111111111111111111111 =
00000000000000000111111111111111
01111111111111111111111111111111 /\
10000000000000000000000000000000 =
00000000000000000000000000000000
01111111111111111111111111111111 /\
11111111111111111000000000000000 =
01111111111111111000000000000000
01111111111111111111111111111111 /\
11111111111111111111111110000000 =
01111111111111111111111110000000
01111111111111111111111111111111 /\
00000000000000000000000000000000 =
00000000000000000000000000000000
01111111111111111111111111111111 /\
00000000000000000000000000000001 =
00000000000000000000000000000001
01111111111111111111111111111111 /\
00000000000000000000000000000010 =
00000000000000000000000000000010
01111111111111111111111111111111 /\
00000000000000000000000000001000 =
00000000000000000000000000001000
01111111111111111111111111111111 /\
00000000000000000000000000001010 =
00000000000000000000000000001010
01111111111111111111111111111111 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
01111111111111111111111111111111 /\
00000000000000000000000000010000 =
00000000000000000000000000010000
01111111111111111111111111111111 /\
00000000000000000000000001111111 =
00000000000000000000000001111111
01111111111111111111111111111111 /\
00000000000000000111111111111111 =
00000000000000000111111111111111
01111111111111111111111111111111 /\
01111111111111111111111111111111 =
01111111111111111111111111111111
*** Test binary operation '\/' ***
10000000000000000000000000000000 \/
10000000000000000000000000000000 =
10000000000000000000000000000000
10000000000000000000000000000000 \/
11111111111111111000000000000000 =
11111111111111111000000000000000
10000000000000000000000000000000 \/
11111111111111111111111110000000 =
11111111111111111111111110000000
10000000000000000000000000000000 \/
00000000000000000000000000000000 =
10000000000000000000000000000000
10000000000000000000000000000000 \/
00000000000000000000000000000001 =
10000000000000000000000000000001
10000000000000000000000000000000 \/
00000000000000000000000000000010 =
10000000000000000000000000000010
10000000000000000000000000000000 \/
00000000000000000000000000001000 =
10000000000000000000000000001000
10000000000000000000000000000000 \/
00000000000000000000000000001010 =
10000000000000000000000000001010
10000000000000000000000000000000 \/
00000000000000000000000000010000 =
10000000000000000000000000010000
10000000000000000000000000000000 \/
00000000000000000000000000010000 =
10000000000000000000000000010000
10000000000000000000000000000000 \/
00000000000000000000000001111111 =
10000000000000000000000001111111
10000000000000000000000000000000 \/
00000000000000000111111111111111 =
10000000000000000111111111111111
10000000000000000000000000000000 \/
01111111111111111111111111111111 =
11111111111111111111111111111111
11111111111111111000000000000000 \/
10000000000000000000000000000000 =
11111111111111111000000000000000
11111111111111111000000000000000 \/
11111111111111111000000000000000 =
11111111111111111000000000000000
11111111111111111000000000000000 \/
11111111111111111111111110000000 =
11111111111111111111111110000000
11111111111111111000000000000000 \/
00000000000000000000000000000000 =
11111111111111111000000000000000
11111111111111111000000000000000 \/
00000000000000000000000000000001 =
11111111111111111000000000000001
11111111111111111000000000000000 \/
00000000000000000000000000000010 =
11111111111111111000000000000010
11111111111111111000000000000000 \/
00000000000000000000000000001000 =
11111111111111111000000000001000
11111111111111111000000000000000 \/
00000000000000000000000000001010 =
11111111111111111000000000001010
11111111111111111000000000000000 \/
00000000000000000000000000010000 =
11111111111111111000000000010000
11111111111111111000000000000000 \/
00000000000000000000000000010000 =
11111111111111111000000000010000
11111111111111111000000000000000 \/
00000000000000000000000001111111 =
11111111111111111000000001111111
11111111111111111000000000000000 \/
00000000000000000111111111111111 =
11111111111111111111111111111111
11111111111111111000000000000000 \/
01111111111111111111111111111111 =
11111111111111111111111111111111
11111111111111111111111110000000 \/
10000000000000000000000000000000 =
11111111111111111111111110000000
11111111111111111111111110000000 \/
11111111111111111000000000000000 =
11111111111111111111111110000000
11111111111111111111111110000000 \/
11111111111111111111111110000000 =
11111111111111111111111110000000
11111111111111111111111110000000 \/
00000000000000000000000000000000 =
11111111111111111111111110000000
11111111111111111111111110000000 \/
00000000000000000000000000000001 =
11111111111111111111111110000001
11111111111111111111111110000000 \/
00000000000000000000000000000010 =
11111111111111111111111110000010
11111111111111111111111110000000 \/
00000000000000000000000000001000 =
11111111111111111111111110001000
11111111111111111111111110000000 \/
00000000000000000000000000001010 =
11111111111111111111111110001010
11111111111111111111111110000000 \/
00000000000000000000000000010000 =
11111111111111111111111110010000
11111111111111111111111110000000 \/
00000000000000000000000000010000 =
11111111111111111111111110010000
11111111111111111111111110000000 \/
00000000000000000000000001111111 =
11111111111111111111111111111111
11111111111111111111111110000000 \/
00000000000000000111111111111111 =
11111111111111111111111111111111
11111111111111111111111110000000 \/
01111111111111111111111111111111 =
11111111111111111111111111111111
00000000000000000000000000000000 \/
10000000000000000000000000000000 =
10000000000000000000000000000000
00000000000000000000000000000000 \/
11111111111111111000000000000000 =
11111111111111111000000000000000
00000000000000000000000000000000 \/
11111111111111111111111110000000 =
11111111111111111111111110000000
00000000000000000000000000000000 \/
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000000 \/
00000000000000000000000000000001 =
00000000000000000000000000000001
00000000000000000000000000000000 \/
00000000000000000000000000000010 =
00000000000000000000000000000010
00000000000000000000000000000000 \/
00000000000000000000000000001000 =
00000000000000000000000000001000
00000000000000000000000000000000 \/
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000000000000000000 \/
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000000000 \/
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000000000 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000000000 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000000000 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000000000001 \/
10000000000000000000000000000000 =
10000000000000000000000000000001
00000000000000000000000000000001 \/
11111111111111111000000000000000 =
11111111111111111000000000000001
00000000000000000000000000000001 \/
11111111111111111111111110000000 =
11111111111111111111111110000001
00000000000000000000000000000001 \/
00000000000000000000000000000000 =
00000000000000000000000000000001
00000000000000000000000000000001 \/
00000000000000000000000000000001 =
00000000000000000000000000000001
00000000000000000000000000000001 \/
00000000000000000000000000000010 =
00000000000000000000000000000011
00000000000000000000000000000001 \/
00000000000000000000000000001000 =
00000000000000000000000000001001
00000000000000000000000000000001 \/
00000000000000000000000000001010 =
00000000000000000000000000001011
00000000000000000000000000000001 \/
00000000000000000000000000010000 =
00000000000000000000000000010001
00000000000000000000000000000001 \/
00000000000000000000000000010000 =
00000000000000000000000000010001
00000000000000000000000000000001 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000000001 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000000001 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000000000010 \/
10000000000000000000000000000000 =
10000000000000000000000000000010
00000000000000000000000000000010 \/
11111111111111111000000000000000 =
11111111111111111000000000000010
00000000000000000000000000000010 \/
11111111111111111111111110000000 =
11111111111111111111111110000010
00000000000000000000000000000010 \/
00000000000000000000000000000000 =
00000000000000000000000000000010
00000000000000000000000000000010 \/
00000000000000000000000000000001 =
00000000000000000000000000000011
00000000000000000000000000000010 \/
00000000000000000000000000000010 =
00000000000000000000000000000010
00000000000000000000000000000010 \/
00000000000000000000000000001000 =
00000000000000000000000000001010
00000000000000000000000000000010 \/
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000000000000000010 \/
00000000000000000000000000010000 =
00000000000000000000000000010010
00000000000000000000000000000010 \/
00000000000000000000000000010000 =
00000000000000000000000000010010
00000000000000000000000000000010 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000000010 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000000010 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000000001000 \/
10000000000000000000000000000000 =
10000000000000000000000000001000
00000000000000000000000000001000 \/
11111111111111111000000000000000 =
11111111111111111000000000001000
00000000000000000000000000001000 \/
11111111111111111111111110000000 =
11111111111111111111111110001000
00000000000000000000000000001000 \/
00000000000000000000000000000000 =
00000000000000000000000000001000
00000000000000000000000000001000 \/
00000000000000000000000000000001 =
00000000000000000000000000001001
00000000000000000000000000001000 \/
00000000000000000000000000000010 =
00000000000000000000000000001010
00000000000000000000000000001000 \/
00000000000000000000000000001000 =
00000000000000000000000000001000
00000000000000000000000000001000 \/
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000000000000001000 \/
00000000000000000000000000010000 =
00000000000000000000000000011000
00000000000000000000000000001000 \/
00000000000000000000000000010000 =
00000000000000000000000000011000
00000000000000000000000000001000 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000001000 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000001000 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000000001010 \/
10000000000000000000000000000000 =
10000000000000000000000000001010
00000000000000000000000000001010 \/
11111111111111111000000000000000 =
11111111111111111000000000001010
00000000000000000000000000001010 \/
11111111111111111111111110000000 =
11111111111111111111111110001010
00000000000000000000000000001010 \/
00000000000000000000000000000000 =
00000000000000000000000000001010
00000000000000000000000000001010 \/
00000000000000000000000000000001 =
00000000000000000000000000001011
00000000000000000000000000001010 \/
00000000000000000000000000000010 =
00000000000000000000000000001010
00000000000000000000000000001010 \/
00000000000000000000000000001000 =
00000000000000000000000000001010
00000000000000000000000000001010 \/
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000000000000001010 \/
00000000000000000000000000010000 =
00000000000000000000000000011010
00000000000000000000000000001010 \/
00000000000000000000000000010000 =
00000000000000000000000000011010
00000000000000000000000000001010 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000001010 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000001010 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000000010000 \/
10000000000000000000000000000000 =
10000000000000000000000000010000
00000000000000000000000000010000 \/
11111111111111111000000000000000 =
11111111111111111000000000010000
00000000000000000000000000010000 \/
11111111111111111111111110000000 =
11111111111111111111111110010000
00000000000000000000000000010000 \/
00000000000000000000000000000000 =
00000000000000000000000000010000
00000000000000000000000000010000 \/
00000000000000000000000000000001 =
00000000000000000000000000010001
00000000000000000000000000010000 \/
00000000000000000000000000000010 =
00000000000000000000000000010010
00000000000000000000000000010000 \/
00000000000000000000000000001000 =
00000000000000000000000000011000
00000000000000000000000000010000 \/
00000000000000000000000000001010 =
00000000000000000000000000011010
00000000000000000000000000010000 \/
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 \/
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000010000 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000010000 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000000010000 \/
10000000000000000000000000000000 =
10000000000000000000000000010000
00000000000000000000000000010000 \/
11111111111111111000000000000000 =
11111111111111111000000000010000
00000000000000000000000000010000 \/
11111111111111111111111110000000 =
11111111111111111111111110010000
00000000000000000000000000010000 \/
00000000000000000000000000000000 =
00000000000000000000000000010000
00000000000000000000000000010000 \/
00000000000000000000000000000001 =
00000000000000000000000000010001
00000000000000000000000000010000 \/
00000000000000000000000000000010 =
00000000000000000000000000010010
00000000000000000000000000010000 \/
00000000000000000000000000001000 =
00000000000000000000000000011000
00000000000000000000000000010000 \/
00000000000000000000000000001010 =
00000000000000000000000000011010
00000000000000000000000000010000 \/
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 \/
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000010000 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000010000 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000010000 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000001111111 \/
10000000000000000000000000000000 =
10000000000000000000000001111111
00000000000000000000000001111111 \/
11111111111111111000000000000000 =
11111111111111111000000001111111
00000000000000000000000001111111 \/
11111111111111111111111110000000 =
11111111111111111111111111111111
00000000000000000000000001111111 \/
00000000000000000000000000000000 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000000000000000001 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000000000000000010 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000000000000001000 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000000000000001010 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000000000000010000 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000000000000010000 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000001111111 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000001111111 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000111111111111111 \/
10000000000000000000000000000000 =
10000000000000000111111111111111
00000000000000000111111111111111 \/
11111111111111111000000000000000 =
11111111111111111111111111111111
00000000000000000111111111111111 \/
11111111111111111111111110000000 =
11111111111111111111111111111111
00000000000000000111111111111111 \/
00000000000000000000000000000000 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000000000000000001 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000000000000000010 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000000000000001000 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000000000000001010 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000000000000010000 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000000000000010000 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000000000001111111 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000111111111111111 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
10000000000000000000000000000000 =
11111111111111111111111111111111
01111111111111111111111111111111 \/
11111111111111111000000000000000 =
11111111111111111111111111111111
01111111111111111111111111111111 \/
11111111111111111111111110000000 =
11111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000000000000 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000000000001 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000000000010 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000000001000 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000000001010 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000000010000 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000000010000 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000000000001111111 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
00000000000000000111111111111111 =
01111111111111111111111111111111
01111111111111111111111111111111 \/
01111111111111111111111111111111 =
01111111111111111111111111111111
*** Test binary operation 'xor' ***
10000000000000000000000000000000 xor
10000000000000000000000000000000 =
00000000000000000000000000000000
10000000000000000000000000000000 xor
11111111111111111000000000000000 =
01111111111111111000000000000000
10000000000000000000000000000000 xor
11111111111111111111111110000000 =
01111111111111111111111110000000
10000000000000000000000000000000 xor
00000000000000000000000000000000 =
10000000000000000000000000000000
10000000000000000000000000000000 xor
00000000000000000000000000000001 =
10000000000000000000000000000001
10000000000000000000000000000000 xor
00000000000000000000000000000010 =
10000000000000000000000000000010
10000000000000000000000000000000 xor
00000000000000000000000000001000 =
10000000000000000000000000001000
10000000000000000000000000000000 xor
00000000000000000000000000001010 =
10000000000000000000000000001010
10000000000000000000000000000000 xor
00000000000000000000000000010000 =
10000000000000000000000000010000
10000000000000000000000000000000 xor
00000000000000000000000000010000 =
10000000000000000000000000010000
10000000000000000000000000000000 xor
00000000000000000000000001111111 =
10000000000000000000000001111111
10000000000000000000000000000000 xor
00000000000000000111111111111111 =
10000000000000000111111111111111
10000000000000000000000000000000 xor
01111111111111111111111111111111 =
11111111111111111111111111111111
11111111111111111000000000000000 xor
10000000000000000000000000000000 =
01111111111111111000000000000000
11111111111111111000000000000000 xor
11111111111111111000000000000000 =
00000000000000000000000000000000
11111111111111111000000000000000 xor
11111111111111111111111110000000 =
00000000000000000111111110000000
11111111111111111000000000000000 xor
00000000000000000000000000000000 =
11111111111111111000000000000000
11111111111111111000000000000000 xor
00000000000000000000000000000001 =
11111111111111111000000000000001
11111111111111111000000000000000 xor
00000000000000000000000000000010 =
11111111111111111000000000000010
11111111111111111000000000000000 xor
00000000000000000000000000001000 =
11111111111111111000000000001000
11111111111111111000000000000000 xor
00000000000000000000000000001010 =
11111111111111111000000000001010
11111111111111111000000000000000 xor
00000000000000000000000000010000 =
11111111111111111000000000010000
11111111111111111000000000000000 xor
00000000000000000000000000010000 =
11111111111111111000000000010000
11111111111111111000000000000000 xor
00000000000000000000000001111111 =
11111111111111111000000001111111
11111111111111111000000000000000 xor
00000000000000000111111111111111 =
11111111111111111111111111111111
11111111111111111000000000000000 xor
01111111111111111111111111111111 =
10000000000000000111111111111111
11111111111111111111111110000000 xor
10000000000000000000000000000000 =
01111111111111111111111110000000
11111111111111111111111110000000 xor
11111111111111111000000000000000 =
00000000000000000111111110000000
11111111111111111111111110000000 xor
11111111111111111111111110000000 =
00000000000000000000000000000000
11111111111111111111111110000000 xor
00000000000000000000000000000000 =
11111111111111111111111110000000
11111111111111111111111110000000 xor
00000000000000000000000000000001 =
11111111111111111111111110000001
11111111111111111111111110000000 xor
00000000000000000000000000000010 =
11111111111111111111111110000010
11111111111111111111111110000000 xor
00000000000000000000000000001000 =
11111111111111111111111110001000
11111111111111111111111110000000 xor
00000000000000000000000000001010 =
11111111111111111111111110001010
11111111111111111111111110000000 xor
00000000000000000000000000010000 =
11111111111111111111111110010000
11111111111111111111111110000000 xor
00000000000000000000000000010000 =
11111111111111111111111110010000
11111111111111111111111110000000 xor
00000000000000000000000001111111 =
11111111111111111111111111111111
11111111111111111111111110000000 xor
00000000000000000111111111111111 =
11111111111111111000000001111111
11111111111111111111111110000000 xor
01111111111111111111111111111111 =
10000000000000000000000001111111
00000000000000000000000000000000 xor
10000000000000000000000000000000 =
10000000000000000000000000000000
00000000000000000000000000000000 xor
11111111111111111000000000000000 =
11111111111111111000000000000000
00000000000000000000000000000000 xor
11111111111111111111111110000000 =
11111111111111111111111110000000
00000000000000000000000000000000 xor
00000000000000000000000000000000 =
00000000000000000000000000000000
00000000000000000000000000000000 xor
00000000000000000000000000000001 =
00000000000000000000000000000001
00000000000000000000000000000000 xor
00000000000000000000000000000010 =
00000000000000000000000000000010
00000000000000000000000000000000 xor
00000000000000000000000000001000 =
00000000000000000000000000001000
00000000000000000000000000000000 xor
00000000000000000000000000001010 =
00000000000000000000000000001010
00000000000000000000000000000000 xor
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000000000 xor
00000000000000000000000000010000 =
00000000000000000000000000010000
00000000000000000000000000000000 xor
00000000000000000000000001111111 =
00000000000000000000000001111111
00000000000000000000000000000000 xor
00000000000000000111111111111111 =
00000000000000000111111111111111
00000000000000000000000000000000 xor
01111111111111111111111111111111 =
01111111111111111111111111111111
00000000000000000000000000000001 xor
10000000000000000000000000000000 =
10000000000000000000000000000001
00000000000000000000000000000001 xor
11111111111111111000000000000000 =
11111111111111111000000000000001
00000000000000000000000000000001 xor
11111111111111111111111110000000 =
11111111111111111111111110000001
00000000000000000000000000000001 xor
00000000000000000000000000000000 =
00000000000000000000000000000001
00000000000000000000000000000001 xor
00000000000000000000000000000001 =
00000000000000000000000000000000
00000000000000000000000000000001 xor
00000000000000000000000000000010 =
00000000000000000000000000000011
00000000000000000000000000000001 xor
00000000000000000000000000001000 =
00000000000000000000000000001001
00000000000000000000000000000001 xor
00000000000000000000000000001010 =
00000000000000000000000000001011
00000000000000000000000000000001 xor
00000000000000000000000000010000 =
00000000000000000000000000010001
00000000000000000000000000000001 xor
00000000000000000000000000010000 =
00000000000000000000000000010001
00000000000000000000000000000001 xor
00000000000000000000000001111111 =
00000000000000000000000001111110
00000000000000000000000000000001 xor
00000000000000000111111111111111 =
00000000000000000111111111111110
00000000000000000000000000000001 xor
01111111111111111111111111111111 =
01111111111111111111111111111110
00000000000000000000000000000010 xor
10000000000000000000000000000000 =
10000000000000000000000000000010
00000000000000000000000000000010 xor
11111111111111111000000000000000 =
11111111111111111000000000000010
00000000000000000000000000000010 xor
11111111111111111111111110000000 =
11111111111111111111111110000010
00000000000000000000000000000010 xor
00000000000000000000000000000000 =
00000000000000000000000000000010
00000000000000000000000000000010 xor
00000000000000000000000000000001 =
00000000000000000000000000000011
00000000000000000000000000000010 xor
00000000000000000000000000000010 =
00000000000000000000000000000000
00000000000000000000000000000010 xor
00000000000000000000000000001000 =
00000000000000000000000000001010
00000000000000000000000000000010 xor
00000000000000000000000000001010 =
00000000000000000000000000001000
00000000000000000000000000000010 xor
00000000000000000000000000010000 =
00000000000000000000000000010010
00000000000000000000000000000010 xor
00000000000000000000000000010000 =
00000000000000000000000000010010
00000000000000000000000000000010 xor
00000000000000000000000001111111 =
00000000000000000000000001111101
00000000000000000000000000000010 xor
00000000000000000111111111111111 =
00000000000000000111111111111101
00000000000000000000000000000010 xor
01111111111111111111111111111111 =
01111111111111111111111111111101
00000000000000000000000000001000 xor
10000000000000000000000000000000 =
10000000000000000000000000001000
00000000000000000000000000001000 xor
11111111111111111000000000000000 =
11111111111111111000000000001000
00000000000000000000000000001000 xor
11111111111111111111111110000000 =
11111111111111111111111110001000
00000000000000000000000000001000 xor
00000000000000000000000000000000 =
00000000000000000000000000001000
00000000000000000000000000001000 xor
00000000000000000000000000000001 =
00000000000000000000000000001001
00000000000000000000000000001000 xor
00000000000000000000000000000010 =
00000000000000000000000000001010
00000000000000000000000000001000 xor
00000000000000000000000000001000 =
00000000000000000000000000000000
00000000000000000000000000001000 xor
00000000000000000000000000001010 =
00000000000000000000000000000010
00000000000000000000000000001000 xor
00000000000000000000000000010000 =
00000000000000000000000000011000
00000000000000000000000000001000 xor
00000000000000000000000000010000 =
00000000000000000000000000011000
00000000000000000000000000001000 xor
00000000000000000000000001111111 =
00000000000000000000000001110111
00000000000000000000000000001000 xor
00000000000000000111111111111111 =
00000000000000000111111111110111
00000000000000000000000000001000 xor
01111111111111111111111111111111 =
01111111111111111111111111110111
00000000000000000000000000001010 xor
10000000000000000000000000000000 =
10000000000000000000000000001010
00000000000000000000000000001010 xor
11111111111111111000000000000000 =
11111111111111111000000000001010
00000000000000000000000000001010 xor
11111111111111111111111110000000 =
11111111111111111111111110001010
00000000000000000000000000001010 xor
00000000000000000000000000000000 =
00000000000000000000000000001010
00000000000000000000000000001010 xor
00000000000000000000000000000001 =
00000000000000000000000000001011
00000000000000000000000000001010 xor
00000000000000000000000000000010 =
00000000000000000000000000001000
00000000000000000000000000001010 xor
00000000000000000000000000001000 =
00000000000000000000000000000010
00000000000000000000000000001010 xor
00000000000000000000000000001010 =
00000000000000000000000000000000
00000000000000000000000000001010 xor
00000000000000000000000000010000 =
00000000000000000000000000011010
00000000000000000000000000001010 xor
00000000000000000000000000010000 =
00000000000000000000000000011010
00000000000000000000000000001010 xor
00000000000000000000000001111111 =
00000000000000000000000001110101
00000000000000000000000000001010 xor
00000000000000000111111111111111 =
00000000000000000111111111110101
00000000000000000000000000001010 xor
01111111111111111111111111111111 =
01111111111111111111111111110101
00000000000000000000000000010000 xor
10000000000000000000000000000000 =
10000000000000000000000000010000
00000000000000000000000000010000 xor
11111111111111111000000000000000 =
11111111111111111000000000010000
00000000000000000000000000010000 xor
11111111111111111111111110000000 =
11111111111111111111111110010000
00000000000000000000000000010000 xor
00000000000000000000000000000000 =
00000000000000000000000000010000
00000000000000000000000000010000 xor
00000000000000000000000000000001 =
00000000000000000000000000010001
00000000000000000000000000010000 xor
00000000000000000000000000000010 =
00000000000000000000000000010010
00000000000000000000000000010000 xor
00000000000000000000000000001000 =
00000000000000000000000000011000
00000000000000000000000000010000 xor
00000000000000000000000000001010 =
00000000000000000000000000011010
00000000000000000000000000010000 xor
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000010000 xor
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000010000 xor
00000000000000000000000001111111 =
00000000000000000000000001101111
00000000000000000000000000010000 xor
00000000000000000111111111111111 =
00000000000000000111111111101111
00000000000000000000000000010000 xor
01111111111111111111111111111111 =
01111111111111111111111111101111
00000000000000000000000000010000 xor
10000000000000000000000000000000 =
10000000000000000000000000010000
00000000000000000000000000010000 xor
11111111111111111000000000000000 =
11111111111111111000000000010000
00000000000000000000000000010000 xor
11111111111111111111111110000000 =
11111111111111111111111110010000
00000000000000000000000000010000 xor
00000000000000000000000000000000 =
00000000000000000000000000010000
00000000000000000000000000010000 xor
00000000000000000000000000000001 =
00000000000000000000000000010001
00000000000000000000000000010000 xor
00000000000000000000000000000010 =
00000000000000000000000000010010
00000000000000000000000000010000 xor
00000000000000000000000000001000 =
00000000000000000000000000011000
00000000000000000000000000010000 xor
00000000000000000000000000001010 =
00000000000000000000000000011010
00000000000000000000000000010000 xor
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000010000 xor
00000000000000000000000000010000 =
00000000000000000000000000000000
00000000000000000000000000010000 xor
00000000000000000000000001111111 =
00000000000000000000000001101111
00000000000000000000000000010000 xor
00000000000000000111111111111111 =
00000000000000000111111111101111
00000000000000000000000000010000 xor
01111111111111111111111111111111 =
01111111111111111111111111101111
00000000000000000000000001111111 xor
10000000000000000000000000000000 =
10000000000000000000000001111111
00000000000000000000000001111111 xor
11111111111111111000000000000000 =
11111111111111111000000001111111
00000000000000000000000001111111 xor
11111111111111111111111110000000 =
11111111111111111111111111111111
00000000000000000000000001111111 xor
00000000000000000000000000000000 =
00000000000000000000000001111111
00000000000000000000000001111111 xor
00000000000000000000000000000001 =
00000000000000000000000001111110
00000000000000000000000001111111 xor
00000000000000000000000000000010 =
00000000000000000000000001111101
00000000000000000000000001111111 xor
00000000000000000000000000001000 =
00000000000000000000000001110111
00000000000000000000000001111111 xor
00000000000000000000000000001010 =
00000000000000000000000001110101
00000000000000000000000001111111 xor
00000000000000000000000000010000 =
00000000000000000000000001101111
00000000000000000000000001111111 xor
00000000000000000000000000010000 =
00000000000000000000000001101111
00000000000000000000000001111111 xor
00000000000000000000000001111111 =
00000000000000000000000000000000
00000000000000000000000001111111 xor
00000000000000000111111111111111 =
00000000000000000111111110000000
00000000000000000000000001111111 xor
01111111111111111111111111111111 =
01111111111111111111111110000000
00000000000000000111111111111111 xor
10000000000000000000000000000000 =
10000000000000000111111111111111
00000000000000000111111111111111 xor
11111111111111111000000000000000 =
11111111111111111111111111111111
00000000000000000111111111111111 xor
11111111111111111111111110000000 =
11111111111111111000000001111111
00000000000000000111111111111111 xor
00000000000000000000000000000000 =
00000000000000000111111111111111
00000000000000000111111111111111 xor
00000000000000000000000000000001 =
00000000000000000111111111111110
00000000000000000111111111111111 xor
00000000000000000000000000000010 =
00000000000000000111111111111101
00000000000000000111111111111111 xor
00000000000000000000000000001000 =
00000000000000000111111111110111
00000000000000000111111111111111 xor
00000000000000000000000000001010 =
00000000000000000111111111110101
00000000000000000111111111111111 xor
00000000000000000000000000010000 =
00000000000000000111111111101111
00000000000000000111111111111111 xor
00000000000000000000000000010000 =
00000000000000000111111111101111
00000000000000000111111111111111 xor
00000000000000000000000001111111 =
00000000000000000111111110000000
00000000000000000111111111111111 xor
00000000000000000111111111111111 =
00000000000000000000000000000000
00000000000000000111111111111111 xor
01111111111111111111111111111111 =
01111111111111111000000000000000
01111111111111111111111111111111 xor
10000000000000000000000000000000 =
11111111111111111111111111111111
01111111111111111111111111111111 xor
11111111111111111000000000000000 =
10000000000000000111111111111111
01111111111111111111111111111111 xor
11111111111111111111111110000000 =
10000000000000000000000001111111
01111111111111111111111111111111 xor
00000000000000000000000000000000 =
01111111111111111111111111111111
01111111111111111111111111111111 xor
00000000000000000000000000000001 =
01111111111111111111111111111110
01111111111111111111111111111111 xor
00000000000000000000000000000010 =
01111111111111111111111111111101
01111111111111111111111111111111 xor
00000000000000000000000000001000 =
01111111111111111111111111110111
01111111111111111111111111111111 xor
00000000000000000000000000001010 =
01111111111111111111111111110101
01111111111111111111111111111111 xor
00000000000000000000000000010000 =
01111111111111111111111111101111
01111111111111111111111111111111 xor
00000000000000000000000000010000 =
01111111111111111111111111101111
01111111111111111111111111111111 xor
00000000000000000000000001111111 =
01111111111111111111111110000000
01111111111111111111111111111111 xor
00000000000000000111111111111111 =
01111111111111111000000000000000
01111111111111111111111111111111 xor
01111111111111111111111111111111 =
00000000000000000000000000000000
*** Test shift operations '>>' and '>>u' ***
10000000000000000000000000000000 >> -1 =
<<exception>>
10000000000000000000000000000000 >> 0 =
10000000000000000000000000000000
10000000000000000000000000000000 >> 1 =
11000000000000000000000000000000
10000000000000000000000000000000 >> 2 =
11100000000000000000000000000000
10000000000000000000000000000000 >> 3 =
11110000000000000000000000000000
10000000000000000000000000000000 >> 4 =
11111000000000000000000000000000
10000000000000000000000000000000 >> 8 =
11111111100000000000000000000000
10000000000000000000000000000000 >> 16 =
11111111111111111000000000000000
10000000000000000000000000000000 >> 24 =
11111111111111111111111110000000
10000000000000000000000000000000 >> 31 =
11111111111111111111111111111111
10000000000000000000000000000000 >> 32 =
<<exception>>
10000000000000000000000000000000 >> 36 =
<<exception>>
11111111111111111000000000000000 >> -1 =
<<exception>>
11111111111111111000000000000000 >> 0 =
11111111111111111000000000000000
11111111111111111000000000000000 >> 1 =
11111111111111111100000000000000
11111111111111111000000000000000 >> 2 =
11111111111111111110000000000000
11111111111111111000000000000000 >> 3 =
11111111111111111111000000000000
11111111111111111000000000000000 >> 4 =
11111111111111111111100000000000
11111111111111111000000000000000 >> 8 =
11111111111111111111111110000000
11111111111111111000000000000000 >> 16 =
11111111111111111111111111111111
11111111111111111000000000000000 >> 24 =
11111111111111111111111111111111
11111111111111111000000000000000 >> 31 =
11111111111111111111111111111111
11111111111111111000000000000000 >> 32 =
<<exception>>
11111111111111111000000000000000 >> 36 =
<<exception>>
11111111111111111111111110000000 >> -1 =
<<exception>>
11111111111111111111111110000000 >> 0 =
11111111111111111111111110000000
11111111111111111111111110000000 >> 1 =
11111111111111111111111111000000
11111111111111111111111110000000 >> 2 =
11111111111111111111111111100000
11111111111111111111111110000000 >> 3 =
11111111111111111111111111110000
11111111111111111111111110000000 >> 4 =
11111111111111111111111111111000
11111111111111111111111110000000 >> 8 =
11111111111111111111111111111111
11111111111111111111111110000000 >> 16 =
11111111111111111111111111111111
11111111111111111111111110000000 >> 24 =
11111111111111111111111111111111
11111111111111111111111110000000 >> 31 =
11111111111111111111111111111111
11111111111111111111111110000000 >> 32 =
<<exception>>
11111111111111111111111110000000 >> 36 =
<<exception>>
00000000000000000000000000000000 >> -1 =
<<exception>>
00000000000000000000000000000000 >> 0 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 1 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 2 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 3 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 4 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 8 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 16 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 24 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 31 =
00000000000000000000000000000000
00000000000000000000000000000000 >> 32 =
<<exception>>
00000000000000000000000000000000 >> 36 =
<<exception>>
00000000000000000000000000000001 >> -1 =
<<exception>>
00000000000000000000000000000001 >> 0 =
00000000000000000000000000000001
00000000000000000000000000000001 >> 1 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 2 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 3 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 4 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 8 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 16 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 24 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 31 =
00000000000000000000000000000000
00000000000000000000000000000001 >> 32 =
<<exception>>
00000000000000000000000000000001 >> 36 =
<<exception>>
00000000000000000000000000000010 >> -1 =
<<exception>>
00000000000000000000000000000010 >> 0 =
00000000000000000000000000000010
00000000000000000000000000000010 >> 1 =
00000000000000000000000000000001
00000000000000000000000000000010 >> 2 =
00000000000000000000000000000000
00000000000000000000000000000010 >> 3 =
00000000000000000000000000000000
00000000000000000000000000000010 >> 4 =
00000000000000000000000000000000
00000000000000000000000000000010 >> 8 =
00000000000000000000000000000000
00000000000000000000000000000010 >> 16 =
00000000000000000000000000000000
00000000000000000000000000000010 >> 24 =
00000000000000000000000000000000
00000000000000000000000000000010 >> 31 =
00000000000000000000000000000000
00000000000000000000000000000010 >> 32 =
<<exception>>
00000000000000000000000000000010 >> 36 =
<<exception>>
00000000000000000000000000001000 >> -1 =
<<exception>>
00000000000000000000000000001000 >> 0 =
00000000000000000000000000001000
00000000000000000000000000001000 >> 1 =
00000000000000000000000000000100
00000000000000000000000000001000 >> 2 =
00000000000000000000000000000010
00000000000000000000000000001000 >> 3 =
00000000000000000000000000000001
00000000000000000000000000001000 >> 4 =
00000000000000000000000000000000
00000000000000000000000000001000 >> 8 =
00000000000000000000000000000000
00000000000000000000000000001000 >> 16 =
00000000000000000000000000000000
00000000000000000000000000001000 >> 24 =
00000000000000000000000000000000
00000000000000000000000000001000 >> 31 =
00000000000000000000000000000000
00000000000000000000000000001000 >> 32 =
<<exception>>
00000000000000000000000000001000 >> 36 =
<<exception>>
00000000000000000000000000001010 >> -1 =
<<exception>>
00000000000000000000000000001010 >> 0 =
00000000000000000000000000001010
00000000000000000000000000001010 >> 1 =
00000000000000000000000000000101
00000000000000000000000000001010 >> 2 =
00000000000000000000000000000010
00000000000000000000000000001010 >> 3 =
00000000000000000000000000000001
00000000000000000000000000001010 >> 4 =
00000000000000000000000000000000
00000000000000000000000000001010 >> 8 =
00000000000000000000000000000000
00000000000000000000000000001010 >> 16 =
00000000000000000000000000000000
00000000000000000000000000001010 >> 24 =
00000000000000000000000000000000
00000000000000000000000000001010 >> 31 =
00000000000000000000000000000000
00000000000000000000000000001010 >> 32 =
<<exception>>
00000000000000000000000000001010 >> 36 =
<<exception>>
00000000000000000000000000010000 >> -1 =
<<exception>>
00000000000000000000000000010000 >> 0 =
00000000000000000000000000010000
00000000000000000000000000010000 >> 1 =
00000000000000000000000000001000
00000000000000000000000000010000 >> 2 =
00000000000000000000000000000100
00000000000000000000000000010000 >> 3 =
00000000000000000000000000000010
00000000000000000000000000010000 >> 4 =
00000000000000000000000000000001
00000000000000000000000000010000 >> 8 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 16 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 24 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 31 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 32 =
<<exception>>
00000000000000000000000000010000 >> 36 =
<<exception>>
00000000000000000000000000010000 >> -1 =
<<exception>>
00000000000000000000000000010000 >> 0 =
00000000000000000000000000010000
00000000000000000000000000010000 >> 1 =
00000000000000000000000000001000
00000000000000000000000000010000 >> 2 =
00000000000000000000000000000100
00000000000000000000000000010000 >> 3 =
00000000000000000000000000000010
00000000000000000000000000010000 >> 4 =
00000000000000000000000000000001
00000000000000000000000000010000 >> 8 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 16 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 24 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 31 =
00000000000000000000000000000000
00000000000000000000000000010000 >> 32 =
<<exception>>
00000000000000000000000000010000 >> 36 =
<<exception>>
00000000000000000000000001111111 >> -1 =
<<exception>>
00000000000000000000000001111111 >> 0 =
00000000000000000000000001111111
00000000000000000000000001111111 >> 1 =
00000000000000000000000000111111
00000000000000000000000001111111 >> 2 =
00000000000000000000000000011111
00000000000000000000000001111111 >> 3 =
00000000000000000000000000001111
00000000000000000000000001111111 >> 4 =
00000000000000000000000000000111
00000000000000000000000001111111 >> 8 =
00000000000000000000000000000000
00000000000000000000000001111111 >> 16 =
00000000000000000000000000000000
00000000000000000000000001111111 >> 24 =
00000000000000000000000000000000
00000000000000000000000001111111 >> 31 =
00000000000000000000000000000000
00000000000000000000000001111111 >> 32 =
<<exception>>
00000000000000000000000001111111 >> 36 =
<<exception>>
00000000000000000111111111111111 >> -1 =
<<exception>>
00000000000000000111111111111111 >> 0 =
00000000000000000111111111111111
00000000000000000111111111111111 >> 1 =
00000000000000000011111111111111
00000000000000000111111111111111 >> 2 =
00000000000000000001111111111111
00000000000000000111111111111111 >> 3 =
00000000000000000000111111111111
00000000000000000111111111111111 >> 4 =
00000000000000000000011111111111
00000000000000000111111111111111 >> 8 =
00000000000000000000000001111111
00000000000000000111111111111111 >> 16 =
00000000000000000000000000000000
00000000000000000111111111111111 >> 24 =
00000000000000000000000000000000
00000000000000000111111111111111 >> 31 =
00000000000000000000000000000000
00000000000000000111111111111111 >> 32 =
<<exception>>
00000000000000000111111111111111 >> 36 =
<<exception>>
01111111111111111111111111111111 >> -1 =
<<exception>>
01111111111111111111111111111111 >> 0 =
01111111111111111111111111111111
01111111111111111111111111111111 >> 1 =
00111111111111111111111111111111
01111111111111111111111111111111 >> 2 =
00011111111111111111111111111111
01111111111111111111111111111111 >> 3 =
00001111111111111111111111111111
01111111111111111111111111111111 >> 4 =
00000111111111111111111111111111
01111111111111111111111111111111 >> 8 =
00000000011111111111111111111111
01111111111111111111111111111111 >> 16 =
00000000000000000111111111111111
01111111111111111111111111111111 >> 24 =
00000000000000000000000001111111
01111111111111111111111111111111 >> 31 =
00000000000000000000000000000000
01111111111111111111111111111111 >> 32 =
<<exception>>
01111111111111111111111111111111 >> 36 =
<<exception>>
*** Test shift operations '<<' and '<<u' ***
10000000000000000000000000000000 << -1 =
<<exception>>
10000000000000000000000000000000 << 0 =
10000000000000000000000000000000
10000000000000000000000000000000 << 1 =
00000000000000000000000000000000
10000000000000000000000000000000 << 2 =
00000000000000000000000000000000
10000000000000000000000000000000 << 3 =
00000000000000000000000000000000
10000000000000000000000000000000 << 4 =
00000000000000000000000000000000
10000000000000000000000000000000 << 8 =
00000000000000000000000000000000
10000000000000000000000000000000 << 16 =
00000000000000000000000000000000
10000000000000000000000000000000 << 24 =
00000000000000000000000000000000
10000000000000000000000000000000 << 31 =
00000000000000000000000000000000
10000000000000000000000000000000 << 32 =
<<exception>>
10000000000000000000000000000000 << 36 =
<<exception>>
11111111111111111000000000000000 << -1 =
<<exception>>
11111111111111111000000000000000 << 0 =
11111111111111111000000000000000
11111111111111111000000000000000 << 1 =
11111111111111110000000000000000
11111111111111111000000000000000 << 2 =
11111111111111100000000000000000
11111111111111111000000000000000 << 3 =
11111111111111000000000000000000
11111111111111111000000000000000 << 4 =
11111111111110000000000000000000
11111111111111111000000000000000 << 8 =
11111111100000000000000000000000
11111111111111111000000000000000 << 16 =
10000000000000000000000000000000
11111111111111111000000000000000 << 24 =
00000000000000000000000000000000
11111111111111111000000000000000 << 31 =
00000000000000000000000000000000
11111111111111111000000000000000 << 32 =
<<exception>>
11111111111111111000000000000000 << 36 =
<<exception>>
11111111111111111111111110000000 << -1 =
<<exception>>
11111111111111111111111110000000 << 0 =
11111111111111111111111110000000
11111111111111111111111110000000 << 1 =
11111111111111111111111100000000
11111111111111111111111110000000 << 2 =
11111111111111111111111000000000
11111111111111111111111110000000 << 3 =
11111111111111111111110000000000
11111111111111111111111110000000 << 4 =
11111111111111111111100000000000
11111111111111111111111110000000 << 8 =
11111111111111111000000000000000
11111111111111111111111110000000 << 16 =
11111111100000000000000000000000
11111111111111111111111110000000 << 24 =
10000000000000000000000000000000
11111111111111111111111110000000 << 31 =
00000000000000000000000000000000
11111111111111111111111110000000 << 32 =
<<exception>>
11111111111111111111111110000000 << 36 =
<<exception>>
00000000000000000000000000000000 << -1 =
<<exception>>
00000000000000000000000000000000 << 0 =
00000000000000000000000000000000
00000000000000000000000000000000 << 1 =
00000000000000000000000000000000
00000000000000000000000000000000 << 2 =
00000000000000000000000000000000
00000000000000000000000000000000 << 3 =
00000000000000000000000000000000
00000000000000000000000000000000 << 4 =
00000000000000000000000000000000
00000000000000000000000000000000 << 8 =
00000000000000000000000000000000
00000000000000000000000000000000 << 16 =
00000000000000000000000000000000
00000000000000000000000000000000 << 24 =
00000000000000000000000000000000
00000000000000000000000000000000 << 31 =
00000000000000000000000000000000
00000000000000000000000000000000 << 32 =
<<exception>>
00000000000000000000000000000000 << 36 =
<<exception>>
00000000000000000000000000000001 << -1 =
<<exception>>
00000000000000000000000000000001 << 0 =
00000000000000000000000000000001
00000000000000000000000000000001 << 1 =
00000000000000000000000000000010
00000000000000000000000000000001 << 2 =
00000000000000000000000000000100
00000000000000000000000000000001 << 3 =
00000000000000000000000000001000
00000000000000000000000000000001 << 4 =
00000000000000000000000000010000
00000000000000000000000000000001 << 8 =
00000000000000000000000100000000
00000000000000000000000000000001 << 16 =
00000000000000010000000000000000
00000000000000000000000000000001 << 24 =
00000001000000000000000000000000
00000000000000000000000000000001 << 31 =
10000000000000000000000000000000
00000000000000000000000000000001 << 32 =
<<exception>>
00000000000000000000000000000001 << 36 =
<<exception>>
00000000000000000000000000000010 << -1 =
<<exception>>
00000000000000000000000000000010 << 0 =
00000000000000000000000000000010
00000000000000000000000000000010 << 1 =
00000000000000000000000000000100
00000000000000000000000000000010 << 2 =
00000000000000000000000000001000
00000000000000000000000000000010 << 3 =
00000000000000000000000000010000
00000000000000000000000000000010 << 4 =
00000000000000000000000000100000
00000000000000000000000000000010 << 8 =
00000000000000000000001000000000
00000000000000000000000000000010 << 16 =
00000000000000100000000000000000
00000000000000000000000000000010 << 24 =
00000010000000000000000000000000
00000000000000000000000000000010 << 31 =
00000000000000000000000000000000
00000000000000000000000000000010 << 32 =
<<exception>>
00000000000000000000000000000010 << 36 =
<<exception>>
00000000000000000000000000001000 << -1 =
<<exception>>
00000000000000000000000000001000 << 0 =
00000000000000000000000000001000
00000000000000000000000000001000 << 1 =
00000000000000000000000000010000
00000000000000000000000000001000 << 2 =
00000000000000000000000000100000
00000000000000000000000000001000 << 3 =
00000000000000000000000001000000
00000000000000000000000000001000 << 4 =
00000000000000000000000010000000
00000000000000000000000000001000 << 8 =
00000000000000000000100000000000
00000000000000000000000000001000 << 16 =
00000000000010000000000000000000
00000000000000000000000000001000 << 24 =
00001000000000000000000000000000
00000000000000000000000000001000 << 31 =
00000000000000000000000000000000
00000000000000000000000000001000 << 32 =
<<exception>>
00000000000000000000000000001000 << 36 =
<<exception>>
00000000000000000000000000001010 << -1 =
<<exception>>
00000000000000000000000000001010 << 0 =
00000000000000000000000000001010
00000000000000000000000000001010 << 1 =
00000000000000000000000000010100
00000000000000000000000000001010 << 2 =
00000000000000000000000000101000
00000000000000000000000000001010 << 3 =
00000000000000000000000001010000
00000000000000000000000000001010 << 4 =
00000000000000000000000010100000
00000000000000000000000000001010 << 8 =
00000000000000000000101000000000
00000000000000000000000000001010 << 16 =
00000000000010100000000000000000
00000000000000000000000000001010 << 24 =
00001010000000000000000000000000
00000000000000000000000000001010 << 31 =
00000000000000000000000000000000
00000000000000000000000000001010 << 32 =
<<exception>>
00000000000000000000000000001010 << 36 =
<<exception>>
00000000000000000000000000010000 << -1 =
<<exception>>
00000000000000000000000000010000 << 0 =
00000000000000000000000000010000
00000000000000000000000000010000 << 1 =
00000000000000000000000000100000
00000000000000000000000000010000 << 2 =
00000000000000000000000001000000
00000000000000000000000000010000 << 3 =
00000000000000000000000010000000
00000000000000000000000000010000 << 4 =
00000000000000000000000100000000
00000000000000000000000000010000 << 8 =
00000000000000000001000000000000
00000000000000000000000000010000 << 16 =
00000000000100000000000000000000
00000000000000000000000000010000 << 24 =
00010000000000000000000000000000
00000000000000000000000000010000 << 31 =
00000000000000000000000000000000
00000000000000000000000000010000 << 32 =
<<exception>>
00000000000000000000000000010000 << 36 =
<<exception>>
00000000000000000000000000010000 << -1 =
<<exception>>
00000000000000000000000000010000 << 0 =
00000000000000000000000000010000
00000000000000000000000000010000 << 1 =
00000000000000000000000000100000
00000000000000000000000000010000 << 2 =
00000000000000000000000001000000
00000000000000000000000000010000 << 3 =
00000000000000000000000010000000
00000000000000000000000000010000 << 4 =
00000000000000000000000100000000
00000000000000000000000000010000 << 8 =
00000000000000000001000000000000
00000000000000000000000000010000 << 16 =
00000000000100000000000000000000
00000000000000000000000000010000 << 24 =
00010000000000000000000000000000
00000000000000000000000000010000 << 31 =
00000000000000000000000000000000
00000000000000000000000000010000 << 32 =
<<exception>>
00000000000000000000000000010000 << 36 =
<<exception>>
00000000000000000000000001111111 << -1 =
<<exception>>
00000000000000000000000001111111 << 0 =
00000000000000000000000001111111
00000000000000000000000001111111 << 1 =
00000000000000000000000011111110
00000000000000000000000001111111 << 2 =
00000000000000000000000111111100
00000000000000000000000001111111 << 3 =
00000000000000000000001111111000
00000000000000000000000001111111 << 4 =
00000000000000000000011111110000
00000000000000000000000001111111 << 8 =
00000000000000000111111100000000
00000000000000000000000001111111 << 16 =
00000000011111110000000000000000
00000000000000000000000001111111 << 24 =
01111111000000000000000000000000
00000000000000000000000001111111 << 31 =
10000000000000000000000000000000
00000000000000000000000001111111 << 32 =
<<exception>>
00000000000000000000000001111111 << 36 =
<<exception>>
00000000000000000111111111111111 << -1 =
<<exception>>
00000000000000000111111111111111 << 0 =
00000000000000000111111111111111
00000000000000000111111111111111 << 1 =
00000000000000001111111111111110
00000000000000000111111111111111 << 2 =
00000000000000011111111111111100
00000000000000000111111111111111 << 3 =
00000000000000111111111111111000
00000000000000000111111111111111 << 4 =
00000000000001111111111111110000
00000000000000000111111111111111 << 8 =
00000000011111111111111100000000
00000000000000000111111111111111 << 16 =
01111111111111110000000000000000
00000000000000000111111111111111 << 24 =
11111111000000000000000000000000
00000000000000000111111111111111 << 31 =
10000000000000000000000000000000
00000000000000000111111111111111 << 32 =
<<exception>>
00000000000000000111111111111111 << 36 =
<<exception>>
01111111111111111111111111111111 << -1 =
<<exception>>
01111111111111111111111111111111 << 0 =
01111111111111111111111111111111
01111111111111111111111111111111 << 1 =
11111111111111111111111111111110
01111111111111111111111111111111 << 2 =
11111111111111111111111111111100
01111111111111111111111111111111 << 3 =
11111111111111111111111111111000
01111111111111111111111111111111 << 4 =
11111111111111111111111111110000
01111111111111111111111111111111 << 8 =
11111111111111111111111100000000
01111111111111111111111111111111 << 16 =
11111111111111110000000000000000
01111111111111111111111111111111 << 24 =
11111111000000000000000000000000
01111111111111111111111111111111 << 31 =
10000000000000000000000000000000
01111111111111111111111111111111 << 32 =
<<exception>>
01111111111111111111111111111111 << 36 =
<<exception>>