• Leszek Swirski's avatar
    Reland "[off-thread] Allow off-thread top-level IIFE finalization" · 548c40ed
    Leszek Swirski authored
    This is a reland of 35a6eeec
    
    Reland fixes:
      * Add a SharedFunctionInfo::CopyFrom to encapsulate updating the SFI
        from the placeholder. This now includes copying scope_info (which
        wasn't included in the original CL and caused some of the issues)
      * Make sure that LocalHandleScope is initialised only inside of
        UnparkedScope (fixed TSAN issues)
      * Clean-up: Don't add `script_` to ParseInfo, but instead pass it
        separately to Parser. Eventually we'd ideally get rid of ParseInfo
        entirely (splitting it into input and output) so let's not add more
        fields to it. Reverts changing CreateScript to InitializeScript.
    
    Original change's description:
    > [off-thread] Allow off-thread top-level IIFE finalization
    >
    > Allow off-thread finalization for parallel compile tasks (i.e. for top-
    > level IIFEs).
    >
    > This allows us to merge the code paths in BackgroundCompileTask, and
    > re-enable the compiler dispatcher tests under the off-thread
    > finalization flag. Indeed, we can simplify further and get rid of that
    > flag entirely (it has been on-by-default for several releases now).
    >
    > Change-Id: I54f361997d651667fa813ec09790a6aab4d26774
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3226780
    > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    > Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#77615}
    
    Change-Id: If1a5b14900aa6753561e34e972a293be0be9a07d
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3256692
    Commit-Queue: Toon Verwaest <verwaest@chromium.org>
    Auto-Submit: Leszek Swirski <leszeks@chromium.org>
    Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77676}
    548c40ed
Name
Last commit
Last update
..
arm Loading commit data...
arm64 Loading commit data...
ia32 Loading commit data...
loong64 Loading commit data...
mips Loading commit data...
mips64 Loading commit data...
ppc Loading commit data...
riscv64 Loading commit data...
s390 Loading commit data...
shared-ia32-x64 Loading commit data...
x64 Loading commit data...
DEPS Loading commit data...
DIR_METADATA Loading commit data...
OWNERS Loading commit data...
aligned-slot-allocator.cc Loading commit data...
aligned-slot-allocator.h Loading commit data...
assembler-arch.h Loading commit data...
assembler-inl.h Loading commit data...
assembler.cc Loading commit data...
assembler.h Loading commit data...
atomic-memory-order.h Loading commit data...
bailout-reason.cc Loading commit data...
bailout-reason.h Loading commit data...
callable.h Loading commit data...
code-comments.cc Loading commit data...
code-comments.h Loading commit data...
code-desc.cc Loading commit data...
code-desc.h Loading commit data...
code-factory.cc Loading commit data...
code-factory.h Loading commit data...
code-reference.cc Loading commit data...
code-reference.h Loading commit data...
code-stub-assembler.cc Loading commit data...
code-stub-assembler.h Loading commit data...
compilation-cache.cc Loading commit data...
compilation-cache.h Loading commit data...
compiler.cc Loading commit data...
compiler.h Loading commit data...
constant-pool.cc Loading commit data...
constant-pool.h Loading commit data...
constants-arch.h Loading commit data...
cpu-features.h Loading commit data...
external-reference-encoder.cc Loading commit data...
external-reference-encoder.h Loading commit data...
external-reference-table.cc Loading commit data...
external-reference-table.h Loading commit data...
external-reference.cc Loading commit data...
external-reference.h Loading commit data...
flush-instruction-cache.cc Loading commit data...
flush-instruction-cache.h Loading commit data...
handler-table.cc Loading commit data...
handler-table.h Loading commit data...
interface-descriptors-inl.h Loading commit data...
interface-descriptors.cc Loading commit data...
interface-descriptors.h Loading commit data...
label.h Loading commit data...
machine-type.cc Loading commit data...
machine-type.h Loading commit data...
macro-assembler-inl.h Loading commit data...
macro-assembler.h Loading commit data...
optimized-compilation-info.cc Loading commit data...
optimized-compilation-info.h Loading commit data...
pending-optimization-table.cc Loading commit data...
pending-optimization-table.h Loading commit data...
register-arch.h Loading commit data...
register-configuration.cc Loading commit data...
register-configuration.h Loading commit data...
register.h Loading commit data...
reglist.h Loading commit data...
reloc-info.cc Loading commit data...
reloc-info.h Loading commit data...
safepoint-table.cc Loading commit data...
safepoint-table.h Loading commit data...
script-details.h Loading commit data...
signature.h Loading commit data...
source-position-table.cc Loading commit data...
source-position-table.h Loading commit data...
source-position.cc Loading commit data...
source-position.h Loading commit data...
string-constants.cc Loading commit data...
string-constants.h Loading commit data...
tick-counter.cc Loading commit data...
tick-counter.h Loading commit data...
tnode.cc Loading commit data...
tnode.h Loading commit data...
turbo-assembler.cc Loading commit data...
turbo-assembler.h Loading commit data...
unoptimized-compilation-info.cc Loading commit data...
unoptimized-compilation-info.h Loading commit data...