1. 05 Sep, 2018 2 commits
    • Michael Lippautz's avatar
      Reland "Add external backing store JS test" · 408d8904
      Michael Lippautz authored
      Allow mocking the limits for ArrayBuffer allocation to simulate operating
      system OOM.
      
      Fixes:
      - Ensure OS limit > hard limit for external memory. This is necessary as
        any processing below the hard limit is opportunistic. E.g. a running
        sweeper may stall the current marking (GC) round.
      - Immediately process AB allocations when under memory pressure. Otherwise,
        the allocations may be stuck in a stalled task. Freeing them upon
        adding them to the collector still enables parallelism if possible.
      
      This reverts commit f3ad6cdb.
      
      Bug: chromium:845409
      Change-Id: Ic3e458f2af231bae3d53afcfd6002a0347d3f12b
      Reviewed-on: https://chromium-review.googlesource.com/1206872
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55656}
      408d8904
    • Yang Guo's avatar
      Revert "Add external backing store JS test" · f3ad6cdb
      Yang Guo authored
      This reverts commit 5107ec2a.
      
      Reason for revert: Test is very flaky: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64
      
      Original change's description:
      > Add external backing store JS test
      > 
      > Allow mocking the limits for ArrayBuffer allocation to simulate operating
      > system OOM.
      > 
      > Bug: chromium:845409
      > Change-Id: I38bf56a3677e1db547c774223c81e913f56cb631
      > Reviewed-on: https://chromium-review.googlesource.com/1203895
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#55616}
      
      TBR=ulan@chromium.org,mlippautz@chromium.org
      
      Change-Id: I633988dba1b0a87b652e72e0e667e90122e00f6d
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:845409
      Reviewed-on: https://chromium-review.googlesource.com/1206290Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Commit-Queue: Yang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55630}
      f3ad6cdb
  2. 04 Sep, 2018 1 commit
  3. 30 Aug, 2018 1 commit
  4. 28 Aug, 2018 1 commit
  5. 24 Aug, 2018 1 commit
    • Stephan Herhut's avatar
      Reland "Use new arraybuffer deleter interface in d8" · 89bea4c0
      Stephan Herhut authored
      This is a reland of 524215be
      
      Original change's description:
      > Use new arraybuffer deleter interface in d8
      > 
      > With this cl we start using the custom deleter to free externalized
      > array buffers. This also allows us to keep wasm memories registered
      > with the wasm memory tracker and thereby to propagate that a memory
      > is wasm allocated over postMessage calls.
      > 
      > Bug: v8:8073, chromium:836800
      > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      > Change-Id: I57e3ea44d9c6633ada7996677dd1de4da810ab64
      > Reviewed-on: https://chromium-review.googlesource.com/1186681
      > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > Commit-Queue: Stephan Herhut <herhut@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#55361}
      
      Bug: v8:8073, chromium:836800
      Change-Id: Ia3c057ced496363cfdd07eed16ed1d0c7a3f3084
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/1188222Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Commit-Queue: Stephan Herhut <herhut@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55389}
      89bea4c0
  6. 23 Aug, 2018 2 commits
  7. 10 Aug, 2018 1 commit
  8. 02 Aug, 2018 2 commits
  9. 01 Aug, 2018 2 commits
  10. 04 Jul, 2018 3 commits
  11. 28 Jun, 2018 1 commit
    • Ben Smith's avatar
      [wasm] postMessage of WebAssembly.Module in d8 · c9b4f805
      Ben Smith authored
      Supporting postMessage from WebAssembly.Module requires implementing
      some logic in the ValueSerializer and ValueDeserializer delegates. This
      change implements some simple logic for d8.
      
      This change also fixes a DCHECK that occurs when sending a shared
      WebAssembly.Memory object to two Workers.
      
      Bug: chromium:857049
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      Change-Id: Idddb23a48175c7175967af3fbc03d8572452a069
      Reviewed-on: https://chromium-review.googlesource.com/1117871Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Commit-Queue: Ben Smith <binji@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54093}
      c9b4f805
  12. 21 Jun, 2018 2 commits
  13. 06 Jun, 2018 2 commits
  14. 07 May, 2018 1 commit
  15. 27 Apr, 2018 1 commit
  16. 16 Mar, 2018 1 commit
  17. 15 Mar, 2018 1 commit
    • Clemens Hammacher's avatar
      [d8] Don't process message queues in load · 0fc36340
      Clemens Hammacher authored
      After processing the string loaded from a file, don't process message
      queues. Otherwise, stack traces generated in any processed task will
      contain the stack trace of the load. This also introduces
      nondeterminism, since it depends on the timing whether something will
      be processed inside the load or outside.
      
      Drive-by: Introduce enums for the different bools, to make their
      meaning more obvious at call sites.
      
      R=yangguo@chromium.org
      CC=herhut@chromium.org
      
      Change-Id: Ib48ee01be8c443a2a408ecb1c9e34bb9ba5a8fe7
      Reviewed-on: https://chromium-review.googlesource.com/964141Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51952}
      0fc36340
  18. 28 Feb, 2018 1 commit
    • Andreas Haas's avatar
      [cleanup] Deprecate EnsureEventLoopInitialized · 9bacf523
      Andreas Haas authored
      Due to a recent refactoring the function EnsureEventLoopInitialized on
      the default platform became obsolete. It does not contain a single line
      of code. With this CL we prepare the removal of this function from the
      V8 platform API.
      
      R=rmcilroy@chromium.org
      
      Bug: v8:7310
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: If4d54cd989f8df2f40b322be3b67bb8a482398d0
      Reviewed-on: https://chromium-review.googlesource.com/934221
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51635}
      9bacf523
  19. 16 Feb, 2018 1 commit
  20. 30 Jan, 2018 1 commit
  21. 16 Jan, 2018 1 commit
  22. 07 Dec, 2017 1 commit
    • Bill Budge's avatar
      Reland "[D8] Clean up ArrayBuffer Allocators in shell." · 5679ab10
      Bill Budge authored
      This is a reland of 0c2faa06
      Original change's description:
      > [D8] Clean up ArrayBuffer Allocators in shell.
      >
      > - Reworks the class hierarchy in d8.cc to conform to the allocator API.
      >   In particular, allocators should malloc/free or equivalent unless
      >   v8::ArrayBuffer::Allocator::Reserve is called.
      > - Modifies ExternalizedContents to remember the allocation mode.
      > - ArrayAllocatorBase now tracks its allocations to make sure it doesn't
      >   call Free on externalized array buffers it didn't allocate.
      >
      > Bug: chromium:756050
      > Change-Id: Ic2d07d36358f1b4fa542bea27f93d1d51a1757e1
      > Reviewed-on: https://chromium-review.googlesource.com/807355
      > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > Reviewed-by: Ben Titzer <titzer@chromium.org>
      > Reviewed-by: Eric Holk <eholk@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49893}
      
      Bug: chromium:756050,v8:7146
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I8fe3a9d9af43196e16d02342a47347a76c0a1341
      Reviewed-on: https://chromium-review.googlesource.com/811724Reviewed-by: 's avatarEric Holk <eholk@chromium.org>
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49945}
      5679ab10
  23. 06 Dec, 2017 2 commits
  24. 04 Dec, 2017 1 commit
  25. 01 Dec, 2017 1 commit
    • Mythri's avatar
      Reland "Add support to produce code cache after execute" · dae20b0d
      Mythri authored
      Adds new API function to request code cache. Earlier code cache was
      produced along with compile requests. This new API allows us to request
      code cache after executing. Also adds support in the code serializer to
      serialize after executing the script.
      
      Bug: chromium:783124,chromium:789694
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Id4e6a967e176e3e979dc4ccb9a37a353c70c3890
      Reviewed-on: https://chromium-review.googlesource.com/797036Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Commit-Queue: Mythri Alle <mythria@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49793}
      dae20b0d
  26. 30 Nov, 2017 1 commit
  27. 29 Nov, 2017 2 commits
  28. 28 Nov, 2017 2 commits
    • Michael Achenbach's avatar
      Revert "[platform][cleanup] Fix --enable-tracing" · 10f4e6c3
      Michael Achenbach authored
      This reverts commit 61367a25.
      
      Reason for revert: http://shortn/_amqTfxgjk0
      
      Original change's description:
      > [platform][cleanup] Fix --enable-tracing
      > 
      > The flag --enable-tracing can be used to measure how much time is spent
      > in a scope. In d8 this flag did not work properly for the following
      > reasons:
      > 
      > * The tracing file is not written when the JavaScript code calls quit().
      > 
      > * The tracing file is not written when the JavaScript code throws an
      > uncaught exception, except if the --throws flag is passed to d8.
      > 
      > The reason for these two issues is that both call Shell::Exit(), which
      > end d8 immediately without calling any destructors. In addition I moved
      > in a recent CL the destruction of the platform after the destruction of
      > the file handle for the tracing file. Thereby the tracing file did not
      > get filled with content even destructors were executed.
      > 
      > With this CL I also call the destructors of the platform and of the file
      > handle in the Shell::Exit() function. For this I make Shell::Exit()
      > platform independent and let it call the platform dependent
      > Shell::OSExit() at the end.
      > 
      > R=​rmcilroy@chromium.org
      > 
      > Change-Id: I14425b6a5c25b757211bc8b9959a9cc8bfa0602c
      > Reviewed-on: https://chromium-review.googlesource.com/789038
      > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
      > Commit-Queue: Andreas Haas <ahaas@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49659}
      
      TBR=rmcilroy@chromium.org,ahaas@chromium.org
      
      Change-Id: I17c6f19c38cb337b00707f606f267b52b7f2c1e6
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/792991Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49663}
      10f4e6c3
    • Andreas Haas's avatar
      [platform][cleanup] Fix --enable-tracing · 61367a25
      Andreas Haas authored
      The flag --enable-tracing can be used to measure how much time is spent
      in a scope. In d8 this flag did not work properly for the following
      reasons:
      
      * The tracing file is not written when the JavaScript code calls quit().
      
      * The tracing file is not written when the JavaScript code throws an
      uncaught exception, except if the --throws flag is passed to d8.
      
      The reason for these two issues is that both call Shell::Exit(), which
      end d8 immediately without calling any destructors. In addition I moved
      in a recent CL the destruction of the platform after the destruction of
      the file handle for the tracing file. Thereby the tracing file did not
      get filled with content even destructors were executed.
      
      With this CL I also call the destructors of the platform and of the file
      handle in the Shell::Exit() function. For this I make Shell::Exit()
      platform independent and let it call the platform dependent
      Shell::OSExit() at the end.
      
      R=rmcilroy@chromium.org
      
      Change-Id: I14425b6a5c25b757211bc8b9959a9cc8bfa0602c
      Reviewed-on: https://chromium-review.googlesource.com/789038Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49659}
      61367a25
  29. 21 Nov, 2017 1 commit