• 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
deoptimizer.h 32.7 KB