• Jaroslav Sevcik's avatar
    [deoptimizer] Make sure property arrays don't contain mutable heap numbers. · 9eb92da6
    Jaroslav Sevcik authored
    Since the deoptimizer generalizes maps for all materialized objects, it
    must make sure that none of the object's fields contain mutable heap numbers
    (only double fields are allowed to point to mutable heap numbers). With this CL,
    we simply change any mutable heap numbers in property arrays to immutable ones.
    
    This could be dangerous if some non-materialized object could point to this
    property array, but this cannot happen because interpreter registers cannot
    refer to naked property arrays.
    
    Bug: chromium:776309
    Change-Id: I897b604fa804de673710cfa3ba0595dbd9f80eeb
    Reviewed-on: https://chromium-review.googlesource.com/759781Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
    Commit-Queue: Jaroslav Sevcik <jarin@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#49263}
    9eb92da6
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...