summaryrefslogtreecommitdiff
path: root/test/float_ops.post.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2015-11-01 11:36:33 -0800
committerAlon Zakai <alonzakai@gmail.com>2015-11-01 11:36:33 -0800
commitf8ca2533c9c3a389375e4f6b4b78f09eb6dee30c (patch)
tree6a5f5a2d0dac0ee3a39fc2c261942e35e7b6239f /test/float_ops.post.js
parentb0f8bb17b8695698541f241a37e9b43cdd441206 (diff)
downloadbinaryen-f8ca2533c9c3a389375e4f6b4b78f09eb6dee30c.tar.gz
binaryen-f8ca2533c9c3a389375e4f6b4b78f09eb6dee30c.tar.bz2
binaryen-f8ca2533c9c3a389375e4f6b4b78f09eb6dee30c.zip
add float_ops testcase
Diffstat (limited to 'test/float_ops.post.js')
-rw-r--r--test/float_ops.post.js66
1 files changed, 66 insertions, 0 deletions
diff --git a/test/float_ops.post.js b/test/float_ops.post.js
new file mode 100644
index 000000000..f05d3ba7b
--- /dev/null
+++ b/test/float_ops.post.js
@@ -0,0 +1,66 @@
+
+// unary
+function testUnary(name) {
+ Module.print(name);
+ function doTest(x) {
+ Module.print(' ' + [x] + ' ==> ' + Module['_' + name](x));
+ }
+ doTest(0);
+ doTest(1);
+ doTest(-1);
+ doTest(0.5);
+ doTest(-0.5);
+ doTest(1.4);
+ doTest(-1.4);
+ doTest(1.6);
+ doTest(-1.6);
+}
+testUnary('dfloor');
+
+// binary
+function testBinary(name) {
+ Module.print(name);
+ 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);
+ doTest(0.12, 0.12);
+ doTest(0.812, 1);
+ doTest(1.821, 0);
+ doTest(1, 1.212);
+ doTest(5.543, 6);
+ doTest(6, 5.121);
+ doTest(101.001, -12);
+ doTest(-12.001, 101);
+ doTest(-1, 5.123);
+ doTest(5, -1.123);
+ doTest(-1, -1.123);
+}
+testBinary('dadd');
+testBinary('dsub');
+testBinary('dmul');
+testBinary('ddiv');
+testBinary('dcopysign');
+testBinary('dmin');
+testBinary('dmax');
+
+// comparisons
+testBinary('deq');
+testBinary('dne');
+testBinary('dlt');
+testBinary('dle');
+testBinary('dgt');
+testBinary('dge');
+
+Module.print('done.');
+