summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/wasm/stealing.js
blob: 6e4e60b9b14d73318835f5b49fc33ee4cc9c1bb4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var exp = wasmEvalText(`(module
    (memory 1)
    (export "mem" (memory 0))
    (func $f (result i32) (i32.load (i32.const 0)))
    (export "f" (func $f))
)`).exports;

var ab = exp.mem.buffer;
new Int32Array(ab)[0] = 42;

assertEq(exp.f(), 42);

assertThrowsInstanceOf(() => detachArrayBuffer(ab), Error);
assertEq(exp.f(), 42);

assertThrowsInstanceOf(() => serialize(ab, [ab]), Error);
assertEq(exp.f(), 42);