tor-browser

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

bug1950360.js (1094B)


      1 function wasmEvalText(str, imports, compileOptions) {
      2  var binary = wasmTextToBinary(str);
      3  var m = new WebAssembly.Module(binary, compileOptions);
      4  return new WebAssembly.Instance(m, imports);
      5 }
      6 var ins0 = wasmEvalText(`(module
      7    (func \$fac-acc (export "fac-acc") (param i64 i64) (result i64)
      8      (if (result i64) (i64.eqz (local.get 0))
      9        (then (local.get 1))
     10        (else
     11          (return_call \$fac-acc
     12            (i64.sub (local.get 0) (i64.const 1))
     13            (i64.mul (local.get 0) (local.get 1))
     14          )
     15        )
     16      )
     17    )
     18  )`);
     19 var ins1 = wasmEvalText(`(module
     20    (import "" "fac-acc" (func \$fac-acc (param i64 i64) (result i64)))
     21    (type \$ty (func (param i64 i64) (result i64)))
     22    (table \$t 1 1 funcref)
     23    (func \$f (export "fac") (param i64) (result i64)
     24      local.get 0
     25      i64.const 1
     26      i32.const 0
     27      return_call_indirect \$t (type \$ty)
     28    )
     29    (elem \$t (i32.const 0) \$fac-acc)
     30  )`, {"": {"fac-acc": ins0.exports["fac-acc"]}});
     31 const check = () => ins1.exports.fac(true);
     32 for (var i = 0; i < 100; i++) {
     33  oomTest(check);
     34 }