v8/test/cctest/heap
Leszek Swirski 49c507dc99 [test] Make cctest run one test, with maybe custom platform
Remove cctest's ability to run multiple tests (which has long been
deprecated and mostly broken). We can then make platform & V8
initialisation be part of running the test's Run method.

In particular, this allows us to inject custom logic into the platform
initialisation, like setting up a platform wrapper. Add a
TEST_WITH_PLATFORM which exercises this by registering a platform
factory on the test, and wrapping the default platform using this
factory. This allows these tests to guarantee that the lifetime of the
platform is longer than the lifetime of the isolate.

As a result of this, we can also remove the complexity around draining
platform state in the TestPlatform (since it will now have a longer
lifetime than the Isolate using it), and as a drive-by clean up the
TestPlaform to use a CcTest-global "default platform" instead of trying
to scope over the "current" platform.

As another drive-by, change the linked-list of CcTests and the linear
search through it into an std::map of tests.

Change-Id: I610f6312fe042f29f45cc4dfba311e4184bc7759
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3569223
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#79772}
2022-04-05 09:39:18 +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: Refactor sweeping finalization for young GC 2022-03-08 16:48:43 +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 [heap] Add flag for disabling map space 2022-02-18 09:03:07 +00:00
test-array-buffer-tracker.cc heap: Rename compaction flags 2021-11-10 09:01:59 +00:00
test-compaction.cc heap: Refactor sweeping finalization for young GC 2022-03-08 16:48:43 +00:00
test-concurrent-allocation.cc heap: Factor out AllocationResult from heap.h 2022-02-14 08:54:16 +00:00
test-concurrent-marking.cc heap: Refactor sweeping finalization for young GC 2022-03-08 16:48:43 +00:00
test-embedder-tracing.cc [api] Remove TracedGlobal<> 2022-03-23 21:04:51 +00:00
test-external-string-tracker.cc heap: Rename compaction flags 2021-11-10 09:01:59 +00:00
test-heap.cc Revert "[heap] Only start incremental marking when V8 is not in GC VM state." 2022-03-25 16:07:53 +00:00
test-incremental-marking.cc [test] Make cctest run one test, with maybe custom platform 2022-04-05 09:39:18 +00:00
test-invalidated-slots.cc [cctest] Fix -Wshadow warnings in cctest/heap 2021-10-18 16:34:30 +00:00
test-iterators.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
test-lab.cc heap: Factor out AllocationResult from heap.h 2022-02-14 08:54:16 +00:00
test-mark-compact.cc heap: Refactor sweeping finalization for young GC 2022-03-08 16:48:43 +00:00
test-memory-measurement.cc [test] Make cctest run one test, with maybe custom platform 2022-04-05 09:39:18 +00:00
test-page-promotion.cc [heap] Remove flag always_promote_young_mc 2021-11-09 19:37:39 +00:00
test-shared-heap.cc [heap] Find references in client heaps to shared objects in shared GC 2021-12-06 12:00:18 +00:00
test-spaces.cc [heap] Initialize pages with placement-new 2022-03-28 09:18:55 +00:00
test-unmapper.cc [test] Make cctest run one test, with maybe custom platform 2022-04-05 09:39:18 +00:00
test-weak-references.cc [ext-code-space][compiler] Support calling CodeT targets 2021-12-16 13:45:12 +00:00
test-write-barrier.cc [heap] Fix failed tests when enabling single generation 2021-04-21 07:33:51 +00:00