commit | d6121fd1a32fdbba108a3f927a119637bfef4cc2 | [log] [tgz] |
---|---|---|
author | Ross McIlroy <rmcilroy@chromium.org> | Wed Apr 17 11:59:56 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Wed Apr 17 13:00:16 2019 |
tree | dee1ea93ca963a519e8cd1fb5e6454d69d296be5 | |
parent | f528509be90383f2b658ab7041d18e5de91000fb [diff] |
[Interpreter] Ensure Test*Handler don't allocate a frame for fast-path. Avoids allocating a frame for the fast-path in TestEqual, TestEqualStrict and TestLess/GreaterThan bytecode handlers. Also changes how feedback is tracked to try and avoid needing to keep feedback to "combine" with if it's unecessary which reduces the liveranges of the registers holding this data. This reduces the time needed for a tight loop in Ignition (e.g., while (i < 1000000000) ++i;) from 12.8s to 10.8s. BUG=v8:9133 Change-Id: I686b9da89541d15d233635db3276de3dad2fa282 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1570020 Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#60906}
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.