summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/wasm/extract-code.js
blob: 63b8624f41d462ec2fe7269cbaede980ed1a6b11 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
load(libdir + "wasm.js");

var module = new WebAssembly.Module(wasmTextToBinary(`(module (func (nop)))`));
var exp = wasmExtractCode(module);
assertEq(exp.code instanceof Uint8Array, true);
assertEq(Array.isArray(exp.segments), true);
var funcs = exp.segments.filter(s => s.kind === 0);
assertEq(funcs.length, 1);
assertEq(funcs[0].funcIndex, 0);
assertEq(funcs[0].begin >= 0, true);
assertEq(funcs[0].begin <= funcs[0].funcBodyBegin, true);
assertEq(funcs[0].funcBodyBegin < funcs[0].funcBodyEnd, true);
assertEq(funcs[0].funcBodyEnd <= funcs[0].end, true);
assertEq(funcs[0].end <= exp.code.length, true);