// |reftest| skip-if(!this.hasOwnProperty("SIMD")) /* * Any copyright is dedicated to the Public Domain. * http://creativecommons.org/licenses/publicdomain/ */ // Check that NaN normalization is applied when extracting the x lane // out, after bit conversion has occurred. var Int32x4 = SIMD.Int32x4; var a = Int32x4((4294967295), 200, 300, 400); var c = SIMD.Float32x4.fromInt32x4Bits(a); // NaN canonicalization occurs when extracting out x lane: assertEq(SIMD.Float32x4.extractLane(c, 0), NaN); // but underlying bits are faithfully transmitted // (though reinterpreted as a signed integer): var d = SIMD.Int32x4.fromFloat32x4Bits(c); assertEq(SIMD.Int32x4.extractLane(d, 0), -1); if (typeof reportCompare === "function") reportCompare(true, true);