summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/warp/math-indirect-truncate.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/warp/math-indirect-truncate.js')
-rw-r--r--js/src/jit-test/tests/warp/math-indirect-truncate.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/warp/math-indirect-truncate.js b/js/src/jit-test/tests/warp/math-indirect-truncate.js
new file mode 100644
index 0000000000..9cc967ca33
--- /dev/null
+++ b/js/src/jit-test/tests/warp/math-indirect-truncate.js
@@ -0,0 +1,55 @@
+function testCeil() {
+ function ceil(a, b) {
+ return Math.ceil(a / b) | 0;
+ }
+
+ // Warm-up
+ for (var i = 0; i < 50; i++) {
+ ceil(5, 5);
+ }
+
+ assertEq(ceil(5, 3), 2);
+}
+testCeil();
+
+function testFloor() {
+ function floor(a, b) {
+ return Math.floor(a / b) | 0;
+ }
+
+ // Warm-up
+ for (var i = 0; i < 50; i++) {
+ floor(5, 5);
+ }
+
+ assertEq(floor(-5, 3), -2);
+}
+testFloor();
+
+function testRound() {
+ function round(a, b) {
+ return Math.round(a / b) | 0;
+ }
+
+ // Warm-up
+ for (var i = 0; i < 50; i++) {
+ round(5, 5);
+ }
+
+ assertEq(round(5, 3), 2);
+}
+testRound();
+
+function testTrunc() {
+ function trunc(a, b) {
+ return Math.trunc(a / b) | 0;
+ }
+
+ // Warm-up
+ for (var i = 0; i < 50; i++) {
+ trunc(5, 5);
+ }
+
+ assertEq(trunc(5, 3), 1);
+}
+testTrunc();