v8/test/cctest/heap
Michael Lippautz 210987a552 heap: ArrayBufferSweeper refactoring
The refactoring is triggered by https://crrev.com/c/3121905 where we
noticed that a bunch of tricky counter paths could be simplified,
making reasoning about corectness easier.

In this CL:
1. Use uniqe_ptr instead of Optional to allow moving SweepingJob away
   from the header file.
2. sweeping_in_progress_ is replaced with simply checking for a job.
3. freed_bytes_ are moved to the job and the dependency is reversed,
   avoiding the inside-out (Job->Sweeper) dependency completely.
4. Merge() and counter updates are merged into a Finalize() method.
5. FinishIfDone() allows for conditional finization.
6. young_bytes_ and old_bytes_ are removed as they were always updated
   when the corresponding bytes in the ArrayBufferList was updated.

Change-Id: I56e5b04087166ce03d3a9195ac48359122a84c73
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3124776
Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#76795}
2021-09-13 11:49:02 +00:00
..
heap-tester.h Reland "Reland "[deoptimizer] Change deopt entries into builtins"" 2020-10-21 06:01:38 +00:00
heap-utils.cc [heap] Fix failed tests when enabling single generation 2021-04-21 07:33:51 +00:00
heap-utils.h [heap, infra] Remove --local-heaps and --concurrent-allocation flags 2021-02-01 11:01:26 +00:00
test-alloc.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-array-buffer-tracker.cc heap: ArrayBufferSweeper refactoring 2021-09-13 11:49:02 +00:00
test-compaction.cc [base] Move utils/vector.h to base/vector.h 2021-06-18 13:33:13 +00:00
test-concurrent-allocation.cc [heap] Fix failed tests when enabling single generation 2021-04-21 07:33:51 +00:00
test-concurrent-marking.cc [heap] Fix failed tests when enabling single generation 2021-04-21 07:33:51 +00:00
test-embedder-tracing.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-external-string-tracker.cc [heap] Make creation of NewSpace and NewLargeObjectSpace optional 2021-05-04 06:47:54 +00:00
test-heap.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-incremental-marking.cc [test]: Fix platform lifetime in IncrementalMarkingUsingTasks. 2020-11-27 06:58:21 +00:00
test-invalidated-slots.cc [heap] Fix failed tests when enabling single generation 2021-04-21 07:33:51 +00:00
test-iterators.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-lab.cc Fix an instance of -Wunused-but-set-variable. 2021-07-26 20:52:03 +00:00
test-mark-compact.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-memory-measurement.cc [build] Reduce dependencies on deserializer.h 2021-06-29 13:21:57 +00:00
test-page-promotion.cc [test] Tests should only invoke NewSpace::Grow in safepoint 2020-09-24 16:14:10 +00:00
test-shared-heap.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-spaces.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-unmapper.cc [test]: Fix platform lifetime in EagerUnmappingInCollectAllAvailableGarbage. 2020-10-28 09:12:05 +00:00
test-weak-references.cc [ext-code-space] Migrate more code entries to CodeT 2021-06-18 08:42:47 +00:00
test-write-barrier.cc [heap] Fix failed tests when enabling single generation 2021-04-21 07:33:51 +00:00