• Leszek Swirski's avatar
    [compiler-dispatcher] Enqueue tasks for non-eager inner funcs · 5ab1ec1e
    Leszek Swirski authored
    Add suppose for compiling non-eager, non-top-level inner functions in
    parallel, using the compiler dispatcher. This behaviour can be enabled
    with --parallel-compile-tasks-for-lazy.
    
    There are a couple of consequences:
    
      * To support this we need support for off-thread ScopeInfo
        deserialization, so this adds that too.
      * The previous --parallel-compile-tasks flag is renamed to the more
        descriptive --parallel-compile-tasks-for-eager-toplevel.
      * Both parallel-compile-tasks flags are moved onto
        UnoptimizedCompileFlags so that they can be enabled/disabled on a
        per-compile basis (e.g. enabled for streaming, disabled for
        re-parsing).
      * asm.js compilations can now happen without an active Context (in
        the compiler dispatcher's idle finalization) so we can't get a
        ContextId for metric reporting; we'd need to somehow fix this if we
        wanted asm.js UKM but for now it's probably fine.
      * Took the opportunity to clean up some of the "can preparse" logic in
        the parser.
    
    Change-Id: I20b1ec6a6bacfe268808edc8d812b92370c5840d
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3281924
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
    Reviewed-by: 's avatarEmanuel Ziegler <ecmziegler@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#78183}
    5ab1ec1e
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...
.vpython3 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...
LOONG_OWNERS 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...