v8/test/unittests
Michael Lippautz 611d1bb9a8 cppgc: Implement allocation on custom spaces
This patch provides infrastructure to pin object types to specific
spaces. This allows embedders to create mutual exclusive arenas for
certain (base) types. In future, this will also be used to provide
sliding-window compaction on certain custom spaces.

We mainly preserve the existing infrastructure with the difference
that spaces are now slightly more dynamic than in Blink as they are
kept in a vector instead of a fixed-size array.

The mechanism differs from Blink in that it does not allow the user
object to call allocation methods directly but instead provides a
trait that can be overridden to specify a custom space.

The patch preserves templatization for objects that do not go into
custom spaces to safe a branch in the allocation hot path.

Change-Id: I08aa6932348e2d6258e19c4a32d189865f459f02
Bug: chromium:1056170
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2187611
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#67666}
2020-05-08 07:20:49 +00:00
..
api Reland "[builtins] Clean up the use of class_name / ES5 [[Class]]" 2020-04-24 11:46:43 +00:00
asmjs Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
assembler [wasm][mips] Save FP & PC when calling C functions 2020-03-19 09:38:06 +00:00
base [heap] Move base::List to heap::List 2020-04-28 15:21:02 +00:00
codegen [csa] move TNode to separate header 2019-09-12 14:48:03 +00:00
compiler [TurboProp] Fully remove successors from schedule on unreachable. 2020-05-06 10:55:30 +00:00
compiler-dispatcher [Jobs]: Add job impl to default platform. 2020-04-24 15:31:21 +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 [sandbox] Access microtask queue in NativeContext via bottlenecks 2020-05-05 09:11:14 +00:00
heap cppgc: Implement allocation on custom spaces 2020-05-08 07:20:49 +00:00
interpreter [interpreter] Delete StackCheck bytecode 2020-03-20 15:16:01 +00:00
libplatform [platform] Remove DefaultPlatform::SetThreadPoolSize 2020-05-05 17:57:49 +00:00
logging Reland "Unconditionally enable snapshot builds and remove 'v8_use_snapshot'" 2019-10-16 06:01:05 +00:00
numbers [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
objects [wasm] Fix return value of concurrent memory.grow 2020-04-14 21:37:32 +00:00
parser Move remaining files in src/ 2019-05-24 18:24:36 +00:00
profiler [cpu-profiler] Add support for refcounting to StringsStorage 2020-03-30 19:08:06 +00:00
regress Reland "[runtime] Improve handling of enumeration index on global dictionary" 2020-03-02 15:41:15 +00:00
strings Fix some issues caught by _LIBCPP_DEBUG=0 2019-11-21 12:17:03 +00:00
tasks [compile] Add an UnoptimizedCompileState class 2020-04-23 07:08:28 +00:00
torque [torque] Don't crash when failing to find a non-constexpr type 2020-05-05 22:32:48 +00:00
utils [base] Fix {StaticCharVector} and add {StaticOneByteVector} 2020-04-17 18:45:32 +00:00
wasm [wasm][gc][refactor] Decode gc types with immediates consistently. 2020-05-06 14:31:29 +00:00
zone [zone] Remove segment pooling from accounting allocator 2019-03-01 09:25:48 +00:00
BUILD.gn cppgc: Implement allocation on custom spaces 2020-05-08 07:20:49 +00:00
DEPS Move unit tests to test/unittests. 2014-10-01 08:34:25 +00:00
run-all-unittests.cc [test] Configure GTest for thread-safe death tests. 2020-01-20 20:03:54 +00:00
test-helpers.cc [compile] Add an UnoptimizedCompileState class 2020-04-23 07:08:28 +00:00
test-helpers.h [compile] Add an UnoptimizedCompileState class 2020-04-23 07:08:28 +00:00
test-utils.cc [test] Create one Isolate per unit test (not test suite) 2020-04-14 11:36:25 +00:00
test-utils.h [test] Create one Isolate per unit test (not test suite) 2020-04-14 11:36:25 +00:00
testcfg.py Reland "Preparing v8 to use with python3 /test" 2019-03-20 09:56:06 +00:00
unittests.status [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00