tor-browser

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

osr-large-stack-frame.js (533B)


      1 // Creates a huge stack frame and uses OSR. See bug 1839669.
      2 function f() {
      3    var varinits = [];
      4    var varnames = [];
      5    for (var i = 0; i < 19553; i++) {
      6        var varname = `x${i}`;
      7        varnames.push(varname);
      8        varinits.push(`${varname} = ${i}`);
      9    }
     10    var source = "var " + varinits.join(",") + ";\n";
     11    source += "for (var i = 0; i < 100; i++) {}\n";
     12    source += "return " + varnames.join("+") + ";";
     13 
     14    var g = new Function(source);
     15    assertEq(g(), 191150128);
     16    assertEq(g(), 191150128);
     17 }
     18 f();