tor-browser

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

bug860838-1.js (579B)


      1 var counter = 0;
      2 function inc() { return counter++ }
      3 var imp = { inc:inc };
      4 
      5 function FFI1(stdlib, foreign) {
      6    "use asm";
      7 
      8    var inc = foreign.inc;
      9 
     10    function g() {
     11      return inc()|0
     12    }
     13 
     14    return g
     15 }
     16 
     17 function FFI2(stdlib, foreign) {
     18    "use asm";
     19 
     20    var inc=foreign.inc;
     21 
     22    function g() {
     23      inc()
     24    }
     25 
     26    return g
     27 }
     28 
     29 
     30 var f = FFI2(this, imp);     // produces AOT-compiled version
     31 f()
     32 assertEq(counter, 1);
     33 
     34 var f = FFI1(this, imp);     // produces AOT-compiled version
     35 
     36 assertEq(f(), 1);
     37 assertEq(counter, 2);
     38 assertEq(f(), 2);
     39 assertEq(counter, 3);