deps: update V8 to 9.2 by targos · Pull Request #38990 · nodejs/node

@targos added the semver-major

PRs that contain breaking changes and should be released in the next major version.

label

Jun 10, 2021

@targos targos changed the title deps: update V8 to 92 deps: update V8 to 9.2

Jun 10, 2021

@targos targos added the wip

Issues and PRs that are still a work in progress.

label

Jun 10, 2021

targos added a commit to targos/node that referenced this pull request

Jul 20, 2021
Original commit message:

    Move DCHECK() in JSCallOrConstructNode ctor into a helper function.

    As is, the DCHECK() has a #if inside, and MSVC has trouble
    pre-processing that. Fix this by moving the conditional inside the
    DCHECK() into a separate helper function.

    Bug: v8:11760
    Change-Id: Ib4ae0fe263029bb426da378afa5b6881557ce652
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2919421
    Reviewed-by: Maya Lekova <mslekova@chromium.org>
    Reviewed-by: Clemens Backes <clemensb@chromium.org>
    Commit-Queue: Lei Zhang <thestig@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#74807}

Refs: v8/v8@7ff6609

PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 20, 2021
gtest_prod.h is not enough to build V8's cctests.

PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 25, 2021
PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 25, 2021
PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 25, 2021
PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 25, 2021
PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 25, 2021
V8 9.2 doesn't emit the "V8.ScriptCompiler" event anymore.
Use "V8.GCScavenger" instead.

PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 25, 2021
It it's not testing anything useful anymore.

PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos pushed a commit to targos/node that referenced this pull request

Jul 25, 2021
V8 had a bug that in certain cases the default microtask queue was
drained, and this test relies on the behavior.

PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit to targos/node that referenced this pull request

Jul 25, 2021
gtest_prod.h is not enough to build V8's cctests.

PR-URL: nodejs#38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
V8 9.2 doesn't emit the "V8.ScriptCompiler" event anymore.
Use "V8.GCScavenger" instead.

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
It it's not testing anything useful anymore.

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos pushed a commit that referenced this pull request

Jul 26, 2021
V8 had a bug that in certain cases the default microtask queue was
drained, and this test relies on the behavior.

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Original commit message:

    ARM64: VRegister::from_code expected to be constexpr

    GCC build fails trying to use a non constexpr function from a
    constexpr function.

    ../chromium-92.0.4503.0/v8/src/wasm/baseline/liftoff-register.h: In member function 'constexpr v8::internal::DoubleRegister v8::internal::wasm::LiftoffRegister::fp() const':
    ../chromium-92.0.4503.0/v8/src/wasm/baseline/liftoff-register.h:286:71: error: call to non-'constexpr' function 'static v8::internal::VRegister v8::internal::VRegister::from_code(int)'
      286 |     return DoubleRegister::from_code(code_ - kAfterMaxLiftoffGpRegCode);
          |                                                                       ^
    In file included from ../chromium-92.0.4503.0/v8/src/codegen/register-arch.h:16,
                     from ../chromium-92.0.4503.0/v8/src/deoptimizer/translation-array.h:8,
                     from ../chromium-92.0.4503.0/v8/src/objects/code.h:10,
                     from ../chromium-92.0.4503.0/v8/src/codegen/reloc-info.h:10,
                     from ../chromium-92.0.4503.0/v8/src/codegen/assembler.h:47,
                     from ../chromium-92.0.4503.0/v8/src/codegen/assembler-arch.h:8,
                     from ../chromium-92.0.4503.0/v8/src/codegen/turbo-assembler.h:12,
                     from ../chromium-92.0.4503.0/v8/src/codegen/macro-assembler.h:8,
                     from ../chromium-92.0.4503.0/v8/src/wasm/baseline/liftoff-assembler.h:13,
                     from ../chromium-92.0.4503.0/v8/src/wasm/baseline/liftoff-assembler.cc:5:
    ../chromium-92.0.4503.0/v8/src/codegen/arm64/register-arm64.h:416:20: note: 'static v8::internal::VRegister v8::internal::VRegister::from_code(int)' declared here
      416 |   static VRegister from_code(int code) {
          |                    ^~~~~~~~~

    Bug: chromium:819294
    Change-Id: Ia19ea90f3f666702d32c90e147af17dcda7e08a6
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2929805
    Reviewed-by: Maya Lekova <mslekova@chromium.org>
    Commit-Queue: José Dapena Paz <jdapena@igalia.com>
    Cr-Commit-Position: refs/heads/master@{#74889}

Refs: v8/v8@3d24b3a

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Original commit message:

    [codegen] Move definition of GetRegisterParameter to inline header

    This fixes compilation of V8 in Node.js with Visual Studio 2019.
    Without this change, MSVC errors with C3779 (a function that returns
    'auto' cannot be used before it is defined) on the `static constexpr
    auto registers()` method.

    Bug: v8:11420
    Change-Id: Id545199e2cdc10c8560031fb5950ec1171e5d554
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2964095
    Commit-Queue: Igor Sheludko <ishell@chromium.org>
    Reviewed-by: Igor Sheludko <ishell@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#75173}

Refs: v8/v8@71e8f8b

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos pushed a commit that referenced this pull request

Jul 26, 2021
Original commit message:

    [wasm-simd] Skip tests which require Simd enabled

    These tests require Simd enabled which causes failures
    on machines without the support.

    They are already skipped on Mips: https://crrev.com/c/2841887

    Change-Id: I4b9a9bb3cb208a0e9aa12dc135393bc515ad766e
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2927210
    Reviewed-by: Zhi An Ng <zhin@chromium.org>
    Commit-Queue: Milad Fa <mfarazma@redhat.com>
    Cr-Commit-Position: refs/heads/master@{#74891}

Refs: v8/v8@9862992

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Original commit message:

    Mark Node::opcode() and Operator::opcode() as constexpr.

    Without the explicit constexpr keyword, Clang seems to be able to treat
    these methods as constexpr, whereas MSVC will not.

    Bug: v8:11760
    Change-Id: I9f6492f38fb50dcaf7a4f09da0bd79c0da6a50eb
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2912916
    Reviewed-by: Clemens Backes <clemensb@chromium.org>
    Reviewed-by: Maya Lekova <mslekova@chromium.org>
    Commit-Queue: Lei Zhang <thestig@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#74791}

Refs: v8/v8@a5cea1b

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
Original commit message:

    Move DCHECK() in JSCallOrConstructNode ctor into a helper function.

    As is, the DCHECK() has a #if inside, and MSVC has trouble
    pre-processing that. Fix this by moving the conditional inside the
    DCHECK() into a separate helper function.

    Bug: v8:11760
    Change-Id: Ib4ae0fe263029bb426da378afa5b6881557ce652
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2919421
    Reviewed-by: Maya Lekova <mslekova@chromium.org>
    Reviewed-by: Clemens Backes <clemensb@chromium.org>
    Commit-Queue: Lei Zhang <thestig@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#74807}

Refs: v8/v8@7ff6609

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

targos added a commit that referenced this pull request

Jul 26, 2021
gtest_prod.h is not enough to build V8's cctests.

Backport-PR-URL: #39470
PR-URL: #38990
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>