1. 14 Jun, 2016 8 commits
    • clemensh's avatar
      [wasm] Refactor function name table and lookup · 759baaff
      clemensh authored
      The function name table will now always be set; a CHECK will fail if
      the length would exceed the integer range.
      Also, the resolution of undefined function names to "<WASM UNNAMED>" is
      moved over to the wasm side.
      
      R=titzer@chromium.org
      
      Committed: https://crrev.com/3400ee9f4f21a455b7850ec42a4182a3c0eba310
      Review-Url: https://codereview.chromium.org/2057523002
      Cr-Original-Commit-Position: refs/heads/master@{#36918}
      Cr-Commit-Position: refs/heads/master@{#36952}
      759baaff
    • mstarzinger's avatar
      Update SharedFunctionInfoVerify to new object model. · 56a9df6b
      mstarzinger authored
      The builtin function ID has been moved from the [function_data] field to
      the [function_location] field. This just updates existing verification
      functionality to be in sync.
      
      R=rmcilroy@chromium.org
      
      Review-Url: https://codereview.chromium.org/2064723002
      Cr-Commit-Position: refs/heads/master@{#36951}
      56a9df6b
    • jarin's avatar
      [turbofan] Prevent storing signalling NaNs into holey double arrays. · 6470ddad
      jarin authored
      This introduces SilenceNaN operator, which makes sure that we only
      store quiet NaNs into holey arrays. We omit the NaN silencing code
      at instruction selection time if the input is an operation that
      cannot possibly produce signalling NaNs.
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/2060233002
      Cr-Commit-Position: refs/heads/master@{#36950}
      6470ddad
    • mstarzinger's avatar
      [turbofan] Remove some TODOs that no longer apply. · 3b2da295
      mstarzinger authored
      R=bmeurer@chromium.org
      
      Review-Url: https://codereview.chromium.org/2067513002
      Cr-Commit-Position: refs/heads/master@{#36949}
      3b2da295
    • Ilija.Pavlovic's avatar
      MIPS64: Fix compilation issues on MIPS64R6 with Clang. · 3dbc7586
      Ilija.Pavlovic authored
      This patch enables V8 build with Clang without errors for MIPS64
      release R6.
      
      TEST=
      BUG=
      
      Review-Url: https://codereview.chromium.org/2062713002
      Cr-Commit-Position: refs/heads/master@{#36948}
      3dbc7586
    • 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 32 commits