| asyncTestStart(1); |
| let context = { |
| env: globalThis, |
| }; |
| |
| globalThis.__linear_memory = new WebAssembly.Memory({ initial: 1 }); |
| globalThis.callerIsOMGCompiled = callerIsBBQOrOMGCompiled; // Can't change the .wast easily... |
| |
| async function runWasmFile(filePath) { |
| let blob = readFile(filePath, "binary"); |
| let instance; |
| let result; |
| try { |
| let compiled = await WebAssembly.instantiate(blob, context); |
| instance = compiled.instance; |
| result = instance.exports.test(); |
| |
| if (instance.exports.checkResult && !instance.exports.checkResult(result)) |
| throw new Error("Got result " + result + " but checkResult returned false"); |
| } catch (e) { |
| print(e); |
| throw e; |
| } |
| |
| asyncTestPassed(); |
| } |
| |
| for (wasmFile of arguments) |
| runWasmFile(wasmFile); |