tor-browser

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

fun-call-inline-native-3.js (760B)


      1 // Test inlining natives through Function.prototype.call
      2 //
      3 // Array() is inlined when there are 0-1 arguments.
      4 
      5 function arrayThisAbsent() {
      6  for (let i = 0; i < 400; ++i) {
      7    let r = Array.call();
      8    assertEq(r.length, 0);
      9  }
     10 }
     11 for (let i = 0; i < 2; ++i) arrayThisAbsent();
     12 
     13 function array0() {
     14  for (let i = 0; i < 400; ++i) {
     15    let r = Array.call(null);
     16    assertEq(r.length, 0);
     17  }
     18 }
     19 for (let i = 0; i < 2; ++i) array0();
     20 
     21 function array1() {
     22  for (let i = 0; i < 400; ++i) {
     23    let r = Array.call(null, 5);
     24    assertEq(r.length, 5);
     25  }
     26 }
     27 for (let i = 0; i < 2; ++i) array1();
     28 
     29 function array2() {
     30  for (let i = 0; i < 400; ++i) {
     31    let r = Array.call(null, 5, 10);
     32    assertEq(r.length, 2);
     33  }
     34 }
     35 for (let i = 0; i < 2; ++i) array2();