v8/test/unittests/heap/cppgc
Michael Lippautz 881fc0496c [cppgc, cppgc-js] Implement GC on allocation failure
So far Oilpan garbage collection was only ever triggered via growing
strategies in either V8 or stand-alone heap growing. This CL
implements a fallback for GC on allocation.

- Stand-alone implementation will defer to GCInvoker which is aware of
  stack support.
- CppHeap implementation will just trigger a full V8 GC.

Bug: chromium:1352649
Change-Id: If92f705b4e272290ca7022864fd7b90f0fcb809e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3865148
Reviewed-by: Anton Bikineev <bikineev@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#82844}
2022-08-30 19:36:18 +00:00
..
age-table-unittest.cc cppgc: young-gen: Avoid eager commits of the age-table 2022-06-15 12:14:52 +00:00
allocation-unittest.cc Reland "cppgc: Add DCHECK that object start bitmap is safe to use" 2022-03-23 22:58:42 +00:00
compactor-unittest.cc cppgc: Deprecate (soon) cppgc::Visitor::Trace(T*) 2022-07-19 22:18:46 +00:00
concurrent-marking-unittest.cc cppgc: Cleanups 2021-03-15 08:37:39 +00:00
concurrent-sweeper-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
cross-thread-persistent-unittest.cc Migrate CrossThreadPersistent 2020-10-09 14:33:57 +00:00
custom-spaces-unittest.cc cppgc: Add support for double-word aligned allocations 2021-10-12 13:18:16 +00:00
ephemeron-pair-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
explicit-management-unittest.cc cppgc: young-gen: Fix compilation and tests with cppgc_enable_young_gen 2022-05-02 13:34:04 +00:00
finalizer-trait-unittest.cc cppgc: Rename unittest files 2020-05-08 08:50:48 +00:00
free-list-unittest.cc cppgc: Cleanups around testing 2021-03-05 17:04:19 +00:00
garbage-collected-unittest.cc Replace STATIC_ASSERT with static_assert 2022-05-13 13:46:27 +00:00
gc-info-unittest.cc [cppgc] Use global OOM handler for GCInfoTable 2022-07-05 17:11:15 +00:00
gc-invoker-unittest.cc testing: OverrideEmbedderStackStateScope should only affect implicit GCs 2022-03-09 14:29:34 +00:00
heap-growing-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
heap-object-header-unittest.cc cppgc: Rename HoH methods 2021-05-12 18:54:43 +00:00
heap-page-unittest.cc [cppgc, cppgc-js] Implement GC on allocation failure 2022-08-30 19:36:18 +00:00
heap-registry-unittest.cc cppgc: Improve Member checking 2021-05-17 13:48:26 +00:00
heap-statistics-collector-unittest.cc cppgc: Add support for double-word aligned allocations 2021-10-12 13:18:16 +00:00
heap-unittest.cc Remove "volatile" on arguments where deprecated in C++20. 2022-05-09 14:15:44 +00:00
incremental-marking-schedule-unittest.cc cppgc: Fix reporting of marked bytes in the atomic pause 2021-02-18 21:52:14 +00:00
liveness-broker-unittest.cc cppgc: LivenessBroker: Treat nullptr as live 2021-08-11 11:59:31 +00:00
logging-unittest.cc cppgc: fix sourceLocation test on gcc 2021-04-23 21:45:24 +00:00
marker-unittest.cc cppgc: Deprecate (soon) cppgc::Visitor::Trace(T*) 2022-07-19 22:18:46 +00:00
marking-verifier-unittest.cc cppgc: Add support for young generation only marking verification 2021-10-25 11:16:28 +00:00
marking-visitor-unittest.cc cppgc: Split of roots visitation from regular Visitor 2022-08-01 14:36:03 +00:00
member-unittest.cc cppgc: Avoid decompression for Member write barriers 2022-07-19 15:23:16 +00:00
metric-recorder-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
minor-gc-unittest.cc cppgc: Reset age table only for pages containing young objects 2022-06-13 13:14:00 +00:00
name-trait-unittest.cc [heap] Adjust cppgc heap statistics 2022-07-15 20:06:20 +00:00
object-size-trait-unittest.cc cppgc: Introduce ObjectSizeTrait 2021-01-22 20:53:55 +00:00
object-start-bitmap-unittest.cc cppgc: Remove -inl.h files 2020-07-01 08:46:26 +00:00
page-memory-unittest.cc [cppgc, cppgc-js] Implement GC on allocation failure 2022-08-30 19:36:18 +00:00
persistent-family-unittest.cc cppgc: Split of roots visitation from regular Visitor 2022-08-01 14:36:03 +00:00
platform-unittest.cc cppgc-js: Allow custom OOM handling and redirect to V8 handler 2021-08-24 20:21:28 +00:00
prefinalizer-unittest.cc Revert "cppgc: Add regression test and check for object start bitmap" 2022-03-23 21:07:16 +00:00
run-all-unittests.cc [test] Add a unittest platform setup mixin 2022-04-06 13:07:43 +00:00
sanitizer-unittest.cc cppgc: Allow ASAN-safe memset in SetMemoryInaccessible() 2021-05-07 08:14:17 +00:00
source-location-unittest.cc cppgc: Rename unittest files 2020-05-08 08:50:48 +00:00
stack-unittest.cc cppgc: stack unittest: Fix order of attributes 2021-05-06 23:10:17 +00:00
stats-collector-scopes-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
stats-collector-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
sweeper-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
test-platform.cc cppgc: Add tracing scopes 2020-11-19 15:48:17 +00:00
test-platform.h [config] Add V8_NODISCARD for Scope classes 2020-11-26 11:08:45 +00:00
testing-unittest.cc testing: OverrideEmbedderStackStateScope should only affect implicit GCs 2022-03-09 14:29:34 +00:00
tests.cc [sandbox] Initialize sandbox during V8::Initialize 2022-07-15 09:29:32 +00:00
tests.h cppgc: shared-cage: Introduce shared cage for all heaps 2022-06-09 10:42:32 +00:00
visitor-unittest.cc Revert "cppgc: Add regression test and check for object start bitmap" 2022-03-23 21:07:16 +00:00
weak-container-unittest.cc [heap] Bug fix and zeros in metrics for incremental mark/sweep 2022-07-19 11:45:38 +00:00
workloads-unittest.cc Reland "cppgc: Fix data race ObjectSizeTrait" 2021-11-29 13:14:25 +00:00
write-barrier-unittest.cc cppgc: young-gen: Fix compilation and tests with cppgc_enable_young_gen 2022-05-02 13:34:04 +00:00