tor-browser

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

bug984018.js (1383B)


      1 var x = 0;
      2 function test() {
      3    function sincos1(a, b) {
      4        var sa = Math.sin(a);
      5        var sb = Math.sin(b);
      6        var ca = Math.cos(a);
      7        var cb = Math.cos(b);
      8        var ra = sa * sa + ca * ca;
      9        var rb = sb * sb + cb * cb;
     10        var dec = 100000;
     11 
     12        assertEq(Math.round(ra * dec) / dec, Math.round(rb * dec) / dec);
     13 
     14        ca = Math.cos(a);
     15        cb = Math.cos(b);
     16        sa = Math.sin(a);
     17        sb = Math.sin(b);
     18 
     19        var ra = sa * sa + ca * ca;
     20        var rb = sb * sb + cb * cb;
     21 
     22        assertEq(Math.round(ra * dec) / dec, Math.round(rb * dec) / dec);
     23        return ra;
     24    }
     25 
     26    function sincos2(x) {
     27        var s1 = Math.sin(x);
     28        var c1 = Math.cos(x);
     29 
     30        var c2 = Math.cos(x);
     31        var s2 = Math.sin(x);
     32        
     33        return (s1 * s1 + c1 * c1) - (s2 * s2 + c2 * c2); 
     34    }
     35 
     36    function bailoutHere() { bailout(); }
     37 
     38    function sincos3(x) {
     39        var s = Math.sin(x);
     40        bailoutHere();
     41        var c = Math.cos(x);
     42        assertEq(Math.round(s * s + c * c), 1);
     43        return s;
     44    }
     45 
     46    function sincos4(x) {
     47        if (x < 2500)
     48            x = Math.sin(x);
     49        else
     50            x = Math.cos(x);
     51        return x;
     52    }
     53 
     54    for (var i=0; i<5000; i++) {
     55        x += sincos1(x, x + 1);
     56        x += sincos2(x);
     57        x += sincos3(x);
     58        x += sincos4(i);
     59    }
     60 }
     61 x += 1;
     62 test();