diff --git a/test/ikc3/integer_bnot.out.expected b/test/ikc3/integer_bnot.out.expected
index dbc152d..d2d6255 100644
--- a/test/ikc3/integer_bnot.out.expected
+++ b/test/ikc3/integer_bnot.out.expected
@@ -3,35 +3,35 @@
~ -170141183460469231731687303715884105727
170141183460469231731687303715884105726
~ -9223372036854775808
-9223372036854775807
+(S64) 9223372036854775807
~ -9223372036854775807
-9223372036854775806
+(S64) 9223372036854775806
~ -2147483648
-2147483647
+(S32) 2147483647
~ -2147483647
-2147483646
+(S32) 2147483646
~ -32768
-32767
+(S16) 32767
~ -32767
-32766
+(S16) 32766
~ -128
-127
+(S8) 127
~ -127
-126
+(S8) 126
~ 255
0
~ 256
65279
~ 65535
-0
+(U16) 0
~ 65536
4294901759
~ 4294967295
-0
+(U32) 0
~ 4294967296
18446744069414584319
~ 18446744073709551615
-0
+(U64) 0
~ 18446744073709551616
-18446744073709551617
~ 340282366920938463463374607431768211455
diff --git a/test/ikc3/integer_bor-2.out.expected b/test/ikc3/integer_bor-2.out.expected
index c0fa0ba..f7927a0 100644
--- a/test/ikc3/integer_bor-2.out.expected
+++ b/test/ikc3/integer_bor-2.out.expected
@@ -87,17 +87,17 @@
-9223372036854775808 bor -9223372036854775807
-9223372036854775807
-9223372036854775808 bor -2147483648
--2147483648
+(S64) -2147483648
-9223372036854775808 bor -2147483647
--2147483647
+(S64) -2147483647
-9223372036854775808 bor -32768
--32768
+(S64) -32768
-9223372036854775808 bor -32767
--32767
+(S64) -32767
-9223372036854775808 bor -128
--128
+(S64) -128
-9223372036854775808 bor -127
--127
+(S64) -127
-9223372036854775808 bor 255
-9223372036854775553
-9223372036854775808 bor 256
@@ -127,17 +127,17 @@
-9223372036854775807 bor -9223372036854775807
-9223372036854775807
-9223372036854775807 bor -2147483648
--2147483647
+(S64) -2147483647
-9223372036854775807 bor -2147483647
--2147483647
+(S64) -2147483647
-9223372036854775807 bor -32768
--32767
+(S64) -32767
-9223372036854775807 bor -32767
--32767
+(S64) -32767
-9223372036854775807 bor -128
--127
+(S64) -127
-9223372036854775807 bor -127
--127
+(S64) -127
-9223372036854775807 bor 255
-9223372036854775553
-9223372036854775807 bor 256
@@ -163,21 +163,21 @@
-2147483648 bor -170141183460469231731687303715884105727
-2147483647
-2147483648 bor -9223372036854775808
--2147483648
+(S64) -2147483648
-2147483648 bor -9223372036854775807
--2147483647
+(S64) -2147483647
-2147483648 bor -2147483648
-2147483648
-2147483648 bor -2147483647
-2147483647
-2147483648 bor -32768
--32768
+(S32) -32768
-2147483648 bor -32767
--32767
+(S32) -32767
-2147483648 bor -128
--128
+(S32) -128
-2147483648 bor -127
--127
+(S32) -127
-2147483648 bor 255
-2147483393
-2147483648 bor 256
@@ -185,9 +185,9 @@
-2147483648 bor 65535
-2147418113
-2147483648 bor 65536
--2147418112
+(S64) -2147418112
-2147483648 bor 4294967295
--1
+(S64) -1
-2147483648 bor 4294967296
-2147483648
-2147483648 bor 18446744073709551615
@@ -203,21 +203,21 @@
-2147483647 bor -170141183460469231731687303715884105727
-2147483647
-2147483647 bor -9223372036854775808
--2147483647
+(S64) -2147483647
-2147483647 bor -9223372036854775807
--2147483647
+(S64) -2147483647
-2147483647 bor -2147483648
-2147483647
-2147483647 bor -2147483647
-2147483647
-2147483647 bor -32768
--32767
+(S32) -32767
-2147483647 bor -32767
--32767
+(S32) -32767
-2147483647 bor -128
--127
+(S32) -127
-2147483647 bor -127
--127
+(S32) -127
-2147483647 bor 255
-2147483393
-2147483647 bor 256
@@ -225,9 +225,9 @@
-2147483647 bor 65535
-2147418113
-2147483647 bor 65536
--2147418111
+(S64) -2147418111
-2147483647 bor 4294967295
--1
+(S64) -1
-2147483647 bor 4294967296
-2147483647
-2147483647 bor 18446744073709551615
@@ -243,31 +243,31 @@
-32768 bor -170141183460469231731687303715884105727
-32767
-32768 bor -9223372036854775808
--32768
+(S64) -32768
-32768 bor -9223372036854775807
--32767
+(S64) -32767
-32768 bor -2147483648
--32768
+(S32) -32768
-32768 bor -2147483647
--32767
+(S32) -32767
-32768 bor -32768
-32768
-32768 bor -32767
-32767
-32768 bor -128
--128
+(S16) -128
-32768 bor -127
--127
+(S16) -127
-32768 bor 255
-32513
-32768 bor 256
--32512
+(S32) -32512
-32768 bor 65535
--1
+(S32) -1
-32768 bor 65536
--32768
+(S64) -32768
-32768 bor 4294967295
--1
+(S64) -1
-32768 bor 4294967296
-32768
-32768 bor 18446744073709551615
@@ -283,31 +283,31 @@
-32767 bor -170141183460469231731687303715884105727
-32767
-32767 bor -9223372036854775808
--32767
+(S64) -32767
-32767 bor -9223372036854775807
--32767
+(S64) -32767
-32767 bor -2147483648
--32767
+(S32) -32767
-32767 bor -2147483647
--32767
+(S32) -32767
-32767 bor -32768
-32767
-32767 bor -32767
-32767
-32767 bor -128
--127
+(S16) -127
-32767 bor -127
--127
+(S16) -127
-32767 bor 255
-32513
-32767 bor 256
--32511
+(S32) -32511
-32767 bor 65535
--1
+(S32) -1
-32767 bor 65536
--32767
+(S64) -32767
-32767 bor 4294967295
--1
+(S64) -1
-32767 bor 4294967296
-32767
-32767 bor 18446744073709551615
@@ -323,31 +323,31 @@
-128 bor -170141183460469231731687303715884105727
-127
-128 bor -9223372036854775808
--128
+(S64) -128
-128 bor -9223372036854775807
--127
+(S64) -127
-128 bor -2147483648
--128
+(S32) -128
-128 bor -2147483647
--127
+(S32) -127
-128 bor -32768
--128
+(S16) -128
-128 bor -32767
--127
+(S16) -127
-128 bor -128
-128
-128 bor -127
-127
-128 bor 255
--1
+(S16) -1
-128 bor 256
--128
+(S32) -128
-128 bor 65535
--1
+(S32) -1
-128 bor 65536
--128
+(S64) -128
-128 bor 4294967295
--1
+(S64) -1
-128 bor 4294967296
-128
-128 bor 18446744073709551615
@@ -363,31 +363,31 @@
-127 bor -170141183460469231731687303715884105727
-127
-127 bor -9223372036854775808
--127
+(S64) -127
-127 bor -9223372036854775807
--127
+(S64) -127
-127 bor -2147483648
--127
+(S32) -127
-127 bor -2147483647
--127
+(S32) -127
-127 bor -32768
--127
+(S16) -127
-127 bor -32767
--127
+(S16) -127
-127 bor -128
-127
-127 bor -127
-127
-127 bor 255
--1
+(S16) -1
-127 bor 256
--127
+(S32) -127
-127 bor 65535
--1
+(S32) -1
-127 bor 65536
--127
+(S64) -127
-127 bor 4294967295
--1
+(S64) -1
-127 bor 4294967296
-127
-127 bor 18446744073709551615
@@ -415,9 +415,9 @@
255 bor -32767
-32513
255 bor -128
--1
+(S16) -1
255 bor -127
--1
+(S16) -1
255 bor 255
255
255 bor 256
@@ -451,13 +451,13 @@
256 bor -2147483647
-2147483391
256 bor -32768
--32512
+(S32) -32512
256 bor -32767
--32511
+(S32) -32511
256 bor -128
--128
+(S32) -128
256 bor -127
--127
+(S32) -127
256 bor 255
511
256 bor 256
@@ -491,13 +491,13 @@
65535 bor -2147483647
-2147418113
65535 bor -32768
--1
+(S32) -1
65535 bor -32767
--1
+(S32) -1
65535 bor -128
--1
+(S32) -1
65535 bor -127
--1
+(S32) -1
65535 bor 255
65535
65535 bor 256
@@ -527,17 +527,17 @@
65536 bor -9223372036854775807
-9223372036854710271
65536 bor -2147483648
--2147418112
+(S64) -2147418112
65536 bor -2147483647
--2147418111
+(S64) -2147418111
65536 bor -32768
--32768
+(S64) -32768
65536 bor -32767
--32767
+(S64) -32767
65536 bor -128
--128
+(S64) -128
65536 bor -127
--127
+(S64) -127
65536 bor 255
65791
65536 bor 256
@@ -567,17 +567,17 @@
4294967295 bor -9223372036854775807
-9223372032559808513
4294967295 bor -2147483648
--1
+(S64) -1
4294967295 bor -2147483647
--1
+(S64) -1
4294967295 bor -32768
--1
+(S64) -1
4294967295 bor -32767
--1
+(S64) -1
4294967295 bor -128
--1
+(S64) -1
4294967295 bor -127
--1
+(S64) -1
4294967295 bor 255
4294967295
4294967295 bor 256
diff --git a/test/ikc3/integer_bxor.out.expected b/test/ikc3/integer_bxor.out.expected
index 835766b..e97cad2 100644
--- a/test/ikc3/integer_bxor.out.expected
+++ b/test/ikc3/integer_bxor.out.expected
@@ -83,21 +83,21 @@
-9223372036854775808 ^ -170141183460469231731687303715884105727
170141183460469231722463931679029329921
-9223372036854775808 ^ -9223372036854775808
-0
+(S64) 0
-9223372036854775808 ^ -9223372036854775807
-1
+(S64) 1
-9223372036854775808 ^ -2147483648
-9223372034707292160
+(S64) 9223372034707292160
-9223372036854775808 ^ -2147483647
-9223372034707292161
+(S64) 9223372034707292161
-9223372036854775808 ^ -32768
-9223372036854743040
+(S64) 9223372036854743040
-9223372036854775808 ^ -32767
-9223372036854743041
+(S64) 9223372036854743041
-9223372036854775808 ^ -128
-9223372036854775680
+(S64) 9223372036854775680
-9223372036854775808 ^ -127
-9223372036854775681
+(S64) 9223372036854775681
-9223372036854775808 ^ 255
-9223372036854775553
-9223372036854775808 ^ 256
@@ -123,21 +123,21 @@
-9223372036854775807 ^ -170141183460469231731687303715884105727
170141183460469231722463931679029329920
-9223372036854775807 ^ -9223372036854775808
-1
+(S64) 1
-9223372036854775807 ^ -9223372036854775807
-0
+(S64) 0
-9223372036854775807 ^ -2147483648
-9223372034707292161
+(S64) 9223372034707292161
-9223372036854775807 ^ -2147483647
-9223372034707292160
+(S64) 9223372034707292160
-9223372036854775807 ^ -32768
-9223372036854743041
+(S64) 9223372036854743041
-9223372036854775807 ^ -32767
-9223372036854743040
+(S64) 9223372036854743040
-9223372036854775807 ^ -128
-9223372036854775681
+(S64) 9223372036854775681
-9223372036854775807 ^ -127
-9223372036854775680
+(S64) 9223372036854775680
-9223372036854775807 ^ 255
-9223372036854775554
-9223372036854775807 ^ 256
@@ -163,21 +163,21 @@
-2147483648 ^ -170141183460469231731687303715884105727
170141183460469231731687303713736622081
-2147483648 ^ -9223372036854775808
-9223372034707292160
+(S64) 9223372034707292160
-2147483648 ^ -9223372036854775807
-9223372034707292161
+(S64) 9223372034707292161
-2147483648 ^ -2147483648
-0
+(S32) 0
-2147483648 ^ -2147483647
-1
+(S32) 1
-2147483648 ^ -32768
-2147450880
+(S32) 2147450880
-2147483648 ^ -32767
-2147450881
+(S32) 2147450881
-2147483648 ^ -128
-2147483520
+(S32) 2147483520
-2147483648 ^ -127
-2147483521
+(S32) 2147483521
-2147483648 ^ 255
-2147483393
-2147483648 ^ 256
@@ -185,7 +185,7 @@
-2147483648 ^ 65535
-2147418113
-2147483648 ^ 65536
--2147418112
+(S64) -2147418112
-2147483648 ^ 4294967295
-2147483649
-2147483648 ^ 4294967296
@@ -203,21 +203,21 @@
-2147483647 ^ -170141183460469231731687303715884105727
170141183460469231731687303713736622080
-2147483647 ^ -9223372036854775808
-9223372034707292161
+(S64) 9223372034707292161
-2147483647 ^ -9223372036854775807
-9223372034707292160
+(S64) 9223372034707292160
-2147483647 ^ -2147483648
-1
+(S32) 1
-2147483647 ^ -2147483647
-0
+(S32) 0
-2147483647 ^ -32768
-2147450881
+(S32) 2147450881
-2147483647 ^ -32767
-2147450880
+(S32) 2147450880
-2147483647 ^ -128
-2147483521
+(S32) 2147483521
-2147483647 ^ -127
-2147483520
+(S32) 2147483520
-2147483647 ^ 255
-2147483394
-2147483647 ^ 256
@@ -225,7 +225,7 @@
-2147483647 ^ 65535
-2147418114
-2147483647 ^ 65536
--2147418111
+(S64) -2147418111
-2147483647 ^ 4294967295
-2147483650
-2147483647 ^ 4294967296
@@ -243,29 +243,29 @@
-32768 ^ -170141183460469231731687303715884105727
170141183460469231731687303715884072961
-32768 ^ -9223372036854775808
-9223372036854743040
+(S64) 9223372036854743040
-32768 ^ -9223372036854775807
-9223372036854743041
+(S64) 9223372036854743041
-32768 ^ -2147483648
-2147450880
+(S32) 2147450880
-32768 ^ -2147483647
-2147450881
+(S32) 2147450881
-32768 ^ -32768
-0
+(S16) 0
-32768 ^ -32767
-1
+(S16) 1
-32768 ^ -128
-32640
+(S16) 32640
-32768 ^ -127
-32641
+(S16) 32641
-32768 ^ 255
-32513
-32768 ^ 256
--32512
+(S32) -32512
-32768 ^ 65535
-32769
-32768 ^ 65536
--98304
+(S64) -98304
-32768 ^ 4294967295
-4294934529
-32768 ^ 4294967296
@@ -283,29 +283,29 @@
-32767 ^ -170141183460469231731687303715884105727
170141183460469231731687303715884072960
-32767 ^ -9223372036854775808
-9223372036854743041
+(S64) 9223372036854743041
-32767 ^ -9223372036854775807
-9223372036854743040
+(S64) 9223372036854743040
-32767 ^ -2147483648
-2147450881
+(S32) 2147450881
-32767 ^ -2147483647
-2147450880
+(S32) 2147450880
-32767 ^ -32768
-1
+(S16) 1
-32767 ^ -32767
-0
+(S16) 0
-32767 ^ -128
-32641
+(S16) 32641
-32767 ^ -127
-32640
+(S16) 32640
-32767 ^ 255
-32514
-32767 ^ 256
--32511
+(S32) -32511
-32767 ^ 65535
-32770
-32767 ^ 65536
--98303
+(S64) -98303
-32767 ^ 4294967295
-4294934530
-32767 ^ 4294967296
@@ -323,29 +323,29 @@
-128 ^ -170141183460469231731687303715884105727
170141183460469231731687303715884105601
-128 ^ -9223372036854775808
-9223372036854775680
+(S64) 9223372036854775680
-128 ^ -9223372036854775807
-9223372036854775681
+(S64) 9223372036854775681
-128 ^ -2147483648
-2147483520
+(S32) 2147483520
-128 ^ -2147483647
-2147483521
+(S32) 2147483521
-128 ^ -32768
-32640
+(S16) 32640
-128 ^ -32767
-32641
+(S16) 32641
-128 ^ -128
-0
+(S8) 0
-128 ^ -127
-1
+(S8) 1
-128 ^ 255
-129
-128 ^ 256
--384
+(S32) -384
-128 ^ 65535
-65409
-128 ^ 65536
--65664
+(S64) -65664
-128 ^ 4294967295
-4294967169
-128 ^ 4294967296
@@ -363,29 +363,29 @@
-127 ^ -170141183460469231731687303715884105727
170141183460469231731687303715884105600
-127 ^ -9223372036854775808
-9223372036854775681
+(S64) 9223372036854775681
-127 ^ -9223372036854775807
-9223372036854775680
+(S64) 9223372036854775680
-127 ^ -2147483648
-2147483521
+(S32) 2147483521
-127 ^ -2147483647
-2147483520
+(S32) 2147483520
-127 ^ -32768
-32641
+(S16) 32641
-127 ^ -32767
-32640
+(S16) 32640
-127 ^ -128
-1
+(S8) 1
-127 ^ -127
-0
+(S8) 0
-127 ^ 255
-130
-127 ^ 256
--383
+(S32) -383
-127 ^ 65535
-65410
-127 ^ 65536
--65663
+(S64) -65663
-127 ^ 4294967295
-4294967170
-127 ^ 4294967296
@@ -451,17 +451,17 @@
256 ^ -2147483647
-2147483391
256 ^ -32768
--32512
+(S32) -32512
256 ^ -32767
--32511
+(S32) -32511
256 ^ -128
--384
+(S32) -384
256 ^ -127
--383
+(S32) -383
256 ^ 255
511
256 ^ 256
-0
+(U16) 0
256 ^ 65535
65279
256 ^ 65536
@@ -503,7 +503,7 @@
65535 ^ 256
65279
65535 ^ 65535
-0
+(U16) 0
65535 ^ 65536
131071
65535 ^ 4294967295
@@ -527,17 +527,17 @@
65536 ^ -9223372036854775807
-9223372036854710271
65536 ^ -2147483648
--2147418112
+(S64) -2147418112
65536 ^ -2147483647
--2147418111
+(S64) -2147418111
65536 ^ -32768
--98304
+(S64) -98304
65536 ^ -32767
--98303
+(S64) -98303
65536 ^ -128
--65664
+(S64) -65664
65536 ^ -127
--65663
+(S64) -65663
65536 ^ 255
65791
65536 ^ 256
@@ -545,7 +545,7 @@
65536 ^ 65535
131071
65536 ^ 65536
-0
+(U32) 0
65536 ^ 4294967295
4294901759
65536 ^ 4294967296
@@ -587,7 +587,7 @@
4294967295 ^ 65536
4294901759
4294967295 ^ 4294967295
-0
+(U32) 0
4294967295 ^ 4294967296
8589934591
4294967295 ^ 18446744073709551615