tor-browser

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

inline-arguments-escaped-spread-optimization.js (794B)


      1 // |jit-test| --fast-warmup
      2 
      3 function foo(...args) {
      4    with ({}) {}
      5    return args.length;
      6 }
      7 
      8 function inner() {
      9    return arguments;
     10 }
     11 
     12 function outer0() {
     13    trialInline();
     14    var args = inner();
     15    return foo(...args);
     16 }
     17 
     18 function outer1() {
     19    trialInline();
     20    var args = inner(1);
     21    return foo(...args);
     22 }
     23 
     24 function outer2() {
     25    trialInline();
     26    var args = inner(1,2);
     27    return foo(...args);
     28 }
     29 
     30 function outer3() {
     31    trialInline();
     32    var args = inner(1,2,3);
     33    return foo(...args);
     34 }
     35 
     36 function outer4() {
     37    trialInline();
     38    var args = inner(1,2,3,4);
     39    return foo(...args);
     40 }
     41 
     42 with ({}) {}
     43 
     44 for (var i = 0; i < 50; i++) {
     45    assertEq(outer0(), 0);
     46    assertEq(outer1(), 1);
     47    assertEq(outer2(), 2);
     48    assertEq(outer3(), 3);
     49    assertEq(outer4(), 4);
     50 }