• Georg Neis's avatar
    [compiler] Fix an issue with deprecated maps · 6288483b
    Georg Neis authored
    Various field dependencies assume that the receiver map and the field
    owner map agree on field meta data. That's not necessarily true when
    the receiver map is already deprecated. We should skip over deprecated
    maps.
    
    - Fix a bug in SerializerForBackgroundCompilation. It used to process
      even deprecated maps.
    - Fix a bug in FilterRelevantReceiverMaps. It used to store the original
      map rather than the new version.
    - Turn some compilation dependency DCHECKs into CHECKs.
    - CHECK in MapRef::FindFieldOwner that the map is not deprecated. While
      there might be valid use cases for calling the underlying
      Map::FindFieldOwner on a deprecated map, we never want to do that in
      the compiler.
    
    Note that we skip any deprecated maps in JSNativeContextSpecialization's
    ReduceNamedAccess. That's why I believe the issue could only be observed
    with --concurrent-inlining and only in the form of a failing DCHECK.
    
    Bug: chromium:1221812, v8:7790
    Change-Id: I998b4ce1954be01eb6e0feb491ccc6b8306c685f
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2976655
    Commit-Queue: Georg Neis <neis@chromium.org>
    Reviewed-by: 's avatarSantiago Aboy Solanes <solanes@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#75294}
    6288483b
Name
Last commit
Last update
.github Loading commit data...
bazel Loading commit data...
build_overrides Loading commit data...
custom_deps Loading commit data...
docs Loading commit data...
gni 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...
.bazelrc Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.editorconfig Loading commit data...
.flake8 Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.mailmap Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.bazel Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
COMMON_OWNERS Loading commit data...
DEPS Loading commit data...
DIR_METADATA Loading commit data...
ENG_REVIEW_OWNERS Loading commit data...
INFRA_OWNERS Loading commit data...
INTL_OWNERS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
MIPS_OWNERS Loading commit data...
OWNERS Loading commit data...
PPC_OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
RISCV_OWNERS Loading commit data...
S390_OWNERS Loading commit data...
WATCHLISTS Loading commit data...
WORKSPACE Loading commit data...
codereview.settings Loading commit data...