1. 14 Jun, 2016 3 commits
    • bmeurer's avatar
      [turbofan] Introduce a dedicated CheckBounds operator. · 85e5567d
      bmeurer authored
      This CheckBounds simplified operator is similar to the HBoundsCheck in
      Crankshaft, and is hooked up to the new type feedback support in the
      SimplifiedLowering. We use it to check the index bounds for keyed
      property accesses.
      
      Note to perf sheriffs: This will tank quite a few benchmarks, as the
      operator makes some redundant branch elimination ineffective for
      certain patterns of keyed accesses. This does require more serious
      redundancy elimination, which we will do in a separate CL. So ignore
      any regressions from this CL, we know there will be a few.
      
      R=jarin@chromium.org
      BUG=v8:4470,v8:5100
      
      Review-Url: https://codereview.chromium.org/2035893004
      Cr-Commit-Position: refs/heads/master@{#36947}
      85e5567d
    • jyan's avatar
      S390: [builtins] Introduce proper Float64Log1p, Float64Atan and Float64Atan2 operators. · b78b0bf9
      jyan authored
      Port 7ceed92a
      Port 89d8c57b
      
      Original commit message:
      
          Import base::ieee754::atan() and base::ieee754::atan2() from fdlibm and
          introduce Float64Atan and Float64Atan2 TurboFan operators based on those,
          similar to what we already did for Float64Log and Float64Log1p. Rewrite
          Math.atan() and Math.atan2() as TurboFan builtin and use the operators
          to also inline Math.atan() and Math.atan2() into optimized TurboFan functions.
      
          Import base::ieee754::log1p() from fdlibm and introduce a Float64Log1p
          TurboFan operator based on that, similar to what we do for Float64Log.
          Rewrite Math.log1p() as TurboFan builtin and use that operator to also
          inline Math.log1p() into optimized TurboFan functions.
      
          Also unify the handling of the special IEEE 754 functions somewhat in
          the TurboFan backends. At some point we can hopefully express this
          completely in the InstructionSelector (once we have an idea what to do
          with the ST(0) return issue on IA-32/X87).
      
          Drive-by-fix: Add some more test coverage for the log function.
      
      R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com, bjaideep@ca.ibm.com
      BUG=
      
      Review-Url: https://codereview.chromium.org/2064783002
      Cr-Commit-Position: refs/heads/master@{#36946}
      b78b0bf9
    • jyan's avatar
      S390: Fix arguments object stubs for large arrays. · 03bf4dc0
      jyan authored
      Port e95cfafb
      
      Original commit message:
      
          This fixes FastNewStrictArgumentsStub and FastNewRestParameterStub to no
          longer assume that the strict arguments object being allocated will fit
          into new-space. The case where said object needs to move to large object
          space is now handled in the runtime.
      
      R=mstarzinger@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com, bjaideep@ca.ibm.com
      BUG=
      
      Review-Url: https://codereview.chromium.org/2064023002
      Cr-Commit-Position: refs/heads/master@{#36945}
      03bf4dc0
  2. 13 Jun, 2016 35 commits
  3. 12 Jun, 2016 2 commits