• Michael Hablich (vacation)'s avatar
    Revert "[turbofan] Speculate on bounds checks for String#charAt and String#charCodeAt." · 27905a33
    Michael Hablich (vacation) authored
    This reverts commit db129b65.
    
    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/873355Reviewed-by: 's avatarMichael Hablich (vacation) <hablich@chromium.org>
    Commit-Queue: Michael Hablich (vacation) <hablich@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#50672}
    27905a33
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
docs Loading commit data...
gni Loading commit data...
gypfiles Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...