v8/include
Samuel Groß 32e2584405 [sandbox][x64] Access external pointer through a table
This change moves external pointers into a separate table and turns
external pointers in heap objects into indices into that table.

This CL implements one of two possible ownership models for the table
entries. With this one, every heap object owns its table entries, and
they are allocated when the owning object is allocated. As such, setting
external pointer fields does not require allocation of table entries. On
the other hand, table indices cannot be shared between multiple objects.

This CL does not yet implement freeing of external pointer table
entires. This will later happen by a table garbage collector.

Bug: v8:10391
Change-Id: I4d37785295c25a7d1dcbc9871dd5887b9d788a4f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235700
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Samuel Groß <saelo@google.com>
Cr-Commit-Position: refs/heads/master@{#70204}
2020-09-29 17:13:43 +00:00
..
cppgc Reland "cppgc: Provide jobs support through DefaultPlatform and TestPlatform" 2020-09-28 09:07:25 +00:00
libplatform [platform] Provide NewDefaultJobHandle function 2020-07-20 09:47:17 +00:00
APIDesign.md Move inspector protocol definitions to include/ 2019-06-18 17:59:36 +00:00
DEPS api: Add JSVisitor and JSMember reference 2020-07-07 13:48:31 +00:00
js_protocol-1.2.json Move inspector protocol definitions to include/ 2019-06-18 17:59:36 +00:00
js_protocol-1.3.json Move inspector protocol definitions to include/ 2019-06-18 17:59:36 +00:00
js_protocol.pdl [DevTools] Re-implemented Profiler.getRuntimeCallStats. 2020-09-08 18:32:05 +00:00
OWNERS [api] Add cbruni@ as api owner 2020-06-16 22:30:44 +00:00
v8-cppgc.h cppgc: Add basic operations for JSMember 2020-07-23 20:57:13 +00:00
v8-fast-api-calls.h [turbofan] Add tests for uint64 for fast API calls 2020-08-06 14:11:10 +00:00
v8-inspector-protocol.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-inspector.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-internal.h [sandbox][x64] Access external pointer through a table 2020-09-29 17:13:43 +00:00
v8-metrics.h [wasm][ukm] Add tests for Wasm events (reland) 2020-09-24 12:05:27 +00:00
v8-platform.h [Jobs API]: Expose JobDelegate::IsJoiningThread. 2020-09-17 16:49:07 +00:00
v8-profiler.h [cpu-profiler] Remove support for context filtering 2020-09-14 20:24:46 +00:00
v8-util.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-value-serializer-version.h Expose the ValueSerializer data format version as a compile-time constant. 2017-04-27 15:14:41 +00:00
v8-version-string.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-version.h Changed version number to 8.7 2020-08-20 13:54:00 +00:00
v8-wasm-trap-handler-posix.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8-wasm-trap-handler-win.h Fix LINT exceptions across the code base 2020-04-27 16:37:04 +00:00
v8.h [sandbox][x64] Access external pointer through a table 2020-09-29 17:13:43 +00:00
v8config.h [turbofan] Add double support in c-linkage for x64 2020-09-28 15:36:53 +00:00