diff options
-rw-r--r-- | test/int_ops.post.js | 25 | ||||
-rw-r--r-- | test/int_ops.txt | 506 |
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. |