1. 26 Dec, 2018 1 commit
  2. 17 Dec, 2018 1 commit
  3. 08 Dec, 2018 1 commit
  4. 13 Nov, 2018 1 commit
  5. 29 Oct, 2018 1 commit
  6. 11 Sep, 2018 2 commits
  7. 30 Jul, 2018 1 commit
  8. 23 Jul, 2018 1 commit
  9. 17 Jul, 2018 1 commit
  10. 04 Jul, 2018 1 commit
  11. 02 Jul, 2018 1 commit
  12. 09 Apr, 2018 2 commits
  13. 06 Apr, 2018 3 commits
    • Igor Sheludko's avatar
      [ic] Don't use slow stub handler for fresh transitioning stores. · d1532a1a
      Igor Sheludko authored
      Given that we got a store transition handler for free (because it's just
      a transition map) there's no need to wait for a second "use" of that
      transition in order to install a normal store transition handler.
      
      Bug: v8:5988
      Change-Id: Iecdcfdd096a8efffdd0662f1b1d604943e57d85a
      Reviewed-on: https://chromium-review.googlesource.com/997553Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
      Commit-Queue: Igor Sheludko <ishell@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52442}
      d1532a1a
    • Michael Achenbach's avatar
      Revert "[cleanup] Refactor the Factory" · 503e07c3
      Michael Achenbach authored
      This reverts commit f9a2e24b.
      
      Reason for revert: gc stress failures not all fixed by follow up.
      
      Original change's description:
      > [cleanup] Refactor the Factory
      > 
      > There is no good reason to have the meat of most objects' initialization
      > logic in heap.cc, all wrapped by the CALL_HEAP_FUNCTION macro. Instead,
      > this CL changes the protocol between Heap and Factory to be AllocateRaw,
      > and all object initialization work after (possibly retried) successful
      > raw allocation happens in the Factory.
      > 
      > This saves about 20KB of binary size on x64.
      > 
      > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
      > Change-Id: Icbfdc4266d7be8b48d2fe085f03411743dc6a0ca
      > Reviewed-on: https://chromium-review.googlesource.com/959533
      > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
      > Reviewed-by: Hannes Payer <hpayer@chromium.org>
      > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#52416}
      
      TBR=jkummerow@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,hpayer@chromium.org
      
      Change-Id: Idbbc53478742f3e9525eee83342afc6aedae122f
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/999414Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52420}
      503e07c3
    • Jakob Kummerow's avatar
      [cleanup] Refactor the Factory · f9a2e24b
      Jakob Kummerow authored
      There is no good reason to have the meat of most objects' initialization
      logic in heap.cc, all wrapped by the CALL_HEAP_FUNCTION macro. Instead,
      this CL changes the protocol between Heap and Factory to be AllocateRaw,
      and all object initialization work after (possibly retried) successful
      raw allocation happens in the Factory.
      
      This saves about 20KB of binary size on x64.
      
      Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
      Change-Id: Icbfdc4266d7be8b48d2fe085f03411743dc6a0ca
      Reviewed-on: https://chromium-review.googlesource.com/959533
      Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
      Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
      Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52416}
      f9a2e24b
  14. 23 Mar, 2018 1 commit
  15. 08 Mar, 2018 1 commit
    • Benedikt Meurer's avatar
      [builtins] Add fast-path for the Promise.resolve lookup. · e122fc45
      Benedikt Meurer authored
      This adds a global protector to guard the lookup of "resolve" on the
      %Promise% intrinsic object (the initial Promise constructor), making
      sure that Promise.resolve yields the initial builtin method. We use
      this protector to avoid the lookup of "resolve" all the time inside
      of Promise.all and Promise.race, when called with constructor being
      the %Promise% intrinsic object.
      
      This improves the performance on the parallel-async-es2017-native
      benchmark by roughly 2-3%.
      
      Bug: v8:7253
      Change-Id: Ida93b88afbaeae61f17be4cd30ea6a78b4267cea
      Reviewed-on: https://chromium-review.googlesource.com/955564Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51810}
      e122fc45
  16. 02 Mar, 2018 1 commit
    • Benedikt Meurer's avatar
      [es2015] Extend the array iterator protector. · 1525374f
      Benedikt Meurer authored
      Previously the array iterator protector only guarded the lookup of the
      @@iterator symbol on the initial Array.prototype, and we had to use an
      additional map check on the %ArrayIteratorPrototype% to ensure that no
      one messed with the next() method.  This CL extends the array iterator
      protector to also guard the lookup of %ArrayIteratorPrototype%.next.
      
      This simplifies the code quite a bit and makes it more robust for cases
      where someone has to install additional methods on the iterator
      prototype, i.e. a custom async iterator.
      
      Bug: v8:7510, v8:7514
      Change-Id: Ie6080bb837a91a2b60b224597121470614210660
      Reviewed-on: https://chromium-review.googlesource.com/945728Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51684}
      1525374f
  17. 22 Feb, 2018 1 commit
  18. 08 Feb, 2018 1 commit
    • Adam Klein's avatar
      Revert "[builtins] Mega-revert to address the Dev blocker in crbug.com/808911." · 3916401e
      Adam Klein authored
      This reverts commit 14108f4c.
      
      Reason for revert: Not the culprit for Canary microtask crashes
      
      Original change's description:
      > [builtins] Mega-revert to address the Dev blocker in crbug.com/808911.
      > 
      > - Revert "[builtins] Save one word in contexts for Promise.all."
      >   This reverts commit 7632da06.
      > - Revert "[builtins] Also use the Promise#then protector for Promise#finally()."
      >   This reverts commit d4f072ce.
      > - Revert "[builtins] Don't mess with entered context for MicrotaskCallbacks."
      >   This reverts commit 6703dacd.
      > - Revert "[debugger] Properly deal with settled promises in catch prediction."
      >   This reverts commit 40dd0658.
      > - Revert "[builtins] Widen the fast-path for Promise builtins."
      >   This reverts commit db0556b7.
      > - Revert "[builtins] Unify PerformPromiseThen and optimize it with TurboFan."
      >   This reverts commit a582199c.
      > - Revert "[builtins] Remove obsolete PromiseBuiltinsAssembler::AppendPromiseCallback."
      >   This reverts commit 6bf88852.
      > - Revert "[builtins] Turn NewPromiseCapability into a proper builtin."
      >   This reverts commit 313b490d.
      > - Revert "[builtins] Inline InternalPromiseThen into it's only caller"
      >   This reverts commit f7bd6a2f.
      > - Revert "[builtins] Implement Promise#catch by really calling into Promise#then."
      >   This reverts commit b23b098f.
      > - Revert "[promise] Remove incorrect fast path"
      >   This reverts commit 0f6eafe8.
      > - Revert "[builtins] Squeeze JSPromise::result and JSPromise::reactions into a single field."
      >   This reverts commit 8a677a28.
      > - Revert "[builtins] Refactor promises to reduce GC overhead."
      >   This reverts commit 8e7737cb.
      > 
      > Tbr: hpayer@chromium.org
      > Bug: chromium:800651, chromium:808911, v8:5691, v8:7253
      > Change-Id: I8c8ea5ed32ed62f6cd8b0d027a3707ddd891e5f1
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Reviewed-on: https://chromium-review.googlesource.com/906991
      > Commit-Queue: Yang Guo <yangguo@chromium.org>
      > Commit-Queue: Adam Klein <adamk@chromium.org>
      > Reviewed-by: Adam Klein <adamk@chromium.org>
      > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#51158}
      
      Change-Id: I09d958cbebd635a325809072a290f2f53df8c5d4
      Tbr: adamk@chromium.org,yangguo@chromium.org,bmeurer@chromium.org
      Bug: chromium:800651, chromium:808911, v8:5691, v8:7253
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/908988Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Commit-Queue: Adam Klein <adamk@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51181}
      3916401e
  19. 07 Feb, 2018 1 commit
    • Benedikt Meurer's avatar
      [builtins] Mega-revert to address the Dev blocker in crbug.com/808911. · 14108f4c
      Benedikt Meurer authored
      - Revert "[builtins] Save one word in contexts for Promise.all."
        This reverts commit 7632da06.
      - Revert "[builtins] Also use the Promise#then protector for Promise#finally()."
        This reverts commit d4f072ce.
      - Revert "[builtins] Don't mess with entered context for MicrotaskCallbacks."
        This reverts commit 6703dacd.
      - Revert "[debugger] Properly deal with settled promises in catch prediction."
        This reverts commit 40dd0658.
      - Revert "[builtins] Widen the fast-path for Promise builtins."
        This reverts commit db0556b7.
      - Revert "[builtins] Unify PerformPromiseThen and optimize it with TurboFan."
        This reverts commit a582199c.
      - Revert "[builtins] Remove obsolete PromiseBuiltinsAssembler::AppendPromiseCallback."
        This reverts commit 6bf88852.
      - Revert "[builtins] Turn NewPromiseCapability into a proper builtin."
        This reverts commit 313b490d.
      - Revert "[builtins] Inline InternalPromiseThen into it's only caller"
        This reverts commit f7bd6a2f.
      - Revert "[builtins] Implement Promise#catch by really calling into Promise#then."
        This reverts commit b23b098f.
      - Revert "[promise] Remove incorrect fast path"
        This reverts commit 0f6eafe8.
      - Revert "[builtins] Squeeze JSPromise::result and JSPromise::reactions into a single field."
        This reverts commit 8a677a28.
      - Revert "[builtins] Refactor promises to reduce GC overhead."
        This reverts commit 8e7737cb.
      
      Tbr: hpayer@chromium.org
      Bug: chromium:800651, chromium:808911, v8:5691, v8:7253
      Change-Id: I8c8ea5ed32ed62f6cd8b0d027a3707ddd891e5f1
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/906991
      Commit-Queue: Yang Guo <yangguo@chromium.org>
      Commit-Queue: Adam Klein <adamk@chromium.org>
      Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51158}
      14108f4c
  20. 04 Feb, 2018 1 commit
    • Benedikt Meurer's avatar
      [builtins] Widen the fast-path for Promise builtins. · db0556b7
      Benedikt Meurer authored
      This adds a new isolate wide Promise#then protector, which guards the
      "then" lookup for all JSPromise instances whose [[Prototype]] is the
      initial %PromisePrototype%. Thus arbitrary mutations to the
      Promise.prototype (i.e. monkey-patching other methods or installing
      new functions) no longer sent you down the slow-path. Use this protector
      in Promise.prototype.catch and in Promise.resolve.
      
      Drive-by-fix: Restructure the resolve logic a bit and avoid the
      expensive and large SameValue check, which can be turned into a simple
      reference equal, as the promise in there is known to be a JSPromise
      anyways.
      
      Bug: v8:7253
      Change-Id: If68b12c6bc6ca9c4d10552ae84854ebc3b5774f9
      Reviewed-on: https://chromium-review.googlesource.com/899302
      Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarSathya Gunasekaran <gsathya@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51085}
      db0556b7
  21. 18 Oct, 2017 1 commit
  22. 01 Sep, 2017 3 commits
  23. 18 Aug, 2017 1 commit
    • Jakob Kummerow's avatar
      Cache fewer StoreIC-Transition handlers · a3ef2489
      Jakob Kummerow authored
      Many handlers are not used again, so we can improve the cache hit rate
      by caching fewer handlers. Specifically, in this CL, when a StoreIC
      miss causes a new map transition to be created, then the handler is not
      cached right away yet (it will be cached next time, when the transition
      exists already).
      
      Also, fix an embarrassing bug where growing a TransitionArray dropped
      cached handlers. That further improves the cache hit rate. ;-)
      
      Bug: chromium:752867, chromium:753819
      Change-Id: Id8db5ca1e780a5fe8fc61db7f20996e61c65a90e
      Reviewed-on: https://chromium-review.googlesource.com/619851Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
      Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47433}
      a3ef2489
  24. 17 Aug, 2017 1 commit
  25. 04 Aug, 2017 1 commit
  26. 17 May, 2017 1 commit
  27. 15 May, 2017 2 commits
  28. 19 Apr, 2017 1 commit
  29. 24 Mar, 2017 1 commit
  30. 17 Mar, 2017 1 commit
  31. 01 Mar, 2017 1 commit
  32. 20 Feb, 2017 1 commit
  33. 10 Feb, 2017 1 commit