commit | 27905a33f581c87fd47858eb71facab4691e8346 | [log] [tgz] |
---|---|---|
author | Michael Hablich (vacation) <hablich@chromium.org> | Thu Jan 18 11:34:04 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Jan 18 11:34:17 2018 |
tree | 9728558f54f49e13b40b73bc82963dbb0b6aa796 | |
parent | a7c91c778ccf6ff92b67bae72fc8b85d45587b47 [diff] |
Revert "[turbofan] Speculate on bounds checks for String#charAt and String#charCodeAt." This reverts commit db129b65259ff692a2675863a08f83f686c24029. Reason for revert: blocks roll: https://chromium-review.googlesource.com/c/chromium/src/+/873150 Original change's description: > [turbofan] Speculate on bounds checks for String#charAt and String#charCodeAt. > > With the new builtin optimization guard we can just speculatively assume > that the index passed to String#charAt and String#charCodeAt (in optimized > code) is going to be within the valid range for the receiver. This is > what Crankshaft used to do, and it avoids Smi checks on the result for > String#charCodeAt, since it can no longer return NaN. > > This gives rise to further optimizations of these builtins (i.e. to > completely avoid the tagging of char codes), and by itself already > improves the regression test originally reported from 650ms to > 610ms. > > Bug: v8:7127, v8:7326 > Change-Id: Ia25a555c5c1a48d229c094b1ecd2487eec81e390 > Reviewed-on: https://chromium-review.googlesource.com/872850 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#50667} TBR=yangguo@chromium.org,bmeurer@chromium.org Change-Id: I6d393a0797cac2fdfd67487a26ac1b178bd52813 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7127, v8:7326 Reviewed-on: https://chromium-review.googlesource.com/873355 Reviewed-by: Michael Hablich (vacation) <hablich@chromium.org> Commit-Queue: Michael Hablich (vacation) <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#50672}
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://github.com/v8/v8/wiki
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 on the V8 wiki.