Files
mercury/tests/hard_coded/arith_uint16.exp
Julien Fischer 509e2156bc Add tests of basic arithmetic for 16-bit integers.
tests/hard_coded/arith_int16.{m,exp}:
tests/hard_coded/arith_uint16.{m,exp}:
tests/hard_coded/Mmakefile:
     As above.
2017-08-21 22:02:22 +10:00

335 lines
4.6 KiB
Plaintext

*** Test binary operation '+' ***
0 + 0 = 0
0 + 1 = 1
0 + 2 = 2
0 + 8 = 8
0 + 10 = 10
0 + 16 = 16
0 + 255 = 255
0 + 65535 = 65535
1 + 0 = 1
1 + 1 = 2
1 + 2 = 3
1 + 8 = 9
1 + 10 = 11
1 + 16 = 17
1 + 255 = 256
1 + 65535 = 0
2 + 0 = 2
2 + 1 = 3
2 + 2 = 4
2 + 8 = 10
2 + 10 = 12
2 + 16 = 18
2 + 255 = 257
2 + 65535 = 1
8 + 0 = 8
8 + 1 = 9
8 + 2 = 10
8 + 8 = 16
8 + 10 = 18
8 + 16 = 24
8 + 255 = 263
8 + 65535 = 7
10 + 0 = 10
10 + 1 = 11
10 + 2 = 12
10 + 8 = 18
10 + 10 = 20
10 + 16 = 26
10 + 255 = 265
10 + 65535 = 9
16 + 0 = 16
16 + 1 = 17
16 + 2 = 18
16 + 8 = 24
16 + 10 = 26
16 + 16 = 32
16 + 255 = 271
16 + 65535 = 15
255 + 0 = 255
255 + 1 = 256
255 + 2 = 257
255 + 8 = 263
255 + 10 = 265
255 + 16 = 271
255 + 255 = 510
255 + 65535 = 254
65535 + 0 = 65535
65535 + 1 = 0
65535 + 2 = 1
65535 + 8 = 7
65535 + 10 = 9
65535 + 16 = 15
65535 + 255 = 254
65535 + 65535 = 65534
*** Test binary operation '-' ***
0 - 0 = 0
0 - 1 = 65535
0 - 2 = 65534
0 - 8 = 65528
0 - 10 = 65526
0 - 16 = 65520
0 - 255 = 65281
0 - 65535 = 1
1 - 0 = 1
1 - 1 = 0
1 - 2 = 65535
1 - 8 = 65529
1 - 10 = 65527
1 - 16 = 65521
1 - 255 = 65282
1 - 65535 = 2
2 - 0 = 2
2 - 1 = 1
2 - 2 = 0
2 - 8 = 65530
2 - 10 = 65528
2 - 16 = 65522
2 - 255 = 65283
2 - 65535 = 3
8 - 0 = 8
8 - 1 = 7
8 - 2 = 6
8 - 8 = 0
8 - 10 = 65534
8 - 16 = 65528
8 - 255 = 65289
8 - 65535 = 9
10 - 0 = 10
10 - 1 = 9
10 - 2 = 8
10 - 8 = 2
10 - 10 = 0
10 - 16 = 65530
10 - 255 = 65291
10 - 65535 = 11
16 - 0 = 16
16 - 1 = 15
16 - 2 = 14
16 - 8 = 8
16 - 10 = 6
16 - 16 = 0
16 - 255 = 65297
16 - 65535 = 17
255 - 0 = 255
255 - 1 = 254
255 - 2 = 253
255 - 8 = 247
255 - 10 = 245
255 - 16 = 239
255 - 255 = 0
255 - 65535 = 256
65535 - 0 = 65535
65535 - 1 = 65534
65535 - 2 = 65533
65535 - 8 = 65527
65535 - 10 = 65525
65535 - 16 = 65519
65535 - 255 = 65280
65535 - 65535 = 0
*** Test binary operation '*' ***
0 * 0 = 0
0 * 1 = 0
0 * 2 = 0
0 * 8 = 0
0 * 10 = 0
0 * 16 = 0
0 * 255 = 0
0 * 65535 = 0
1 * 0 = 0
1 * 1 = 1
1 * 2 = 2
1 * 8 = 8
1 * 10 = 10
1 * 16 = 16
1 * 255 = 255
1 * 65535 = 65535
2 * 0 = 0
2 * 1 = 2
2 * 2 = 4
2 * 8 = 16
2 * 10 = 20
2 * 16 = 32
2 * 255 = 510
2 * 65535 = 65534
8 * 0 = 0
8 * 1 = 8
8 * 2 = 16
8 * 8 = 64
8 * 10 = 80
8 * 16 = 128
8 * 255 = 2040
8 * 65535 = 65528
10 * 0 = 0
10 * 1 = 10
10 * 2 = 20
10 * 8 = 80
10 * 10 = 100
10 * 16 = 160
10 * 255 = 2550
10 * 65535 = 65526
16 * 0 = 0
16 * 1 = 16
16 * 2 = 32
16 * 8 = 128
16 * 10 = 160
16 * 16 = 256
16 * 255 = 4080
16 * 65535 = 65520
255 * 0 = 0
255 * 1 = 255
255 * 2 = 510
255 * 8 = 2040
255 * 10 = 2550
255 * 16 = 4080
255 * 255 = 65025
255 * 65535 = 65281
65535 * 0 = 0
65535 * 1 = 65535
65535 * 2 = 65534
65535 * 8 = 65528
65535 * 10 = 65526
65535 * 16 = 65520
65535 * 255 = 65281
65535 * 65535 = 1
*** Test binary operation '/' ***
0 / 0 = <<exception>>
0 / 1 = 0
0 / 2 = 0
0 / 8 = 0
0 / 10 = 0
0 / 16 = 0
0 / 255 = 0
0 / 65535 = 0
1 / 0 = <<exception>>
1 / 1 = 1
1 / 2 = 0
1 / 8 = 0
1 / 10 = 0
1 / 16 = 0
1 / 255 = 0
1 / 65535 = 0
2 / 0 = <<exception>>
2 / 1 = 2
2 / 2 = 1
2 / 8 = 0
2 / 10 = 0
2 / 16 = 0
2 / 255 = 0
2 / 65535 = 0
8 / 0 = <<exception>>
8 / 1 = 8
8 / 2 = 4
8 / 8 = 1
8 / 10 = 0
8 / 16 = 0
8 / 255 = 0
8 / 65535 = 0
10 / 0 = <<exception>>
10 / 1 = 10
10 / 2 = 5
10 / 8 = 1
10 / 10 = 1
10 / 16 = 0
10 / 255 = 0
10 / 65535 = 0
16 / 0 = <<exception>>
16 / 1 = 16
16 / 2 = 8
16 / 8 = 2
16 / 10 = 1
16 / 16 = 1
16 / 255 = 0
16 / 65535 = 0
255 / 0 = <<exception>>
255 / 1 = 255
255 / 2 = 127
255 / 8 = 31
255 / 10 = 25
255 / 16 = 15
255 / 255 = 1
255 / 65535 = 0
65535 / 0 = <<exception>>
65535 / 1 = 65535
65535 / 2 = 32767
65535 / 8 = 8191
65535 / 10 = 6553
65535 / 16 = 4095
65535 / 255 = 257
65535 / 65535 = 1
*** Test binary operation 'rem' ***
0 rem 0 = <<exception>>
0 rem 1 = 0
0 rem 2 = 0
0 rem 8 = 0
0 rem 10 = 0
0 rem 16 = 0
0 rem 255 = 0
0 rem 65535 = 0
1 rem 0 = <<exception>>
1 rem 1 = 0
1 rem 2 = 1
1 rem 8 = 1
1 rem 10 = 1
1 rem 16 = 1
1 rem 255 = 1
1 rem 65535 = 1
2 rem 0 = <<exception>>
2 rem 1 = 0
2 rem 2 = 0
2 rem 8 = 2
2 rem 10 = 2
2 rem 16 = 2
2 rem 255 = 2
2 rem 65535 = 2
8 rem 0 = <<exception>>
8 rem 1 = 0
8 rem 2 = 0
8 rem 8 = 0
8 rem 10 = 8
8 rem 16 = 8
8 rem 255 = 8
8 rem 65535 = 8
10 rem 0 = <<exception>>
10 rem 1 = 0
10 rem 2 = 0
10 rem 8 = 2
10 rem 10 = 0
10 rem 16 = 10
10 rem 255 = 10
10 rem 65535 = 10
16 rem 0 = <<exception>>
16 rem 1 = 0
16 rem 2 = 0
16 rem 8 = 0
16 rem 10 = 6
16 rem 16 = 0
16 rem 255 = 16
16 rem 65535 = 16
255 rem 0 = <<exception>>
255 rem 1 = 0
255 rem 2 = 1
255 rem 8 = 7
255 rem 10 = 5
255 rem 16 = 15
255 rem 255 = 0
255 rem 65535 = 255
65535 rem 0 = <<exception>>
65535 rem 1 = 0
65535 rem 2 = 1
65535 rem 8 = 7
65535 rem 10 = 5
65535 rem 16 = 15
65535 rem 255 = 0
65535 rem 65535 = 0