js/src/jit-test/tests/jaeger/inline/mathAbs.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1
michael@0 2 assertEq(Math.abs(-10), 10);
michael@0 3 assertEq(Math.abs(-2147483648), 2147483648);
michael@0 4 assertEq(Math.abs(2147483648), 2147483648);
michael@0 5 assertEq(Math.abs(-0), 0);
michael@0 6 assertEq(Math.abs(0), 0);
michael@0 7 assertEq(Math.abs(-3.14), 3.14);
michael@0 8 assertEq(Math.abs(NaN), NaN);
michael@0 9
michael@0 10 /* Inferred as abs(int). */
michael@0 11 function abs1(x) {
michael@0 12 return Math.abs(x);
michael@0 13 }
michael@0 14 assertEq(abs1(1), 1);
michael@0 15 assertEq(abs1(-1), 1);
michael@0 16 assertEq(abs1(0), 0);
michael@0 17 assertEq(abs1(-123) + abs1(234), 357);
michael@0 18 assertEq(abs1(-2147483648), 2147483648); // recompile to return double
michael@0 19 assertEq(abs1(-2), 2);
michael@0 20
michael@0 21 /* Inferred as abs(double). */
michael@0 22 function abs2(x) {
michael@0 23 return Math.abs(x);
michael@0 24 }
michael@0 25 assertEq(abs2(-2.2), 2.2);
michael@0 26 assertEq(abs2(123), 123);
michael@0 27 assertEq(abs2(-456), 456);
michael@0 28 assertEq(abs2(-0), 0);
michael@0 29 assertEq(abs2(1.3), 1.3);
michael@0 30 assertEq(abs2(NaN), NaN);
michael@0 31

mercurial