• Michael Achenbach's avatar
    Revert "Remove weak-list of optimized JS functions." · 36b50283
    Michael Achenbach authored
    This reverts commit 84c2dfce.
    
    Reason for revert:
    https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/14876
    
    Original change's description:
    > Remove weak-list of optimized JS functions.
    > 
    > This CL removes the weak-list of JS functions from the context
    > and all the code that iterares over it. This list was being used
    > mainly during deoptimization (for code unlinking) and during
    > garbage collection. Removing it will improve performance of
    > programs that create many closures and trigger many scavenge GC
    > cycles.
    > 
    > No extra work is required during garbage collection. However,
    > given that we no longer unlink code from JS functions during
    > deoptimization, we leave it as it is, and on its next activation
    > we check whether the mark_for_deoptimization bit of that code is
    > set, and if it is, than we unlink it and jump to lazy compiled
    > code. This check happens in the prologue of every code object.
    > 
    > We needed to change/remove the cctests that used to check
    > something on this list.
    > 
    > Working in x64, ia32, arm64, arm, mips64 and mips. 
    > 
    > Bug: v8:6637
    > Change-Id: I7f192652c8034b16a9ea71303fa8e78cda3c48f3
    > Reviewed-on: https://chromium-review.googlesource.com/600427
    > Commit-Queue: Juliana Patricia Vicente Franco <jupvfranco@google.com>
    > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#47790}
    
    TBR=mstarzinger@chromium.org,jarin@chromium.org,leszeks@chromium.org,bmeurer@chromium.org,jupvfranco@google.com
    
    Change-Id: Ia4f1a8acf6ca5cd5c74266437a03d854b3739af2
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: v8:6637
    Reviewed-on: https://chromium-review.googlesource.com/647540Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
    Commit-Queue: Michael Achenbach <machenbach@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47792}
    36b50283
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...
.gitignore Loading commit data...
.gn 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...