tor-browser

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

scalar-replace-array-construct-array-03.js (525B)


      1 setJitCompilerOption("inlining.bytecode-max-length", 200);
      2 
      3 function escape() { with ({}) {} }
      4 
      5 class Foo {
      6  constructor(i) {
      7    this.value = i;
      8  }
      9 }
     10 
     11 class Bar extends Foo {
     12  constructor(n, ...args) {
     13    escape(args);
     14    super(...args);
     15  }
     16 }
     17 
     18 // |Bar| must be small enough to be inlinable.
     19 assertEq(isSmallFunction(Bar), true);
     20 
     21 class Baz extends Bar {
     22  constructor(a, n) {
     23    super(n, n);
     24  }
     25 }
     26 
     27 var sum = 0;
     28 for (var i = 0; i < 10000; i++) {
     29  let obj = new Baz(0, 1);
     30  sum += obj.value;
     31 }
     32 assertEq(sum, 10000);