1. 04 Apr, 2019 1 commit
  2. 12 Mar, 2019 1 commit
  3. 27 Feb, 2019 1 commit
  4. 18 Feb, 2019 1 commit
    • Simon Zünd's avatar
      [stack trace] Change API to use new StackTraceFrame class · e295ca07
      Simon Zünd authored
      This CL changes "CaptureCurrentStackTrace" to use the
      FrameArrayBuilder. This way, simple and detailed stack traces use
      the same mechanism to capture stack traces.
      
      The stack trace API is implemented using the previously introduced
      StackTraceFrame class, which uses FrameArray as a backing store and
      can lazily initialize StackFrameInfo objects.
      
      R=jgruber@chromium.org, yangguo@chromium.org
      
      Bug: v8:8742
      Change-Id: I716a9baa33d9ca1d2ef41a73fba26234a03b045b
      Reviewed-on: https://chromium-review.googlesource.com/c/1469822
      Commit-Queue: Simon Zünd <szuend@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59651}
      e295ca07
  5. 12 Feb, 2019 1 commit
    • tzik's avatar
      Move MicrotasksPolicy management to MicrotaskQueue · df95cff9
      tzik authored
      This CL moves MicrotasksPolicy from Isolate's HandleScopeImplementer
      to MicrotaskQueue for better non-default MicrotaskQueue support.
      
      After this:
       * MicrotaskPolicy is per-MicrotaskQueue rather than single global one.
       * ENTER_V8 runs MicrotaskQueue associated to the current Context, rather
         than the default_microtask_queue().
       * SuppressMicrotaskExecutionScope and MicrotasksScope are ready to
         take MicrotaskQueue parameter, rather than using the default one.
      
      Note that there's no way to use a non-default microtask queue until we
      expose it as a V8 API.
      
      Bug: v8:8124
      Change-Id: I79cbc53d26d9f3f4cfb7c64d303b12e395b76815
      Reviewed-on: https://chromium-review.googlesource.com/c/1429720Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59517}
      df95cff9
  6. 01 Feb, 2019 1 commit
  7. 26 Dec, 2018 1 commit
  8. 19 Dec, 2018 1 commit
  9. 17 Dec, 2018 1 commit
  10. 12 Dec, 2018 1 commit
  11. 11 Dec, 2018 1 commit
  12. 23 Nov, 2018 1 commit
  13. 13 Nov, 2018 1 commit
  14. 31 Oct, 2018 3 commits
  15. 20 Sep, 2018 1 commit
  16. 23 Jul, 2018 1 commit
  17. 20 Jul, 2018 1 commit
  18. 12 Jul, 2018 1 commit
  19. 02 Jul, 2018 2 commits
  20. 26 Jun, 2018 1 commit
  21. 24 May, 2018 1 commit
  22. 14 May, 2018 1 commit
    • jgruber's avatar
      [api] Add a dedicated UnboundModuleScript type · 8ec92f51
      jgruber authored
      Module and script SharedFunctionInfos can't be used interchangeably
      (e.g.: it should not be possible to bind a Module's SFI to a Context).
      
      The dedicated type disambiguates the two.
      
      This also adds an overload for CreateCodeCache which takes an unbound
      module script instead of an unbound script. Both are just a SFI
      underneath, so their behavior is identical.
      
      Bug: v8:7685
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      Change-Id: Iab519d0d50b6b41c95abdb6397f5622e292da4d8
      Reviewed-on: https://chromium-review.googlesource.com/1047107
      Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
      Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53150}
      8ec92f51
  23. 23 Apr, 2018 1 commit
    • Andreas Haas's avatar
      [api] Split isolate allocation and initialization · 5c9b30ae
      Andreas Haas authored
      At the moment, the isolate is allocated and initialized in a single
      step. This has the downside that the platform cannot register the
      isolate before the isolate gets initialized, and therefore the platform
      is not available for the isolate during initialization. With this CL we
      register the uninitialized isolate on the platform and initialize the
      isolate after that.
      
      This change is needed to allow the creation of task runners already
      during the initialization of the isolate.
      
      The related chromium CL: https://crrev.com/c/1015020
      
      R=yangguo@chromium.org
      
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      Change-Id: I52e89388a757f2693d1a800e7aa7701aa0080795
      Reviewed-on: https://chromium-review.googlesource.com/1014044Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52731}
      5c9b30ae
  24. 14 Apr, 2018 1 commit
    • Jakob Kummerow's avatar
      [ubsan] Change Address typedef to uintptr_t · 2459046c
      Jakob Kummerow authored
      The "Address" type is V8's general-purpose type for manipulating memory
      addresses. Per the C++ spec, pointer arithmetic and pointer comparisons
      are undefined behavior except within the same array; since we generally
      don't operate within a C++ array, our general-purpose type shouldn't be
      a pointer type.
      
      Bug: v8:3770
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel
      Change-Id: Ib96016c24a0f18bcdba916dabd83e3f24a1b5779
      Reviewed-on: https://chromium-review.googlesource.com/988657
      Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
      Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52601}
      2459046c
  25. 09 Apr, 2018 1 commit
  26. 06 Apr, 2018 2 commits
    • 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
  27. 22 Mar, 2018 1 commit
  28. 19 Mar, 2018 1 commit
  29. 01 Mar, 2018 1 commit
  30. 19 Feb, 2018 1 commit
  31. 17 Feb, 2018 2 commits
  32. 04 Dec, 2017 1 commit
    • Caitlin Potter's avatar
      [builtins] implement RunMicrotasks pump as a code stub · 52ff3ae4
      Caitlin Potter authored
      - Implement RunMicrotasks in CSA to prevent a potentially large number
        of jumps between C++ and JS code while consuming te queue. Appears to
        provide a ~60% speedup in microtask-heavy code, which from limited
        testing appears to scale linearly.
      
        The code-stub microtask pump bails out to the old C++ microtask pump
        if it encounters a CallHandlerInfo microtask, and remains in C++ for
        the remainder of the queue (returning to the JS/stub implementation
        after the bailed out queue is exhausted).
      
      - Add a variation of JSEntryStub which enters the new RunMicrotasks code
        stub.
      
      - Add a new RunMicrotasks helper to Execution, which uses the
        RunMicrotasks entry stub.
      
      Bug: 
      Change-Id: I4667d4dd633d24455ea5d7cef239da0af1a7365e
      Reviewed-on: https://chromium-review.googlesource.com/650486
      Commit-Queue: Caitlin Potter <caitp@igalia.com>
      Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49842}
      52ff3ae4
  33. 01 Dec, 2017 1 commit
  34. 14 Nov, 2017 1 commit
  35. 18 Oct, 2017 1 commit