• Benedikt Meurer's avatar
    [turbofan] Introduce dedicated NewConsString operator. · c061734f
    Benedikt Meurer authored
    This is in preparation of adding a dedicated StringLength operator that
    loads the string length. This way operations on strings don't sit in the
    effect chain anymore until the EffectControlLinearizer, which wires them.
    
    The NewConsString semantics could still be better, i.e. it could try to
    figure out the proper map instead of going for the CONS_STRING_TYPE
    always. But this change is meant to be just about pushing the logic down
    to the EffectControlLinearizer, which we didn't have initially when the
    ConsString handling was done.
    
    This also allows us to remove the handling of CONS_STRING_TYPE from the
    Deoptimizer, since the escape analysis no longer sees cons strings.
    
    Bug: v8:5269, v8:6936, v8:7109, v8:7137
    Change-Id: If6c4a6d7cf63a3a3f7a34a920c8e50a94dfa67fa
    Reviewed-on: https://chromium-review.googlesource.com/796413
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#49729}
    c061734f
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...