summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/testPos.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/ion/testPos.js')
-rw-r--r--js/src/jit-test/tests/ion/testPos.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/testPos.js b/js/src/jit-test/tests/ion/testPos.js
new file mode 100644
index 0000000000..197650e9b1
--- /dev/null
+++ b/js/src/jit-test/tests/ion/testPos.js
@@ -0,0 +1,32 @@
+// vim: set ts=8 sts=4 et sw=4 tw=99:
+function f_int(x) {
+ return +x;
+}
+
+function f_double(x) {
+ return +x;
+}
+
+for (var i = 0; i < 1000; i++) {
+ assertEq(f_int(0), 0);
+ assertEq(f_int(1), 1);
+ assertEq(f_int(-1), -1);
+ assertEq(f_int(-2147483648), -2147483648);
+ assertEq(f_int(2147483647), 2147483647);
+}
+
+for (var i = 0; i < 1000; i++) {
+ assertEq(f_double(0.0), 0.0);
+ assertEq(f_double(1.0), 1.0);
+ assertEq(f_double(-1.0), -1.0);
+ assertEq(f_double(-2.147483648), -2.147483648);
+ assertEq(f_double(2.147483647), 2.147483647);
+}
+
+for (var i = 0; i < 1000; i++) {
+ assertEq(f_double("0.0"), 0.0);
+ assertEq(f_double("1.0"), 1.0);
+ assertEq(f_double("-1.0"), -1.0);
+ assertEq(f_double("-2.147483648"), -2.147483648);
+ assertEq(f_double("2.147483647"), 2.147483647);
+}