commit | f2aaa9fd5c7e05abd93fff7a71712bc19bd36eb2 | [log] [tgz] |
---|---|---|
author | Clemens Backes <clemensb@chromium.org> | Mon Jul 15 16:44:56 2024 |
committer | V8 LUCI CQ <v8-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Jul 16 10:18:27 2024 |
tree | ca03299ffb672d9d3dfb56544e9ad3a62111f570 | |
parent | b5fcb5eb179c71a68ae27c9bb67d55cc1fb1b88e [diff] |
[wasm] Embed canonical signature id as constant The canonical signature ID is needed for the type check on indirect calls. Even though it is a constant, we currently load it from the WasmTrustedInstanceData in order to make code cachable (because in another process we might have different canonicalized type IDs). This CL embeds the constant as a constant in the code, with relocation information to replace it by a module-local ID on serialization and replace back by a canonicalized ID on deserialization. This speeds up indirect calls by ~10% and frees up a field in the WasmTrustedInstanceData. R=dlehmann@chromium.org CC=jkummerow@chromium.org Bug: 42204513 Change-Id: Ie61fa7e849311566098102f54aed18a47f98846b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5676329 Reviewed-by: Daniel Lehmann <dlehmann@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#95051}
V8 is Google's open source JavaScript engine.
V8 implements ECMAScript as specified in ECMA-262.
V8 is written in C++ and is used in Google Chrome, the open source browser from Google.
V8 can run standalone, or can be embedded into any C++ application.
V8 Project page: https://v8.dev/docs
Checkout depot tools, and run
fetch v8
This will checkout V8 into the directory v8
and fetch all of its dependencies. To stay up to date, run
git pull origin gclient sync
For fetching all branches, add the following into your remote configuration in .git/config
:
fetch = +refs/branch-heads/*:refs/remotes/branch-heads/* fetch = +refs/tags/*:refs/tags/*
Please follow the instructions mentioned at v8.dev/docs/contribute.