v8/include/cppgc
Michael Lippautz ae13b85b52 Reland "cppgc: Rework testing GC infrastructure"
This is a reland of eb4536797e

Original change's description:
> cppgc: Rework testing GC infrastructure
>
> Instead of moving the stand-alone logic to the base heap, allows
> specific heaps to override their stand-alone GC behavior. This allows
> CppHeap to reuse the unified heap bottlenecks and visitors for
> testing. This works as long as any v8 references are empty as there is
> no Isolate attached to the heap in this case.
>
> - Reverts parts of https://crrev.com/c/2716291
> - Relands parts of https://crrev.com/c/2718146
>
> In addition, add tests covering v8::CppHeap and cppgc::Heap.
>
> Bug: chromium:1056170
> Change-Id: I47dc88c7f0e4961a1aadd60da9b05bff4dcfb27a
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2718612
> Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
> Reviewed-by: Omer Katz <omerkatz@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#73077}

Bug: chromium:1056170
Change-Id: I415c837a7cf275c636172485dc4101c237a7d76b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2723253
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Omer Katz <omerkatz@chromium.org>
Auto-Submit: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#73081}
2021-02-26 21:29:42 +00:00
..
internal cppgc: Add missing guard for PersistentNode allocation. 2021-02-24 19:12:28 +00:00
allocation.h cppgc: MakeGarbageCollected: Move static asserts to implementation 2021-01-25 12:17:46 +00:00
common.h cppgc: Random style fixes and comment updates 2021-01-26 22:43:44 +00:00
cross-thread-persistent.h cppgc: Add missing guard for PersistentNode allocation. 2021-02-24 19:12:28 +00:00
custom-space.h cppgc: Fix CustomSpace trait 2021-01-27 16:48:28 +00:00
default-platform.h cppgc: Fix and merge cppgc samples 2020-11-26 09:12:35 +00:00
DEPS cppgc: Use libplatform as default platform 2020-10-08 18:16:52 +00:00
ephemeron-pair.h cppgc: Check ephemerons for unset key 2021-02-12 16:55:00 +00:00
garbage-collected.h cppgc: Improve API documentation 2020-10-19 09:36:18 +00:00
heap-consistency.h cppgc: Fix low-level write barriers 2021-02-05 15:22:04 +00:00
heap-state.h cppgc: Add WasConservativeGC to HeapState 2021-02-25 22:54:05 +00:00
heap-statistics.h cppgc: Rename allocated_size to physical_size in statistics 2021-02-11 17:44:35 +00:00
heap.h cppgc: Allow to disable incremental marking/sweeping 2020-12-10 15:59:38 +00:00
liveness-broker.h cppgc: Add WeakMember handler to LivenessBroker 2021-01-27 00:33:09 +00:00
macros.h cppgc: Add testing API structure 2021-02-03 16:00:37 +00:00
member.h cppgc: Fix low-level write barriers 2021-02-05 15:22:04 +00:00
name-provider.h cppgc: Add naming infrastructure 2020-10-08 12:25:21 +00:00
object-size-trait.h cppgc: Fix compilation error on older gcc compilers 2021-01-22 23:13:30 +00:00
OWNERS cppgc: Make bikineev and omerkatz owners of include/cppgc 2020-08-28 08:05:30 +00:00
persistent.h cppgc: Fix low-level write barriers 2021-02-05 15:22:04 +00:00
platform.h cppgc: Allow multiple calls to InitializeProcess/ShutdownProcess 2021-02-10 17:02:20 +00:00
prefinalizer.h cppgc: Fix IsGarabgeCollected trait and friends 2021-01-22 16:20:46 +00:00
process-heap-statistics.h cppgc: Implement process-global state accessors. 2021-02-17 22:37:24 +00:00
README.md cppgc: Hello world 2020-03-23 21:42:56 +00:00
sentinel-pointer.h cppgc: Fix low-level write barriers 2021-02-05 15:22:04 +00:00
source-location.h cppgc: Improve API documentation 2020-10-19 09:36:18 +00:00
testing.h Reland "cppgc: Rework testing GC infrastructure" 2021-02-26 21:29:42 +00:00
trace-trait.h cppgc: Fix IsGarabgeCollected trait and friends 2021-01-22 16:20:46 +00:00
type-traits.h cppgc: Fix GC traits and add documentation 2021-01-22 20:27:09 +00:00
visitor.h cppgc: Handle ephemerons with Mixin keys. 2021-02-26 00:11:22 +00:00

C++ Garbage Collection

This directory provides an open-source garbage collection library for C++.

The library is under construction, meaning that all APIs in this directory are incomplete and considered unstable and should not be used.