From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- js/src/jit-test/tests/asm.js/bug1126251.js | 53 ++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 js/src/jit-test/tests/asm.js/bug1126251.js (limited to 'js/src/jit-test/tests/asm.js/bug1126251.js') diff --git a/js/src/jit-test/tests/asm.js/bug1126251.js b/js/src/jit-test/tests/asm.js/bug1126251.js new file mode 100644 index 000000000..8470a9772 --- /dev/null +++ b/js/src/jit-test/tests/asm.js/bug1126251.js @@ -0,0 +1,53 @@ +load(libdir + "asm.js"); + +// Bug 1126251 +var v = asmLink(asmCompile('global', ` + "use asm"; + var frd = global.Math.fround; + function e() { + var x = frd(.1e+71); + x = frd(x / x); + return +x; + } + return e; +`), this)(); + +assertEq(v, NaN); + +if (!isSimdAvailable() || typeof SIMD === 'undefined') { + quit(0); +} + +var v = asmLink(asmCompile('global', ` + "use asm"; + var frd = global.Math.fround; + var Float32x4 = global.SIMD.Float32x4; + var splat = Float32x4.splat; + var ext = Float32x4.extractLane; + function e() { + var v = Float32x4(0,0,0,0); + var x = frd(0.); + v = splat(.1e+71); + x = ext(v,0); + x = frd(x / x); + return +x; + } + return e; +`), this)(); + +assertEq(v, NaN); + +// Bug 1130618: without GVN +setJitCompilerOption("ion.gvn.enable", 0); +var v = asmLink(asmCompile('global', ` + "use asm"; + var Float32x4 = global.SIMD.Float32x4; + var splat = Float32x4.splat; + var ext = Float32x4.extractLane; + function e() { + return +ext(splat(.1e+71),0); + } + return e; +`), this)(); + +assertEq(v, Infinity); -- cgit v1.2.3