tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

testcase.js (1091B)


      1 // |jit-test| error: Error
      2 
      3 function wasmRunWithDebugger(wast, lib, init, done) {
      4    let g = newGlobal({newCompartment: true});
      5    let dbg = new Debugger(g);
      6    g.eval(`
      7      var wasm = wasmTextToBinary(\`${wast}\`);
      8      var lib = ${lib || 'undefined'};
      9      var m = new WebAssembly.Instance(new WebAssembly.Module(wasm), lib)
     10    `);
     11    var wasmScript = dbg.findScripts().filter(s => s.format == 'wasm')[0];
     12    init({dbg, wasmScript, g,});
     13    result = g.eval("m.exports.test()");
     14 }
     15 let WasmStructrefValues = [];
     16 let WasmArrayrefValues = [];
     17 let WasmEqrefValues = [	...WasmStructrefValues, ...WasmArrayrefValues];
     18 gczeal(6, 7);
     19 wasmRunWithDebugger(`
     20 (module (memory 1 1)
     21 (func (param i32) (local f64) nop) 
     22 (export "test" (func 0))
     23 (data (i32.const 0) "Abcx2A"))
     24 `, undefined,
     25 function ({dbg}) {
     26  dbg.onEnterFrame = function (frame) {
     27    if (frame.type != 'wasmcall') return;
     28    var memoryContent = frame.eval('new DataView(memory0.buffer).getUint8(3)').return;
     29    frame.onStep = function () {
     30          assertEq(frame.offset, 65);
     31    };
     32  };
     33 }, function ({error}) {} 
     34 );