v8/test/cctest/heap
Michael Lippautz 0af80a3796 api,heap: Avoid reaching out to embedder memory on TracedGlobal reset
Avoid clearing the memory on the embedder-side of a TracedGlobal handle.

When using destructors in TracedGlobal this is safe as long as the embedder
reports the handle on tracing GCs. If the embedder does not report a handle it
is assumed that the containing object is dead as well.

Without using destructors the same argument holds for tracing GCs. In addition,
embedders using the optimization of clearing references on non-tracing GCs
are expected to clear the reference in ResetHandleInNonTracingGC.

It is suggested that only expert embedders make use of (a) no destructors and
(b) IsRootForNonTracingGC.

Change-Id: Ia417c0eb0860094fcaa554e7046d38abac905714
Bug: chromium:995684
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1763539
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63362}
2019-08-23 10:32:29 +00:00
..
heap-tester.h Revert "Use list of invalidated objects for old-to-new refs" 2019-08-19 16:22:16 +00:00
heap-utils.cc Revert "[heap] Remove ClearRecordedSlots" 2019-08-22 12:06:36 +00:00
heap-utils.h Reland "Move API-related files" 2019-05-17 12:52:27 +00:00
test-alloc.cc Revert "[heap] Remove ClearRecordedSlots" 2019-08-22 12:06:36 +00:00
test-array-buffer-tracker.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
test-compaction.cc Enable cpplint 'runtime/references' warning 2019-07-08 09:59:36 +00:00
test-concurrent-marking.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-embedder-tracing.cc api,heap: Avoid reaching out to embedder memory on TracedGlobal reset 2019-08-23 10:32:29 +00:00
test-external-string-tracker.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-heap.cc Revert "[heap] Remove ClearRecordedSlots" 2019-08-22 12:06:36 +00:00
test-incremental-marking.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-invalidated-slots.cc Revert "Use list of invalidated objects for old-to-new refs" 2019-08-19 16:22:16 +00:00
test-iterators.cc [roheap] Move read_only_heap() from heap to isolate 2019-07-05 14:25:00 +00:00
test-lab.cc Revert "[heap] Remove ClearRecordedSlots" 2019-08-22 12:06:36 +00:00
test-mark-compact.cc Revert "[heap] Remove ClearRecordedSlots" 2019-08-22 12:06:36 +00:00
test-page-promotion.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
test-spaces.cc Revert "[heap] Remove ClearRecordedSlots" 2019-08-22 12:06:36 +00:00
test-unmapper.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-weak-references.cc [torque] Get rid of @noVerifier annotation on PromiseReactionJobTask 2019-06-13 16:24:10 +00:00