tor-browser

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

testX86ByteStore.js (1794B)


      1 load(libdir + "asm.js");
      2 
      3 var body =
      4 '   "use asm";\
      5    var i8=new global.Int8Array(buffer);\
      6    function g(i,j,k) {\
      7        i=i|0;\
      8        j=j|0;\
      9        k=k|0;\
     10        var a=0,b=0,c=0,d=0,e=0,f=0;\
     11        a=(i+j)|0;\
     12        b=(k+j)|0;\
     13        c=(i+k)|0;\
     14        b=(a+b)|0;\
     15        d=(b+c+i+j)|0;\
     16        e=(a+j+c)|0;\
     17        f=(a+i+k)|0;\
     18        i8[i] = f;\
     19        return (a+b+c+d+e+f)|0;\
     20    }\
     21    return g;';
     22 
     23 var buf=new ArrayBuffer(BUF_MIN);
     24 var g = asmLink(asmCompile('global','foreign','buffer',body), this, null, buf);
     25 assertEq(g(1,2,3), 46);
     26 assertEq(new Int8Array(buf)[1], 7);
     27 
     28 var body =
     29 '   "use asm";\
     30    var i8=new global.Int8Array(buffer);\
     31    function g(i,j,k) {\
     32        i=i|0;\
     33        j=j|0;\
     34        k=k|0;\
     35        var a=0,b=0,c=0,d=0,e=0,f=0;\
     36        a=(i+j)|0;\
     37        b=(k+j)|0;\
     38        c=(i+k)|0;\
     39        b=(a+b)|0;\
     40        d=(b+c+i+j)|0;\
     41        e=(a+j+c)|0;\
     42        f=(a+i+k)|0;\
     43        i8[i] = e;\
     44        return (a+b+c+d+e+f)|0;\
     45    }\
     46    return g;';
     47 
     48 var buf=new ArrayBuffer(BUF_MIN);
     49 var g = asmLink(asmCompile('global','foreign','buffer',body), this, null, buf);
     50 assertEq(g(1,2,3), 46);
     51 assertEq(new Int8Array(buf)[1], 9);
     52 
     53 var body =
     54 '   "use asm";\
     55    var i8=new global.Int8Array(buffer);\
     56    function g(i,j,k) {\
     57        i=i|0;\
     58        j=j|0;\
     59        k=k|0;\
     60        var a=0,b=0,c=0,d=0,e=0,f=0,g=0;\
     61        a=(i+j)|0;\
     62        b=(k+j)|0;\
     63        c=(i+k)|0;\
     64        b=(a+b)|0;\
     65        d=(b+c+i+j)|0;\
     66        e=(a+j+c)|0;\
     67        f=(a+i+k)|0;\
     68        g=(f+j+b)|0;\
     69        i8[i] = g;\
     70        return (a+b+c+d+e+f+g)|0;\
     71    }\
     72    return g;';
     73 
     74 var buf=new ArrayBuffer(BUF_MIN);
     75 var g = asmLink(asmCompile('global','foreign','buffer',body), this, null, buf);
     76 assertEq(g(1,2,3), 63);
     77 assertEq(new Int8Array(buf)[1], 17);