function assert(b) { if (!b) throw new Error; } function foo(view) { let x = view.getFloat64(0); return [x, x | 0]; } noInline(foo); let buffer = new ArrayBuffer(8); let view = new DataView(buffer); for (let i = 0; i < 1000000; ++i) { for (let i = 0; i < 8; ++i) { view.setInt8(i, Math.random() * 255); } let [a, b] = foo(view); if (isNaN(a)) assert(b === 0); }