tor-browser

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

setelem-inlining-bailout.js (421B)


      1 // |jit-test| --fast-warmup; --no-threads
      2 
      3 // Inlining setters for SetElem ops will require bailout changes.
      4 
      5 with ({}) { }
      6 var trigger = false;
      7 
      8 var obj = {
      9    set f(x) {
     10        if (trigger) {
     11            bailout();
     12        }
     13    }
     14 };
     15 
     16 var sum = 0;
     17 function foo(x) {
     18    for (var i = 0; i < 35; i++) {
     19        var t = obj[x] = i;
     20        sum += t;
     21        trigger = i % 10 == 0;
     22    }
     23 }
     24 
     25 foo("f");
     26 assertEq(sum, 595);