Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deps: update V8 to 9.1 #38273

Merged
merged 20 commits into from
Jun 10, 2021
Merged

deps: update V8 to 9.1 #38273

merged 20 commits into from
Jun 10, 2021

Commits on Jun 10, 2021

  1. deps: update V8 to 9.1.269.36

    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    a7cbf19 View commit details
    Browse the repository at this point in the history
  2. build: reset embedder string to "-node.0"

    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    f4cc1b6 View commit details
    Browse the repository at this point in the history
  3. src: update NODE_MODULE_VERSION to 94

    Major V8 updates are usually API/ABI incompatible with previous
    versions. This commit adapts NODE_MODULE_VERSION for V8 9.1.
    
    Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    ed1d025 View commit details
    Browse the repository at this point in the history
  4. deps: V8: un-cherry-pick bd019bd

    Original commit message:
    
        [testrunner] delete ancient junit compatible format support
    
        Testrunner has ancient support for JUnit compatible XML output.
    
        This CL removes this old feature.
    
        R=mstarzinger@chromium.org,jgruber@chromium.org,jkummerow@chromium.org
        CC=​machenbach@chromium.org
    
        Bug: v8:8728
        Change-Id: I7e1beb011dbaec3aa1a27398a5c52abdd778eaf0
        Reviewed-on: https://chromium-review.googlesource.com/c/1430065
        Reviewed-by: Jakob Gruber <jgruber@chromium.org>
        Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
        Commit-Queue: Tamer Tas <tmrts@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#59045}
    
    Refs: v8/v8@bd019bd
    
    PR-URL: nodejs#32116
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    refack authored and targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    9c1d90b View commit details
    Browse the repository at this point in the history
  5. deps: V8: patch register-arm64.h

    Fixes a compilation issue on some platforms
    
    PR-URL: nodejs#32116
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    refack authored and targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    869eec1 View commit details
    Browse the repository at this point in the history
  6. deps: V8: forward declaration of Rtl*FunctionTable

    This should be semver-patch since actual invocation is version
    conditional.
    
    PR-URL: nodejs#32116
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    refack authored and targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    7ddbc9f View commit details
    Browse the repository at this point in the history
  7. deps: make v8.h compatible with VS2015

    There is a bug in the most recent version of VS2015 that affects v8.h
    and therefore prevents compilation of addons.
    
    Refs: https://stackoverflow.com/q/38378693
    
    PR-URL: nodejs#32116
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    joaocgreis authored and targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    6e9ece5 View commit details
    Browse the repository at this point in the history
  8. deps: fix V8 build issue with inline methods

    PR-URL: nodejs#35415
    Reviewed-By: Rich Trott <rtrott@gmail.com>
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: Myles Borins <myles.borins@gmail.com>
    gengjiawen authored and targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    5fcc318 View commit details
    Browse the repository at this point in the history
  9. deps: V8: backport aaacffa1e003

    Original commit message:
    
        PPC: skip all Simd tests on PPC
    
        As of https://crrev.com/c/2629465, Simd tests cannot pass on
        architectures without Simd support. Tests will need to be re-enabled
        once Simd support is fully implemented on PPC.
    
        Change-Id: I963639f1afa0c0ca7be3ca4b2fc06e874235b903
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2693056
        Reviewed-by: Zhi An Ng <zhin@chromium.org>
        Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
        Commit-Queue: Milad Fa <mfarazma@redhat.com>
        Cr-Commit-Position: refs/heads/master@{#72788}
    
    Refs: v8/v8@aaacffa
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    15800aa View commit details
    Browse the repository at this point in the history
  10. deps: silence irrelevant V8 warnings

    PR-URL: nodejs#37587
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Myles Borins <myles.borins@gmail.com>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    353ee7e View commit details
    Browse the repository at this point in the history
  11. deps: V8: cherry-pick d59db06bf542

    Original commit message:
    
        [weakrefs] Remove --no-harmony-weak-refs flag
    
        Bug: v8:8179
        Change-Id: I7f699073807d1874d0c10a4f1641de6bfb0efe6f
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2741582
        Commit-Queue: Shu-yu Guo <syg@chromium.org>
        Reviewed-by: Shu-yu Guo <syg@chromium.org>
        Reviewed-by: Adam Klein <adamk@chromium.org>
        Reviewed-by: Sathya Gunasekaran  <gsathya@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#73871}
    
    Refs: v8/v8@d59db06
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    0a04a9d View commit details
    Browse the repository at this point in the history
  12. deps: V8: cherry-pick c0fceaa0669b

    Original commit message:
    
        Reland "[api] JSFunction PromiseHook for v8::Context"
    
        This is a reland of d5457f5fb7ea05ca05a697599ffa50d35c1ae3c7
        after a speculative revert.
    
        Additionally it fixes an issue with throwing promise hooks.
    
        Original change's description:
        > [api] JSFunction PromiseHook for v8::Context
        >
        > This will enable Node.js to get much better performance from async_hooks
        > as currently PromiseHook delegates to C++ for the hook function and then
        > Node.js delegates it right back to JavaScript, introducing several
        > unnecessary barrier hops in code that gets called very, very frequently
        > in modern, promise-heavy applications.
        >
        > This API mirrors the form of the original C++ function based PromiseHook
        > API, however it is intentionally separate to allow it to use JSFunctions
        > triggered within generated code to, as much as possible, avoid entering
        > runtime functions entirely.
        >
        > Because PromiseHook has internal use also, beyond just the Node.js use,
        > I have opted to leave the existing API intact and keep this separate to
        > avoid conflicting with any possible behaviour expectations of other API
        > users.
        >
        > The design ideas for this new API stemmed from discussion with some V8
        > team members at a previous Node.js Diagnostics Summit hosted by Google
        > in Munich, and the relevant documentation of the discussion can be found
        > here: https://docs.google.com/document/d/1g8OrG5lMIUhRn1zbkutgY83MiTSMx-0NHDs8Bf-nXxM/edit#heading=h.w1bavzz80l1e
        >
        > A summary of the reasons for why this new design is important can be
        > found here: https://docs.google.com/document/d/1vtgoT4_kjgOr-Bl605HR2T6_SC-C8uWzYaOPDK5pmRo/edit?usp=sharing
        >
        > Bug: v8:11025
        > Change-Id: I0b403b00c37d3020b5af07b654b860659d3a7697
        > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2759188
        > Reviewed-by: Marja Hölttä <marja@chromium.org>
        > Reviewed-by: Camillo Bruni <cbruni@chromium.org>
        > Reviewed-by: Anton Bikineev <bikineev@chromium.org>
        > Reviewed-by: Igor Sheludko <ishell@chromium.org>
        > Commit-Queue: Camillo Bruni <cbruni@chromium.org>
        > Cr-Commit-Position: refs/heads/master@{#73858}
    
        Bug: v8:11025
        Bug: chromium:1197475
        Change-Id: I73a71e97d9c3dff89a2b092c3fe4adff81ede8ef
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2823917
        Reviewed-by: Marja Hölttä <marja@chromium.org>
        Reviewed-by: Igor Sheludko <ishell@chromium.org>
        Reviewed-by: Anton Bikineev <bikineev@chromium.org>
        Reviewed-by: Camillo Bruni <cbruni@chromium.org>
        Commit-Queue: Camillo Bruni <cbruni@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#74071}
    
    Refs: v8/v8@c0fceaa
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    5151d9d View commit details
    Browse the repository at this point in the history
  13. deps: V8: cherry-pick 272445f10927

    Original commit message:
    
        [runtime] Fix promise hooks
    
        promiseCapability can be undefined.
    
        Bug: v8:11025
        Bug: chromium:1201113
        Change-Id: I9da8764820cee0db1f0c38ed2fff0e3afeb9a80e
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2844649
        Reviewed-by: Marja Hölttä <marja@chromium.org>
        Commit-Queue: Camillo Bruni <cbruni@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#74117}
    
    Refs: v8/v8@272445f
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    cb97ec4 View commit details
    Browse the repository at this point in the history
  14. deps: V8: cherry-pick 5f4413194480

    Original commit message:
    
        [promises] Change context promise hooks to Callable
    
        The previously added perf-context Promise-hooks take a v8::Function as
        arguments. However, the builtin code was only accepting JSFunctions
        which causes cast errors.
    
        Drive-by-fix: Directly pass nativeContext in more places.
    
        Bug: chromium:1201465
        Change-Id: Ic8bed11253a1f18a84e71eb9ea809b1ec1c3f428
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2850162
        Reviewed-by: Jakob Gruber <jgruber@chromium.org>
        Commit-Queue: Camillo Bruni <cbruni@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#74223}
    
    Refs: v8/v8@5f44131
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    e6f622f View commit details
    Browse the repository at this point in the history
  15. deps: V8: cherry-pick 4c074516397b

    Original commit message:
    
        [promises] Fix slow path when context promise hooks are present
    
        Bug: chromium:1201936
        Change-Id: I1ee545e33587ddf4a5c7e1cbd64b53d36c75a146
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2850936
        Reviewed-by: Marja Hölttä <marja@chromium.org>
        Reviewed-by: Jakob Gruber <jgruber@chromium.org>
        Commit-Queue: Camillo Bruni <cbruni@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#74267}
    
    Refs: v8/v8@4c07451
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    c678285 View commit details
    Browse the repository at this point in the history
  16. deps: V8: cherry-pick fa4cb172cde2

    Original commit message:
    
        [runtime] Fix Promise.all context promise hooks
    
        We have to take the slow path in Promise.all if context promise hooks
        are set. The fast-path doesn't create intermediate promises by default.
    
        Bug: chromium:1204132, v8:11025
        Change-Id: Ide92de00a4f6df05e0ddbc8814f6673bd667f426
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2866771
        Reviewed-by: Victor Gomes <victorgomes@chromium.org>
        Commit-Queue: Camillo Bruni <cbruni@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#74326}
    
    Refs: v8/v8@fa4cb17
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    becfad1 View commit details
    Browse the repository at this point in the history
  17. tools: update V8 gypfiles for 9.1

    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    a6c73ad View commit details
    Browse the repository at this point in the history
  18. test: fix V8 serdes test for V8 9.1

    Refs: v8/v8@40e499c
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    f691dee View commit details
    Browse the repository at this point in the history
  19. test: adapt test-linux-perf to V8 changes

    Refs: v8/v8@9a31804
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    ce4b4cc View commit details
    Browse the repository at this point in the history
  20. test: adapt abort tests for new Windows code

    V8 9.1 changed the way it aborts on uncaught exceptions on Windows.
    It now uses the code 0x80000003 (exception breakpoint) instead of
    0xC0000005 (access violation).
    
    Refs: v8/v8@26d85ac
    
    PR-URL: nodejs#38273
    Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
    Reviewed-By: Michael Dawson <midawson@redhat.com>
    Reviewed-By: Mary Marchini <oss@mmarchini.me>
    targos committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    82b44f4 View commit details
    Browse the repository at this point in the history