Rework ArrayBuffer tracking to support all necessities required for heap unification.
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/b32f9599bee0f37fd75129482b0008b953870129 commit b32f9599bee0f37fd75129482b0008b953870129 Author: mlippautz <mlippautz@chromium.org> Date: Fri May 13 10:11:32 2016 [api] Clarify expectations of ArrayBuffer::Allocator in API BUG= chromium:611688 LOG=Y R=jochen@chromium.org Review-Url: https://codereview.chromium.org/1978773002 Cr-Commit-Position: refs/heads/master@{#36231} [modify] https://crrev.com/b32f9599bee0f37fd75129482b0008b953870129/include/v8.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9019cf320fdcc79ec31ecfe89f07783a726156a2 commit 9019cf320fdcc79ec31ecfe89f07783a726156a2 Author: mlippautz <mlippautz@chromium.org> Date: Tue May 17 13:16:03 2016 Remove accounting from ArrayBuffer::Allocator Memory is already accounted in V8 when using this allocator. This avoids double-accounting which potentially also reduces (useless) GCs which are triggered when reaching certain thresholds. BUG= chromium:611688 LOG=N Review-Url: https://codereview.chromium.org/1977493003 Cr-Commit-Position: refs/heads/master@{#394108} [modify] https://crrev.com/9019cf320fdcc79ec31ecfe89f07783a726156a2/third_party/WebKit/Source/wtf/typed_arrays/ArrayBufferContents.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/34689ee3d1d8f80d2ea34fadccb2b3e6f422d3a2 commit 34689ee3d1d8f80d2ea34fadccb2b3e6f422d3a2 Author: mlippautz <mlippautz@chromium.org> Date: Wed May 18 09:59:14 2016 Move adjustAmountOfExternalMemory after allocation call BUG= chromium:611688 LOG=N Review-Url: https://codereview.chromium.org/1993623002 Cr-Commit-Position: refs/heads/master@{#394374} [modify] https://crrev.com/34689ee3d1d8f80d2ea34fadccb2b3e6f422d3a2/third_party/WebKit/Source/wtf/typed_arrays/ArrayBufferContents.cpp
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/b2d8bfc7931eef49d527605ba485950dea41cde3 commit b2d8bfc7931eef49d527605ba485950dea41cde3 Author: mlippautz <mlippautz@chromium.org> Date: Mon May 23 11:19:55 2016 [heap] Fine-grained JSArrayBuffer tracking Track based on JSArrayBuffer addresses instead of the attached backing store. This way we can later on iterate buffers on a single page. The reland also switches to a page-based implementation where a page contains the set of its contained (live and dead) buffers. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. BUG= chromium:611688 LOG=N CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Review-Url: https://codereview.chromium.org/1964023002 Cr-Commit-Position: refs/heads/master@{#36437} [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/BUILD.gn [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/include/v8.h [add] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/array-buffer-tracker.h [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/heap.cc [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/heap.h [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/incremental-marking.cc [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/mark-compact.cc [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/objects-visiting-inl.h [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/scavenger.cc [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/spaces.cc [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/heap/spaces.h [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/src/v8.gyp [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/test/cctest/cctest.gyp [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/test/cctest/heap/heap-utils.h [add] https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/d2dff0320b75bf6054e46c379b192619d4884caf commit d2dff0320b75bf6054e46c379b192619d4884caf Author: mlippautz <mlippautz@chromium.org> Date: Tue May 24 07:21:18 2016 Revert of [heap] Fine-grained JSArrayBuffer tracking (patchset #19 id:770001 of https://codereview.chromium.org/1964023002/ ) Reason for revert: Revert it. Original issue's description: > [heap] Fine-grained JSArrayBuffer tracking > > Track based on JSArrayBuffer addresses instead of the attached backing store. > This way we can later on iterate buffers on a single page. The reland also > switches to a page-based implementation where a page contains the set of its > contained (live and dead) buffers. > > Details of tracking: > - Scavenge: New space pages are processes in bulk on the main thread > - MC: Unswept pages are processed in bulk in parallel. All other pages > are processed by the sweeper concurrently. > > BUG= chromium:611688 > LOG=N > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > Committed: https://crrev.com/b2d8bfc7931eef49d527605ba485950dea41cde3 > Cr-Commit-Position: refs/heads/master@{#36437} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:611688 Review-Url: https://codereview.chromium.org/2006183003 Cr-Commit-Position: refs/heads/master@{#36461} [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/BUILD.gn [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/include/v8.h [delete] https://crrev.com/b01b9f4b49757a1cfc7138b743139ff9a31ff36a/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/array-buffer-tracker.h [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/heap.cc [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/heap.h [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/incremental-marking.cc [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/mark-compact.cc [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/objects-visiting-inl.h [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/scavenger.cc [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/spaces.cc [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/heap/spaces.h [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/src/v8.gyp [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/test/cctest/cctest.gyp [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/d2dff0320b75bf6054e46c379b192619d4884caf/test/cctest/heap/heap-utils.h [delete] https://crrev.com/b01b9f4b49757a1cfc7138b743139ff9a31ff36a/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457 commit b5704bc1e6ba74c9ca975f5d58f5b2dc60261457 Author: mlippautz <mlippautz@chromium.org> Date: Wed May 25 07:26:32 2016 Reland of "[heap] Fine-grained JSArrayBuffer tracking" Track based on JSArrayBuffer addresses on pages instead of the attached backing store. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. This reverts commit d2dff0320b75bf6054e46c379b192619d4884caf. R=hpayer@chromium.org BUG= chromium:611688 LOG=N CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Review-Url: https://codereview.chromium.org/2005723005 Cr-Commit-Position: refs/heads/master@{#36495} [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/BUILD.gn [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/include/v8.h [add] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/array-buffer-tracker.h [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/heap.cc [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/heap.h [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/incremental-marking.cc [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/mark-compact.cc [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/objects-visiting-inl.h [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/scavenger.cc [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/spaces-inl.h [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/spaces.cc [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/heap/spaces.h [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/src/v8.gyp [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/test/cctest/cctest.gyp [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/test/cctest/heap/heap-utils.h [add] https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/93fe04afa9428f4f68dc5dd302cda83908be84a7 commit 93fe04afa9428f4f68dc5dd302cda83908be84a7 Author: mlippautz <mlippautz@chromium.org> Date: Wed May 25 09:37:49 2016 Revert of "[heap] Fine-grained JSArrayBuffer tracking" (patchset #6 id:220001 of https://codereview.chromium.org/2005723005/ ) Reason for revert: Breaking TSAN https://uberchromegw.corp.google.com/i/client.v8/builders/V8%20Linux64%20TSAN/builds/9741/steps/Ignition%20-%20turbofan%20%28flakes%29/logs/FixedUint32Array Original issue's description: > Reland of "[heap] Fine-grained JSArrayBuffer tracking" > > Track based on JSArrayBuffer addresses on pages instead of the attached > backing store. > > Details of tracking: > - Scavenge: New space pages are processes in bulk on the main thread > - MC: Unswept pages are processed in bulk in parallel. All other pages > are processed by the sweeper concurrently. > > This reverts commit d2dff0320b75bf6054e46c379b192619d4884caf. > > R=hpayer@chromium.org > BUG= chromium:611688 > LOG=N > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > Committed: https://crrev.com/b5704bc1e6ba74c9ca975f5d58f5b2dc60261457 > Cr-Commit-Position: refs/heads/master@{#36495} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:611688 Review-Url: https://codereview.chromium.org/2011863002 Cr-Commit-Position: refs/heads/master@{#36504} [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/BUILD.gn [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/include/v8.h [delete] https://crrev.com/f768e53cd8e20fa5e24a096b9a443940d8968cf1/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/array-buffer-tracker.h [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/heap.cc [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/heap.h [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/incremental-marking.cc [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/mark-compact.cc [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/objects-visiting-inl.h [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/scavenger.cc [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/spaces-inl.h [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/spaces.cc [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/heap/spaces.h [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/src/v8.gyp [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/test/cctest/cctest.gyp [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/93fe04afa9428f4f68dc5dd302cda83908be84a7/test/cctest/heap/heap-utils.h [delete] https://crrev.com/f768e53cd8e20fa5e24a096b9a443940d8968cf1/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/863d015e573798e263b35b31d2ab979739706533 commit 863d015e573798e263b35b31d2ab979739706533 Author: mlippautz <mlippautz@chromium.org> Date: Wed May 25 12:08:54 2016 Reland of "[heap] Fine-grained JSArrayBuffer tracking" Track based on JSArrayBuffer addresses on pages instead of the attached backing store. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. This reverts commit 93fe04afa9428f4f68dc5dd302cda83908be84a7. R=hpayer@chromium.org BUG= chromium:611688 LOG=N CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Review-Url: https://codereview.chromium.org/2007253002 Cr-Commit-Position: refs/heads/master@{#36513} [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/BUILD.gn [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/include/v8.h [add] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/array-buffer-tracker.h [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/heap.cc [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/heap.h [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/incremental-marking.cc [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/mark-compact.cc [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/objects-visiting-inl.h [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/scavenger.cc [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/spaces-inl.h [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/spaces.cc [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/heap/spaces.h [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/src/v8.gyp [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/test/cctest/cctest.gyp [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/test/cctest/heap/heap-utils.h [add] https://crrev.com/863d015e573798e263b35b31d2ab979739706533/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/b9b0868ec49a52c9a80c9beea862a61707b292e5 commit b9b0868ec49a52c9a80c9beea862a61707b292e5 Author: mlippautz <mlippautz@chromium.org> Date: Wed May 25 16:29:41 2016 Revert of "[heap] Fine-grained JSArrayBuffer tracking" (patchset #3 id:80001 of https://codereview.chromium.org/2007253002/ ) Reason for revert: Breaks webgl2 conformance tests https://bugs.chromium.org/p/chromium/issues/detail?id=614730 Original issue's description: > Reland of "[heap] Fine-grained JSArrayBuffer tracking" > > Track based on JSArrayBuffer addresses on pages instead of the attached > backing store. > > Details of tracking: > - Scavenge: New space pages are processes in bulk on the main thread > - MC: Unswept pages are processed in bulk in parallel. All other pages > are processed by the sweeper concurrently. > > This reverts commit 93fe04afa9428f4f68dc5dd302cda83908be84a7. > > R=hpayer@chromium.org > BUG= chromium:611688 > LOG=N > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > Committed: https://crrev.com/863d015e573798e263b35b31d2ab979739706533 > Cr-Commit-Position: refs/heads/master@{#36513} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:611688 Review-Url: https://codereview.chromium.org/2011563003 Cr-Commit-Position: refs/heads/master@{#36524} [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/BUILD.gn [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/include/v8.h [delete] https://crrev.com/3412af0b40764be2d1095f16ef70bb3749b4d8e5/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/array-buffer-tracker.h [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/heap.cc [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/heap.h [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/incremental-marking.cc [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/mark-compact.cc [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/objects-visiting-inl.h [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/scavenger.cc [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/spaces-inl.h [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/spaces.cc [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/heap/spaces.h [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/src/v8.gyp [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/test/cctest/cctest.gyp [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5/test/cctest/heap/heap-utils.h [delete] https://crrev.com/3412af0b40764be2d1095f16ef70bb3749b4d8e5/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/b23e008885c4c452ae2b329c9dad167a76e4d7be commit b23e008885c4c452ae2b329c9dad167a76e4d7be Author: mlippautz <mlippautz@chromium.org> Date: Wed May 25 21:06:53 2016 Reland of "[heap] Fine-grained JSArrayBuffer tracking" (patchset #1 id:1 of https://codereview.chromium.org/2011563003/ ) Reason for revert: Premature revert. Chromium roll included an earlier version. Original issue's description: > Revert of "[heap] Fine-grained JSArrayBuffer tracking" (patchset #3 id:80001 of https://codereview.chromium.org/2007253002/ ) > > Reason for revert: > Breaks webgl2 conformance tests > https://bugs.chromium.org/p/chromium/issues/detail?id=614730 > > Original issue's description: > > Reland of "[heap] Fine-grained JSArrayBuffer tracking" > > > > Track based on JSArrayBuffer addresses on pages instead of the attached > > backing store. > > > > Details of tracking: > > - Scavenge: New space pages are processes in bulk on the main thread > > - MC: Unswept pages are processed in bulk in parallel. All other pages > > are processed by the sweeper concurrently. > > > > This reverts commit 93fe04afa9428f4f68dc5dd302cda83908be84a7. > > > > R=hpayer@chromium.org > > BUG= chromium:611688 > > LOG=N > > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > > > Committed: https://crrev.com/863d015e573798e263b35b31d2ab979739706533 > > Cr-Commit-Position: refs/heads/master@{#36513} > > TBR=hpayer@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG= chromium:611688 > > Committed: https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5 > Cr-Commit-Position: refs/heads/master@{#36524} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:611688 Review-Url: https://codereview.chromium.org/2009383002 Cr-Commit-Position: refs/heads/master@{#36530} [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/BUILD.gn [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/include/v8.h [add] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/array-buffer-tracker.h [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/heap.cc [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/heap.h [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/incremental-marking.cc [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/mark-compact.cc [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/objects-visiting-inl.h [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/scavenger.cc [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/spaces-inl.h [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/spaces.cc [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/spaces.h [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/v8.gyp [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/test/cctest/cctest.gyp [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/test/cctest/heap/heap-utils.h [add] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/6a92d748759ada2ee404dfab1e3158565397efb2 commit 6a92d748759ada2ee404dfab1e3158565397efb2 Author: mlippautz <mlippautz@chromium.org> Date: Wed May 25 21:20:46 2016 Revert of "[heap] Fine-grained JSArrayBuffer tracking" (patchset #1 id:1 of https://codereview.chromium.org/2009383002/ ) Reason for revert: https://build.chromium.org/p/chromium.gpu.fyi/builders/Linux%20Debug%20%28NVIDIA%29/builds/29860/steps/maps_pixel_test%20on%20NVIDIA%20GPU%20on%20Linux%20on%20Linux/logs/stdio Original issue's description: > Reland of "[heap] Fine-grained JSArrayBuffer tracking" (patchset #1 id:1 of https://codereview.chromium.org/2011563003/ ) > > Reason for revert: > Premature revert. Chromium roll included an earlier version. > > Original issue's description: > > Revert of "[heap] Fine-grained JSArrayBuffer tracking" (patchset #3 id:80001 of https://codereview.chromium.org/2007253002/ ) > > > > Reason for revert: > > Breaks webgl2 conformance tests > > https://bugs.chromium.org/p/chromium/issues/detail?id=614730 > > > > Original issue's description: > > > Reland of "[heap] Fine-grained JSArrayBuffer tracking" > > > > > > Track based on JSArrayBuffer addresses on pages instead of the attached > > > backing store. > > > > > > Details of tracking: > > > - Scavenge: New space pages are processes in bulk on the main thread > > > - MC: Unswept pages are processed in bulk in parallel. All other pages > > > are processed by the sweeper concurrently. > > > > > > This reverts commit 93fe04afa9428f4f68dc5dd302cda83908be84a7. > > > > > > R=hpayer@chromium.org > > > BUG= chromium:611688 > > > LOG=N > > > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > > > > > Committed: https://crrev.com/863d015e573798e263b35b31d2ab979739706533 > > > Cr-Commit-Position: refs/heads/master@{#36513} > > > > TBR=hpayer@chromium.org > > # Skipping CQ checks because original CL landed less than 1 days ago. > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG= chromium:611688 > > > > Committed: https://crrev.com/b9b0868ec49a52c9a80c9beea862a61707b292e5 > > Cr-Commit-Position: refs/heads/master@{#36524} > > TBR=hpayer@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG= chromium:611688 > > Committed: https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be > Cr-Commit-Position: refs/heads/master@{#36530} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:611688 Review-Url: https://codereview.chromium.org/2009893003 Cr-Commit-Position: refs/heads/master@{#36531} [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/BUILD.gn [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/include/v8.h [delete] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/array-buffer-tracker.h [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/heap.cc [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/heap.h [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/incremental-marking.cc [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/mark-compact.cc [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/objects-visiting-inl.h [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/scavenger.cc [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/spaces-inl.h [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/spaces.cc [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/heap/spaces.h [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/src/v8.gyp [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/test/cctest/cctest.gyp [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/6a92d748759ada2ee404dfab1e3158565397efb2/test/cctest/heap/heap-utils.h [delete] https://crrev.com/b23e008885c4c452ae2b329c9dad167a76e4d7be/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c commit bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c Author: mlippautz <mlippautz@chromium.org> Date: Mon May 30 14:51:08 2016 Reland "[heap] Fine-grained JSArrayBuffer tracking" Track based on JSArrayBuffer addresses on pages instead of the attached backing store. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. BUG= chromium:614730 , chromium:611688 LOG=N CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Review-Url: https://codereview.chromium.org/2026463002 Cr-Commit-Position: refs/heads/master@{#36592} [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/BUILD.gn [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/include/v8.h [add] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/array-buffer-tracker.h [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/heap.cc [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/heap.h [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/incremental-marking.cc [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/mark-compact.cc [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/objects-visiting-inl.h [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/scavenger.cc [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/spaces-inl.h [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/spaces.cc [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/spaces.h [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/v8.gyp [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/test/cctest/cctest.gyp [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/test/cctest/heap/heap-utils.h [add] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/ecb2ec8ff30289c59804afdd5359f3634e1c8921 commit ecb2ec8ff30289c59804afdd5359f3634e1c8921 Author: mlippautz <mlippautz@chromium.org> Date: Mon May 30 15:48:28 2016 Revert of Reland "[heap] Fine-grained JSArrayBuffer tracking" (patchset #3 id:60001 of https://codereview.chromium.org/2026463002/ ) Reason for revert: Investigating new arm simulator failure: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm%20-%20sim/builds/851/steps/Check%20-%20novfp3/logs/box2d Original issue's description: > Reland "[heap] Fine-grained JSArrayBuffer tracking" > > Track based on JSArrayBuffer addresses on pages instead of the attached > backing store. > > Details of tracking: > - Scavenge: New space pages are processes in bulk on the main thread > - MC: Unswept pages are processed in bulk in parallel. All other pages > are processed by the sweeper concurrently. > > BUG= chromium:614730 , chromium:611688 > LOG=N > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > Committed: https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c > Cr-Commit-Position: refs/heads/master@{#36592} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:614730 , chromium:611688 Review-Url: https://codereview.chromium.org/2021893002 Cr-Commit-Position: refs/heads/master@{#36593} [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/BUILD.gn [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/include/v8.h [delete] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/array-buffer-tracker.h [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/heap.cc [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/heap.h [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/incremental-marking.cc [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/mark-compact.cc [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/objects-visiting-inl.h [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/scavenger.cc [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/spaces-inl.h [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/spaces.cc [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/heap/spaces.h [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/src/v8.gyp [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/test/cctest/cctest.gyp [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/ecb2ec8ff30289c59804afdd5359f3634e1c8921/test/cctest/heap/heap-utils.h [delete] https://crrev.com/bc0fb6e83eb7351f52bfd6f780bb6c12bd87c58c/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/089da007bb990b5b29aab257aa836fdd3f3b8ce0 commit 089da007bb990b5b29aab257aa836fdd3f3b8ce0 Author: mlippautz <mlippautz@chromium.org> Date: Tue May 31 09:16:28 2016 Track based on JSArrayBuffer addresses on pages instead of the attached backing store. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. BUG= chromium:611688 LOG=N TEST=cctest/test-array-buffer-tracker/* CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Review-Url: https://codereview.chromium.org/2024063002 Cr-Commit-Position: refs/heads/master@{#36608} [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/BUILD.gn [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/include/v8.h [add] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/array-buffer-tracker.h [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/heap.cc [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/heap.h [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/incremental-marking.cc [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/mark-compact.cc [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/objects-visiting-inl.h [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/scavenger.cc [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/spaces-inl.h [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/spaces.cc [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/spaces.h [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/v8.gyp [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/test/cctest/cctest.gyp [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/test/cctest/heap/heap-utils.h [add] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/a43b732e0e4fc9cc35fc84379037c428c9fe9fce commit a43b732e0e4fc9cc35fc84379037c428c9fe9fce Author: mlippautz <mlippautz@chromium.org> Date: Tue May 31 09:31:11 2016 Revert of Reland "[heap] Fine-grained JSArrayBuffer tracking" (patchset #2 id:20001 of https://codereview.chromium.org/2024063002/ ) Reason for revert: Breaking http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20avx2/builds/7972 Original issue's description: > Track based on JSArrayBuffer addresses on pages instead of the attached > backing store. > > Details of tracking: > - Scavenge: New space pages are processes in bulk on the main thread > - MC: Unswept pages are processed in bulk in parallel. All other pages > are processed by the sweeper concurrently. > > BUG= chromium:611688 > LOG=N > TEST=cctest/test-array-buffer-tracker/* > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > Committed: https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0 > Cr-Commit-Position: refs/heads/master@{#36608} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:611688 Review-Url: https://codereview.chromium.org/2028503003 Cr-Commit-Position: refs/heads/master@{#36609} [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/BUILD.gn [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/include/v8.h [delete] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/array-buffer-tracker.h [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/heap.cc [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/heap.h [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/incremental-marking.cc [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/mark-compact.cc [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/objects-visiting-inl.h [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/scavenger.cc [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/spaces-inl.h [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/spaces.cc [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/heap/spaces.h [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/src/v8.gyp [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/test/cctest/cctest.gyp [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/a43b732e0e4fc9cc35fc84379037c428c9fe9fce/test/cctest/heap/heap-utils.h [delete] https://crrev.com/089da007bb990b5b29aab257aa836fdd3f3b8ce0/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/279e274eccf95fbb4bd41d908b9153acf6ec118a commit 279e274eccf95fbb4bd41d908b9153acf6ec118a Author: mlippautz <mlippautz@chromium.org> Date: Wed Jun 01 16:29:00 2016 Track based on JSArrayBuffer addresses on pages instead of the attached backing store. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. BUG= chromium:611688 LOG=N TEST=cctest/test-array-buffer-tracker/* CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Review-Url: https://codereview.chromium.org/2026633003 Cr-Commit-Position: refs/heads/master@{#36653} [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/include/v8.h [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/array-buffer-tracker.h [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/heap.cc [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/heap.h [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/mark-compact.cc [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/objects-visiting-inl.h [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/objects-visiting.h [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/scavenger.cc [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/spaces-inl.h [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/spaces.cc [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/src/heap/spaces.h [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/test/cctest/cctest.gyp [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/test/cctest/heap/heap-utils.h [add] https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/5979bf56541db4d369580992954cef3c7b3acddd commit 5979bf56541db4d369580992954cef3c7b3acddd Author: mlippautz <mlippautz@chromium.org> Date: Thu Jun 02 06:46:44 2016 Revert of Reland "[heap] Fine-grained JSArrayBuffer tracking" (patchset #7 id:180001 of https://codereview.chromium.org/2026633003/ ) Reason for revert: Also failing with the new implementation: https://build.chromium.org/p/chromium.gpu/builders/Linux%20Debug%20%28NVIDIA%29/builds/62646 Will do a local repro now. Original issue's description: > Track based on JSArrayBuffer addresses on pages instead of the attached > backing store. > > Details of tracking: > - Scavenge: New space pages are processes in bulk on the main thread > - MC: Unswept pages are processed in bulk in parallel. All other pages > are processed by the sweeper concurrently. > > BUG= chromium:611688 > LOG=N > TEST=cctest/test-array-buffer-tracker/* > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel > > Committed: https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a > Cr-Commit-Position: refs/heads/master@{#36653} TBR=hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:611688 Review-Url: https://codereview.chromium.org/2032973002 Cr-Commit-Position: refs/heads/master@{#36663} [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/include/v8.h [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/array-buffer-tracker.h [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/heap.cc [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/heap.h [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/mark-compact.cc [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/objects-visiting-inl.h [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/objects-visiting.h [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/scavenger.cc [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/spaces-inl.h [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/spaces.cc [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/src/heap/spaces.h [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/test/cctest/cctest.gyp [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/5979bf56541db4d369580992954cef3c7b3acddd/test/cctest/heap/heap-utils.h [delete] https://crrev.com/0d4c526a1dff8747838fe4269ab23522499a89fc/test/cctest/heap/test-array-buffer-tracker.cc
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/839f3fd406426a221d74eb7a33a72794c3c7a548 commit 839f3fd406426a221d74eb7a33a72794c3c7a548 Author: mlippautz <mlippautz@chromium.org> Date: Tue Jun 07 17:28:31 2016 Track based on JSArrayBuffer addresses on pages instead of the attached backing store. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. BUG= chromium:611688 LOG=N TEST=cctest/test-array-buffer-tracker/* CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Review-Url: https://codereview.chromium.org/2036643002 Cr-Commit-Position: refs/heads/master@{#36798} [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/include/v8.h [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/array-buffer-tracker.h [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/heap.cc [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/heap.h [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/mark-compact.cc [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/objects-visiting-inl.h [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/objects-visiting.h [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/scavenger.cc [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/spaces-inl.h [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/spaces.cc [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/src/heap/spaces.h [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/test/cctest/BUILD.gn [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/test/cctest/cctest.gyp [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/test/cctest/heap/heap-utils.cc [modify] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/test/cctest/heap/heap-utils.h [add] https://crrev.com/839f3fd406426a221d74eb7a33a72794c3c7a548/test/cctest/heap/test-array-buffer-tracker.cc
Post-mortem design doc as this turned out to be a non-trivial change https://docs.google.com/document/d/1-uvPXNqnEHsahiteUd4mIxDI9yjwdu9TZ1nXyQG3CbU/edit#heading=h.19hr2mth07g3
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/5846acc240dd5df71759fefbe9b1ad0bc17f6375 commit 5846acc240dd5df71759fefbe9b1ad0bc17f6375 Author: mlippautz <mlippautz@chromium.org> Date: Wed Jun 15 16:41:23 2016 [heap] Add inlined fast path for JSArrayBuffer (un)register in tracker BUG= chromium:619491 , chromium:611688 LOG=N R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2065013002 Cr-Commit-Position: refs/heads/master@{#37010} [modify] https://crrev.com/5846acc240dd5df71759fefbe9b1ad0bc17f6375/BUILD.gn [add] https://crrev.com/5846acc240dd5df71759fefbe9b1ad0bc17f6375/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/5846acc240dd5df71759fefbe9b1ad0bc17f6375/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/5846acc240dd5df71759fefbe9b1ad0bc17f6375/src/heap/array-buffer-tracker.h [modify] https://crrev.com/5846acc240dd5df71759fefbe9b1ad0bc17f6375/src/heap/heap.cc [modify] https://crrev.com/5846acc240dd5df71759fefbe9b1ad0bc17f6375/src/v8.gyp
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/8d2ae27808f047ca8b8f90e63a9c8735321d2ad0 commit 8d2ae27808f047ca8b8f90e63a9c8735321d2ad0 Author: mlippautz <mlippautz@chromium.org> Date: Tue Jun 28 08:36:33 2016 [heap] Optimize ArrayBuffer tracking With the current approach we only need to track using an unordered set as we can still access the backing store pointer and length by the time we free the backing store. BUG= chromium:619491 , chromium:611688 LOG=N R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2107443002 Cr-Commit-Position: refs/heads/master@{#37318} [modify] https://crrev.com/8d2ae27808f047ca8b8f90e63a9c8735321d2ad0/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/8d2ae27808f047ca8b8f90e63a9c8735321d2ad0/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/8d2ae27808f047ca8b8f90e63a9c8735321d2ad0/src/heap/array-buffer-tracker.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/0e1eaec71d5c6d05169308a71eaa51571e7c4f70 commit 0e1eaec71d5c6d05169308a71eaa51571e7c4f70 Author: mlippautz <mlippautz@chromium.org> Date: Wed Jun 29 05:29:24 2016 Revert of [heap] Optimize ArrayBuffer tracking (patchset #5 id:80001 of https://codereview.chromium.org/2107443002/ ) Reason for revert: Seems to break GPU bots Original issue's description: > [heap] Optimize ArrayBuffer tracking > > With the current approach we only need to track using an unordered set as we can > still access the backing store pointer and length by the time we free the > backing store. > > BUG= chromium:619491 , chromium:611688 > LOG=N > R=ulan@chromium.org > > Committed: https://crrev.com/8d2ae27808f047ca8b8f90e63a9c8735321d2ad0 > Cr-Commit-Position: refs/heads/master@{#37318} TBR=ulan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= chromium:619491 , chromium:611688 Review-Url: https://codereview.chromium.org/2105273002 Cr-Commit-Position: refs/heads/master@{#37358} [modify] https://crrev.com/0e1eaec71d5c6d05169308a71eaa51571e7c4f70/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/0e1eaec71d5c6d05169308a71eaa51571e7c4f70/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/0e1eaec71d5c6d05169308a71eaa51571e7c4f70/src/heap/array-buffer-tracker.h
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/f58dd088f0886f838f35a38613cd7b1a66f0cd63 commit f58dd088f0886f838f35a38613cd7b1a66f0cd63 Author: mlippautz <mlippautz@chromium.org> Date: Wed Jun 29 14:53:34 2016 Reland "[heap] Optimize ArrayBuffer tracking" With the current approach we only need to track using an unordered set as we can still access the backing store pointer and length by the time we free the backing store. Reland: The issue was fixed in 67b5a501db179412479e827e51c43515e4196b27. BUG= chromium:619491 , chromium:611688 LOG=N R=ulan@chromium.org This reverts commit 0e1eaec71d5c6d05169308a71eaa51571e7c4f70. Review-Url: https://codereview.chromium.org/2109913003 Cr-Commit-Position: refs/heads/master@{#37399} [modify] https://crrev.com/f58dd088f0886f838f35a38613cd7b1a66f0cd63/src/heap/array-buffer-tracker-inl.h [modify] https://crrev.com/f58dd088f0886f838f35a38613cd7b1a66f0cd63/src/heap/array-buffer-tracker.cc [modify] https://crrev.com/f58dd088f0886f838f35a38613cd7b1a66f0cd63/src/heap/array-buffer-tracker.h
Comment 1 by mlippautz@chromium.org
, May 13 2016