tor-browser

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

bug1875487.js (702B)


      1 function f(i) {
      2  // Add use of the boxed Int32 parameter |i| as a Double.
      3  (2 ** i);
      4 
      5  // This call into |g| will get inlined and an inline-arguments object will be
      6  // created. |i| was unboxed to Double earlier, but we must not store the
      7  // unboxed Double into the inline-arguments object, because other uses of the
      8  // boxed Int32 |i| may expect Int32 inputs.
      9  return g(i);
     10 }
     11 
     12 function g(i) {
     13  // Add use of aliased |i| as an Int32.
     14  if (i) {
     15    // Add use |arguments| to make |i| an aliased variable which gets stored in
     16    // the inline-arguments object.
     17    return arguments;
     18  }
     19 }
     20 
     21 // Don't inline |f| into the top-level script.
     22 with ({});
     23 
     24 for (let i = 0; i < 4000; i++) {
     25  f(i);
     26 }