v8/test/unittests
Dominik Inführ e2f98ec22c Use list of invalidated objects for old-to-new refs
Instead of inserting "deletion" entries into the store buffer, keep
a list of invalidated objects to filter out invalid old-to-new slots.

The first CL https://crrev.com/c/1704109 got reverted because both the sweeper and the main task were modifying the invalidated slots data structure concurrently. This CL changes this, such that the sweeper only modifies the invalidated slots during the final atomic pause when the main thread is not running. The sweeper does not need to clean this data structure after the pause, since the "update pointers" phase already removed all invalidated slots.

Bug: v8:9454
Change-Id: Iffb5bf96de2c89eee1ee1231a3414a0f2a155cbc
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1733081
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63087}
2019-08-06 09:01:59 +00:00
..
api Add regression tests that check the native context of accessors 2019-08-02 13:46:11 +00:00
asmjs Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
assembler Move architecture dependent files 2019-05-28 14:02:15 +00:00
base Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
codegen Move unittest files 2019-05-27 08:52:23 +00:00
compiler Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
compiler-dispatcher [wasm] Remove unused stack limit in export wrappers 2019-07-29 12:52:53 +00:00
date Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
diagnostics Move unittest files 2019-05-27 08:52:23 +00:00
execution [WeakRefs] Make cleanup callback run as a task 2019-07-30 12:19:39 +00:00
heap Use list of invalidated objects for old-to-new refs 2019-08-06 09:01:59 +00:00
interpreter Handlify bytecode array accessor's constant getters. 2019-06-17 16:13:30 +00:00
libplatform Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
logging [counters] Introduce proper bottleneck for FunctionCallback. 2019-06-12 09:04:38 +00:00
numbers [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
objects Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
parser Move remaining files in src/ 2019-05-24 18:24:36 +00:00
profiler [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
regress Move relevant files to src/execution 2019-05-22 08:36:33 +00:00
strings [cleanup] Remove 'typedef struct' and 'typedef enum' 2019-05-28 12:17:35 +00:00
tasks Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
torque [torque] Replace ReferenceType by generic Torque struct Reference<T> 2019-07-26 14:26:51 +00:00
utils [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
wasm Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
zone [zone] Remove segment pooling from accounting allocator 2019-03-01 09:25:48 +00:00
BUILD.gn Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
DEPS Move unit tests to test/unittests. 2014-10-01 08:34:25 +00:00
run-all-unittests.cc Reland "Add test to show the crashing of TimeZone::AdoptDefault" 2019-05-16 09:38:43 +00:00
test-helpers.cc [SFI] Always store function_literal_id in SFI. 2019-06-21 16:23:27 +00:00
test-helpers.h [Compiler] Remove CompilerDispatcherJob and use BackgroundCompileTask directly 2018-10-09 10:39:27 +00:00
test-utils.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-utils.h [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
testcfg.py Reland "Preparing v8 to use with python3 /test" 2019-03-20 09:56:06 +00:00
unittests.status Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00