summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/int_ops.post.js25
-rw-r--r--test/int_ops.txt506
2 files changed, 267 insertions, 264 deletions
diff --git a/test/int_ops.post.js b/test/int_ops.post.js
index 4ac57fa39..995358b2a 100644
--- a/test/int_ops.post.js
+++ b/test/int_ops.post.js
@@ -8,17 +8,20 @@ Module.print(Module._clz(8));
// binary
function testBinary(name) {
Module.print(name);
- Module.print(Module['_' + name](0, 0));
- Module.print(Module['_' + name](0, 1));
- Module.print(Module['_' + name](1, 0));
- Module.print(Module['_' + name](1, 1));
- Module.print(Module['_' + name](5, 6));
- Module.print(Module['_' + name](6, 5));
- Module.print(Module['_' + name](101, -12));
- Module.print(Module['_' + name](-12, 101));
- Module.print(Module['_' + name](-1, 5));
- Module.print(Module['_' + name](5, -1));
- Module.print(Module['_' + name](-1, -1));
+ function doTest(x, y) {
+ Module.print(' ' + [x, y] + ' ==> ' + Module['_' + name](x, y));
+ }
+ doTest(0, 0);
+ doTest(0, 1);
+ doTest(1, 0);
+ doTest(1, 1);
+ doTest(5, 6);
+ doTest(6, 5);
+ doTest(101, -12);
+ doTest(-12, 101);
+ doTest(-1, 5);
+ doTest(5, -1);
+ doTest(-1, -1);
}
testBinary('add');
testBinary('sub');
diff --git a/test/int_ops.txt b/test/int_ops.txt
index a2a344434..c67a078e1 100644
--- a/test/int_ops.txt
+++ b/test/int_ops.txt
@@ -3,279 +3,279 @@ clz
0
28
add
-0
-1
-1
-2
-11
-11
-89
-89
-4
-4
--2
+ 0,0 ==> 0
+ 0,1 ==> 1
+ 1,0 ==> 1
+ 1,1 ==> 2
+ 5,6 ==> 11
+ 6,5 ==> 11
+ 101,-12 ==> 89
+ -12,101 ==> 89
+ -1,5 ==> 4
+ 5,-1 ==> 4
+ -1,-1 ==> -2
sub
-0
--1
-1
-0
--1
-1
-113
--113
--6
-6
-0
+ 0,0 ==> 0
+ 0,1 ==> -1
+ 1,0 ==> 1
+ 1,1 ==> 0
+ 5,6 ==> -1
+ 6,5 ==> 1
+ 101,-12 ==> 113
+ -12,101 ==> -113
+ -1,5 ==> -6
+ 5,-1 ==> 6
+ -1,-1 ==> 0
mul
-0
-0
-0
-1
-30
-30
--1212
--1212
--5
--5
-1
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 0
+ 1,1 ==> 1
+ 5,6 ==> 30
+ 6,5 ==> 30
+ 101,-12 ==> -1212
+ -12,101 ==> -1212
+ -1,5 ==> -5
+ 5,-1 ==> -5
+ -1,-1 ==> 1
sdiv
-0
-0
-0
-1
-0
-1
--8
-0
-0
--5
-1
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 0
+ 1,1 ==> 1
+ 5,6 ==> 0
+ 6,5 ==> 1
+ 101,-12 ==> -8
+ -12,101 ==> 0
+ -1,5 ==> 0
+ 5,-1 ==> -5
+ -1,-1 ==> 1
udiv
-0
-0
-0
-1
-0
-1
-0
-42524428
-858993459
-0
-1
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 0
+ 1,1 ==> 1
+ 5,6 ==> 0
+ 6,5 ==> 1
+ 101,-12 ==> 0
+ -12,101 ==> 42524428
+ -1,5 ==> 858993459
+ 5,-1 ==> 0
+ -1,-1 ==> 1
srem
-0
-0
-0
-0
-5
-1
-5
--12
--1
-0
-0
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 0
+ 1,1 ==> 0
+ 5,6 ==> 5
+ 6,5 ==> 1
+ 101,-12 ==> 5
+ -12,101 ==> -12
+ -1,5 ==> -1
+ 5,-1 ==> 0
+ -1,-1 ==> 0
urem
-0
-0
-0
-0
-5
-1
-101
-56
-0
-5
-0
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 0
+ 1,1 ==> 0
+ 5,6 ==> 5
+ 6,5 ==> 1
+ 101,-12 ==> 101
+ -12,101 ==> 56
+ -1,5 ==> 0
+ 5,-1 ==> 5
+ -1,-1 ==> 0
and
-0
-0
-0
-1
-4
-4
-100
-100
-5
-5
--1
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 0
+ 1,1 ==> 1
+ 5,6 ==> 4
+ 6,5 ==> 4
+ 101,-12 ==> 100
+ -12,101 ==> 100
+ -1,5 ==> 5
+ 5,-1 ==> 5
+ -1,-1 ==> -1
or
-0
-1
-1
-1
-7
-7
--11
--11
--1
--1
--1
+ 0,0 ==> 0
+ 0,1 ==> 1
+ 1,0 ==> 1
+ 1,1 ==> 1
+ 5,6 ==> 7
+ 6,5 ==> 7
+ 101,-12 ==> -11
+ -12,101 ==> -11
+ -1,5 ==> -1
+ 5,-1 ==> -1
+ -1,-1 ==> -1
xor
-0
-1
-1
-0
-3
-3
--111
--111
--6
--6
-0
+ 0,0 ==> 0
+ 0,1 ==> 1
+ 1,0 ==> 1
+ 1,1 ==> 0
+ 5,6 ==> 3
+ 6,5 ==> 3
+ 101,-12 ==> -111
+ -12,101 ==> -111
+ -1,5 ==> -6
+ 5,-1 ==> -6
+ -1,-1 ==> 0
shl
-0
-0
-1
-2
-320
-192
-105906176
--384
--32
--2147483648
--2147483648
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 1
+ 1,1 ==> 2
+ 5,6 ==> 320
+ 6,5 ==> 192
+ 101,-12 ==> 105906176
+ -12,101 ==> -384
+ -1,5 ==> -32
+ 5,-1 ==> -2147483648
+ -1,-1 ==> -2147483648
sshr
-0
-0
-1
-0
-0
-0
-0
--1
--1
-0
--1
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 1
+ 1,1 ==> 0
+ 5,6 ==> 0
+ 6,5 ==> 0
+ 101,-12 ==> 0
+ -12,101 ==> -1
+ -1,5 ==> -1
+ 5,-1 ==> 0
+ -1,-1 ==> -1
ushr
-0
-0
-1
-0
-0
-0
-0
-134217727
-134217727
-0
-1
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 1
+ 1,1 ==> 0
+ 5,6 ==> 0
+ 6,5 ==> 0
+ 101,-12 ==> 0
+ -12,101 ==> 134217727
+ -1,5 ==> 134217727
+ 5,-1 ==> 0
+ -1,-1 ==> 1
eq
-1
-0
-0
-1
-0
-0
-0
-0
-0
-0
-1
+ 0,0 ==> 1
+ 0,1 ==> 0
+ 1,0 ==> 0
+ 1,1 ==> 1
+ 5,6 ==> 0
+ 6,5 ==> 0
+ 101,-12 ==> 0
+ -12,101 ==> 0
+ -1,5 ==> 0
+ 5,-1 ==> 0
+ -1,-1 ==> 1
ne
-0
-1
-1
-0
-1
-1
-1
-1
-1
-1
-0
+ 0,0 ==> 0
+ 0,1 ==> 1
+ 1,0 ==> 1
+ 1,1 ==> 0
+ 5,6 ==> 1
+ 6,5 ==> 1
+ 101,-12 ==> 1
+ -12,101 ==> 1
+ -1,5 ==> 1
+ 5,-1 ==> 1
+ -1,-1 ==> 0
lts
-0
-1
-0
-0
-1
-0
-0
-1
-1
-0
-0
+ 0,0 ==> 0
+ 0,1 ==> 1
+ 1,0 ==> 0
+ 1,1 ==> 0
+ 5,6 ==> 1
+ 6,5 ==> 0
+ 101,-12 ==> 0
+ -12,101 ==> 1
+ -1,5 ==> 1
+ 5,-1 ==> 0
+ -1,-1 ==> 0
ltu
-0
-1
-0
-0
-1
-0
-1
-0
-0
-1
-0
+ 0,0 ==> 0
+ 0,1 ==> 1
+ 1,0 ==> 0
+ 1,1 ==> 0
+ 5,6 ==> 1
+ 6,5 ==> 0
+ 101,-12 ==> 1
+ -12,101 ==> 0
+ -1,5 ==> 0
+ 5,-1 ==> 1
+ -1,-1 ==> 0
les
-1
-1
-0
-1
-1
-0
-0
-1
-1
-0
-1
+ 0,0 ==> 1
+ 0,1 ==> 1
+ 1,0 ==> 0
+ 1,1 ==> 1
+ 5,6 ==> 1
+ 6,5 ==> 0
+ 101,-12 ==> 0
+ -12,101 ==> 1
+ -1,5 ==> 1
+ 5,-1 ==> 0
+ -1,-1 ==> 1
leu
-1
-1
-0
-1
-1
-0
-1
-0
-0
-1
-1
+ 0,0 ==> 1
+ 0,1 ==> 1
+ 1,0 ==> 0
+ 1,1 ==> 1
+ 5,6 ==> 1
+ 6,5 ==> 0
+ 101,-12 ==> 1
+ -12,101 ==> 0
+ -1,5 ==> 0
+ 5,-1 ==> 1
+ -1,-1 ==> 1
gts
-0
-0
-1
-0
-0
-1
-1
-0
-0
-1
-0
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 1
+ 1,1 ==> 0
+ 5,6 ==> 0
+ 6,5 ==> 1
+ 101,-12 ==> 1
+ -12,101 ==> 0
+ -1,5 ==> 0
+ 5,-1 ==> 1
+ -1,-1 ==> 0
gtu
-0
-0
-1
-0
-0
-1
-0
-1
-1
-0
-0
+ 0,0 ==> 0
+ 0,1 ==> 0
+ 1,0 ==> 1
+ 1,1 ==> 0
+ 5,6 ==> 0
+ 6,5 ==> 1
+ 101,-12 ==> 0
+ -12,101 ==> 1
+ -1,5 ==> 1
+ 5,-1 ==> 0
+ -1,-1 ==> 0
ges
-1
-0
-1
-1
-0
-1
-1
-0
-0
-1
-1
+ 0,0 ==> 1
+ 0,1 ==> 0
+ 1,0 ==> 1
+ 1,1 ==> 1
+ 5,6 ==> 0
+ 6,5 ==> 1
+ 101,-12 ==> 1
+ -12,101 ==> 0
+ -1,5 ==> 0
+ 5,-1 ==> 1
+ -1,-1 ==> 1
geu
-1
-0
-1
-1
-0
-1
-0
-1
-1
-0
-1
+ 0,0 ==> 1
+ 0,1 ==> 0
+ 1,0 ==> 1
+ 1,1 ==> 1
+ 5,6 ==> 0
+ 6,5 ==> 1
+ 101,-12 ==> 0
+ -12,101 ==> 1
+ -1,5 ==> 1
+ 5,-1 ==> 0
+ -1,-1 ==> 1
done.