1. 20 Jul, 2016 2 commits
  2. 19 Jul, 2016 1 commit
  3. 13 Jul, 2016 1 commit
  4. 04 Jul, 2016 1 commit
    • jgruber's avatar
      [builtins] Add receiver to builtin exit frames · f59a2335
      jgruber authored
      Stack trace generation requires access to the receiver; and while the
      receiver is already on the stack, we cannot determine its position
      during stack trace generation (it's stored in argv[0], and argc is only
      stored in a callee-saved register).
      
      This patch grants access to the receiver by pushing argc onto builtin
      exit frames as an extra argument. Compared to simply pushing the
      receiver, this requires an additional dereference during stack trace
      generation, but one fewer during builtin calls.
      
      BUG=v8:4815
      
      Review-Url: https://codereview.chromium.org/2106883003
      Cr-Commit-Position: refs/heads/master@{#37500}
      f59a2335
  5. 23 Jun, 2016 1 commit
  6. 08 Jun, 2016 1 commit
    • gsathya's avatar
      Revert "Revert of [builtins] Properly optimize TypedArray/DataView accessors.... · 3c927e07
      gsathya authored
      Revert "Revert of [builtins] Properly optimize TypedArray/DataView accessors. (patchset #3 id:40001 of https://codereview.chromium.org/2042013003/ )"
      
      This reverts commit d3a43e47.
      
      This patch also adds typed_array_fun and typed_array_protoype to the
      native context. These are used in InstallTypedArray to set up the
      prototype chain correctly for each typed array sub class. This removes
      the need to later monkey patch them prototype chain in typedarray.js.
      This mechanism is also used to get hold of the TypedArray in
      typedarray.js, removing the need for a global TypedArray.
      
      This patch updates CallRuntime.golden to account for the two extra
      native runtime calls. This patch also fixes some formatting issues (by
      running git cl format).
      
      BUG=chromium:579905, chromium:593634, v8:4085, v8:5073
      
      Review-Url: https://codereview.chromium.org/2046333002
      Cr-Commit-Position: refs/heads/master@{#36811}
      3c927e07
  7. 07 Jun, 2016 2 commits
    • machenbach's avatar
      Revert of [builtins] Properly optimize TypedArray/DataView accessors.... · d3a43e47
      machenbach authored
      Revert of [builtins] Properly optimize TypedArray/DataView accessors. (patchset #3 id:40001 of https://codereview.chromium.org/2042013003/ )
      
      Reason for revert:
      Blink:
      https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/7296
      
      Original issue's description:
      > [builtins] Properly optimize TypedArray/DataView accessors.
      >
      > The following getters were moved to the TypedArray/DataView prototype
      > chain with ES2015, and hence need different treatment now:
      >
      > - DataView.prototype.buffer
      > - DataView.prototype.byteLength
      > - DataView.prototype.byteOffset
      > - TypedArray.prototype.buffer
      > - TypedArray.prototype.byteLength
      > - TypedArray.prototype.byteOffset
      > - TypedArray.prototype.length
      >
      > Instead of having special magic on the LoadIC in the IC system and the
      > optimizing compilers, as we used to do before (and which we got rid of
      > already), we just treat those as normal accessors and make them
      > recognizable via the BuiltinFunctionId mechanism. This allows us to
      > remove some of the additional magic from the IC subsystem, and just
      > extend the BuiltinFunctionId mechanism in Crankshaft slightly to cover
      > these cases too (TurboFan doesn't yet support accessors, but that will
      > be fixed soonish anyways).
      >
      > This addresses most of the 15-20% regression we saw on the Octane
      > GameBoy emulator benchmark.
      >
      > BUG=chromium:579905,chromium:593634,v8:4085,v8:5073
      > R=yangguo@chromium.org
      >
      > Committed: https://crrev.com/1ef737026565ea2becc84f30cfd432e581d50c6b
      > Cr-Commit-Position: refs/heads/master@{#36782}
      
      TBR=yangguo@chromium.org,bmeurer@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=chromium:579905,chromium:593634,v8:4085,v8:5073
      
      Review-Url: https://codereview.chromium.org/2039093005
      Cr-Commit-Position: refs/heads/master@{#36783}
      d3a43e47
    • bmeurer's avatar
      [builtins] Properly optimize TypedArray/DataView accessors. · 1ef73702
      bmeurer authored
      The following getters were moved to the TypedArray/DataView prototype
      chain with ES2015, and hence need different treatment now:
      
      - DataView.prototype.buffer
      - DataView.prototype.byteLength
      - DataView.prototype.byteOffset
      - TypedArray.prototype.buffer
      - TypedArray.prototype.byteLength
      - TypedArray.prototype.byteOffset
      - TypedArray.prototype.length
      
      Instead of having special magic on the LoadIC in the IC system and the
      optimizing compilers, as we used to do before (and which we got rid of
      already), we just treat those as normal accessors and make them
      recognizable via the BuiltinFunctionId mechanism. This allows us to
      remove some of the additional magic from the IC subsystem, and just
      extend the BuiltinFunctionId mechanism in Crankshaft slightly to cover
      these cases too (TurboFan doesn't yet support accessors, but that will
      be fixed soonish anyways).
      
      This addresses most of the 15-20% regression we saw on the Octane
      GameBoy emulator benchmark.
      
      BUG=chromium:579905,chromium:593634,v8:4085,v8:5073
      R=yangguo@chromium.org
      
      Review-Url: https://codereview.chromium.org/2042013003
      Cr-Commit-Position: refs/heads/master@{#36782}
      1ef73702
  8. 03 Jun, 2016 1 commit
  9. 26 May, 2016 1 commit
    • gsathya's avatar
      Promises: Lazily create arrays to store resolve, reject callbacks · 1d4fe002
      gsathya authored
      For the common use case of having a single resolve or reject callback,
      the callbacks are stored directly. Only when an additional callback is
      registered, we create an array to store these callbacks.
      
      There are 3 possible states for the resolve, reject symbols when we add
      a new callback --
      1) UNDEFINED -- This is the zero state where there is no callback
      registered. When we see this state, we directly attach the callbacks to
      the symbol.
      2) !IS_ARRAY -- There is a single callback directly attached to the
      symbols. We need to create a new array to store additional callbacks.
      3) IS_ARRAY -- There are multiple callbacks already registered,
      therefore we can just push the new callback to the existing array.
      
      Also, this change creates a new symbol for storing the deferred objects.
      Previously the deferred objects were stored in the callback arrays, but
      since we no longer create arrays for the initial case, we need this new
      symbol. The cctest has been updated to account for this new symbol.
      
      This patch results in a 19% improvement(over 5 runs) in the bluebird benchmark.
      
      BUG=v8:5046
      
      Review-Url: https://codereview.chromium.org/2007803002
      Cr-Commit-Position: refs/heads/master@{#36536}
      1d4fe002
  10. 24 May, 2016 1 commit
    • jgruber's avatar
      Refactor script position calculation · 94ad3b18
      jgruber authored
      Script position calculation logic (i.e. line & column numbers for a
      given code position) is now based on a single method
      Script::GetPositionInfo(). Refactored related code in isolate.cc and
      js/messages.js to use the new method. The line_ends accessor is still
      in use by chromium and thus cannot be removed yet.
      
      R=yangguo@chromium.org
      BUG=
      
      Review-Url: https://codereview.chromium.org/2002993002
      Cr-Commit-Position: refs/heads/master@{#36458}
      94ad3b18
  11. 20 May, 2016 2 commits
  12. 19 May, 2016 3 commits
  13. 06 May, 2016 1 commit
    • clemensh's avatar
      [wasm] Make wasm info available on the stack trace · a4cd1eef
      clemensh authored
      This changes different locations to extract the reference to the wasm
      object and the function index from the stack trace, and make it
      available through all the APIs which process stack traces.
      The javascript CallSite object now has the new methods isWasm(),
      getWasmObject() and getWasmFunctionIndex(); the byte offset is
      available via getPosition().
      
      Function names of wasm frames should be fully functional with this
      commit, position information works reliably for calls, but not for
      traps like unreachable or out-of-bounds accesses.
      
      R=titzer@chromium.org, yangguo@chromium.org
      
      Review-Url: https://codereview.chromium.org/1909353002
      Cr-Commit-Position: refs/heads/master@{#36067}
      a4cd1eef
  14. 03 May, 2016 2 commits
  15. 22 Apr, 2016 1 commit
  16. 10 Mar, 2016 1 commit
  17. 29 Feb, 2016 1 commit
  18. 17 Feb, 2016 1 commit
  19. 11 Feb, 2016 1 commit
  20. 10 Feb, 2016 2 commits
  21. 04 Feb, 2016 1 commit
  22. 26 Jan, 2016 1 commit