summaryrefslogtreecommitdiff
path: root/deps
Commit message (Collapse)AuthorAgeFilesLines
* deps: V8: cherry-pick 81814ed44574Stephen Belanger2021-08-112-1/+17
| | | | | | | | | | | | | | | | | | | | | | Original commit message: [promise] Avoid stack overflow with context promise hooks in C++ This was handled in JS but not in C++. Bug: chromium:236703, v8:11025 Change-Id: Ic9adc4ceb4d2af2614427fec459c3e950654572f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3074460 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/master@{#76125} Refs: https://github.com/v8/v8/commit/81814ed44574dbdb19ad22857220ac81fba5c107 PR-URL: https://github.com/nodejs/node/pull/39719 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
* deps: update c-ares to 1.17.2Beth Griggs2021-08-1038-584/+888
| | | | | | | | | Refs: https://github.com/c-ares/c-ares/releases/tag/cares-1_17_2 PR-URL: https://github.com/nodejs/node/pull/39724 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
* deps: reflect c-ares source treeBeth Griggs2021-08-0687-79/+79
| | | | | | | | | | | | | | | c-ares refactored their source tree in 1.17.0 which we did not apply in our update to 1.17.1. This commit syncs our source with their new structure for easier maintenance going forward. cares.gyp is updated accordingly. Refs: https://github.com/c-ares/c-ares/pull/349 Refs: https://github.com/nodejs/node/pull/36207 PR-URL: https://github.com/nodejs/node/pull/39653 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: apply missed updates from c-ares 1.17.1Beth Griggs2021-08-063-62/+69
| | | | | | | | | PR-URL: https://github.com/nodejs/node/pull/39653 Refs: https://github.com/c-ares/c-ares/pull/349 Refs: https://github.com/nodejs/node/pull/36207 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: upgrade to libuv 1.42.0Luigi Pinca2021-08-04145-1172/+2353
| | | | | | | | | | | | | | | | | | | | | | | | | | Notable changes: - win,tcp: make `uv_close()` work more like unix. - cleanup,win: Remove `_WIN32` guards on threadpool. - more errno mappings and fixes. - higher performance try-writes. - fix string encoding issue of `uv_os_gethostname()` (note: MINGW-W64 upstream is broken on i686 due to https://sourceforge.net/p/mingw-w64/bugs/899/). - zOS support. - Workarounds for a `copy_file_range()` kernel bug. - Better support for TSan. - darwin: use `RLIMIT_STACK` for fsevents pthread. - fix a bug that would cause libuv to hang if the user called `uv_shutdown()`. - darwin: fix `uv_barrier()` race condition. PR-URL: https://github.com/nodejs/node/pull/39525 Fixes: https://github.com/nodejs/node/issues/39502 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* deps: upgrade npm to 7.20.3npm team2021-07-3026-820/+1740
| | | | | | PR-URL: https://github.com/nodejs/node/pull/39579 Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com>
* deps: upgrade npm to 7.20.2npm team2021-07-2884-271/+1943
| | | | | | | PR-URL: https://github.com/nodejs/node/pull/39549 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: Ruy Adorno <ruyadorno@github.com>
* deps: bump HdrHistogram_C to 0.11.2Matteo Collina2021-07-223-54/+379
| | | | | | | | | | | Release tag: https://github.com/HdrHistogram/HdrHistogram_c/releases/tag/0.11.2 Fixes: https://github.com/nodejs/node/issues/39450 PR-URL: https://github.com/nodejs/node/pull/39462 Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* deps: upgrade npm to 7.20.0npm team2021-07-20162-953/+4752
| | | | | | PR-URL: https://github.com/nodejs/node/pull/39403 Reviewed-By: Ruy Adorno <ruyadorno@github.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* deps: V8: backport 5c76da8ddcf8Michaël Zasso2021-07-202-2/+4
| | | | | | | | | | | | | | | | | | | | | | | Original commit message: [mips][wasm][liftoff] Fix compile failed Port 2b77ca200c56667c68895e49c96c10ff77834f09 Bug: v8:11809 Change-Id: Idbbbc10d1339d6c8463686b6e701fb601a217cab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2931557 Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu yu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/master@{#74934} Refs: https://github.com/v8/v8/commit/5c76da8ddcf89297a8dc2606b68da97d7a5329cb PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 359d44df4cddMichaël Zasso2021-07-201-1/+2
| | | | | | | | | | | | | | | | | | | | | Original commit message: [riscv64] Fix build failed Port 2b77ca200c56667c68895e49c96c10ff77834f09 Change-Id: Ie953a1d54f5529423ae35d1b1cd3ca25e8101c6e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2931577 Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Commit-Queue: Brice Dobry <brice.dobry@futurewei.com> Reviewed-by: Brice Dobry <brice.dobry@futurewei.com> Cr-Commit-Position: refs/heads/master@{#74937} Refs: https://github.com/v8/v8/commit/359d44df4cdd9cdb40cb683b47c2bea6bb7609f6 PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 3805a698f7b6Michaël Zasso2021-07-202-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: PPC/s390: [wasm][liftoff] Always zero-extend 32 bit offsets Port 2b77ca200c56667c68895e49c96c10ff77834f09 Original Commit Message: The upper 32 bits of the 64 bit offset register are not guaranteed to be cleared, so a zero-extension is needed. We already do the zero-extension in the case of explicit bounds checking, but this should also be done if the trap handler is enabled. R=thibaudm@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Ife3ae4f93b85fe1b2c76fe4b98fa408b5b51ed71 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2929661 Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#74886} Refs: https://github.com/v8/v8/commit/3805a698f7b6803dd6ee002cfdda71296c71b30b PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 56fe020eec0cMichaël Zasso2021-07-202-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: [wasm][arm64] Always zero-extend 32 bit offsets, for realz We've already been zero-extending 32-bit offset registers since https://chromium-review.googlesource.com/c/v8/v8/+/2917612, but that patch only covered the case where offset_imm == 0. When there is a non-zero offset, we need the same fix. Bug: chromium:1224882,v8:11809 Change-Id: I1908f735929798f411346807fc4f3c79d8e04362 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2998582 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#75500} Refs: https://github.com/v8/v8/commit/56fe020eec0c35e9816590114b1d80836a504156 Fixes: https://github.com/nodejs/node/issues/39327 PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 2b77ca200c56Michaël Zasso2021-07-207-12/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: [wasm][liftoff] Always zero-extend 32 bit offsets The upper 32 bits of the 64 bit offset register are not guaranteed to be cleared, so a zero-extension is needed. We already do the zero-extension in the case of explicit bounds checking, but this should also be done if the trap handler is enabled. R=clemensb@chromium.org CC=jkummerow@chromium.org Bug: v8:11809 Change-Id: I21e2535c701041d11fa06c176fa683d82db0a3f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2917612 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#74881} Refs: https://github.com/v8/v8/commit/2b77ca200c56667c68895e49c96c10ff77834f09 PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 53784bdb8f01Michaël Zasso2021-07-201-42/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: [liftoff] Handle constant memory indexes specially This adds detection for constant memory indexes which can statically be proven to be in-bounds (because the effective offset is within the minimum memory size). In these cases, we can skip the bounds check and the out-of-line code for the trap-handler. This often saves 1-2% of code size. R=ahaas@chromium.org Bug: v8:11802 Change-Id: I0ee094e6f1f5d132af1d6a8a7c539a4af6c3cb5e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2919827 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#74825} Refs: https://github.com/v8/v8/commit/53784bdb8f01a6ff76fc3acd3aec4d605cb3bfcc PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 7ff6609a5385Michaël Zasso2021-07-201-10/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/7ff6609a53854f859b12ba4b76606f397e074a70 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: cherry-pick a5cea1bfc38cMichaël Zasso2021-07-202-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/a5cea1bfc38ceafc74f4baddd6ab94ea13757ef8 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: cherry-pick 986299250e6dRichard Lau2021-07-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/986299250e6dd176c18055b46b4696bdb37d0bc2 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: backport 71e8f8bb3c26Michaël Zasso2021-07-202-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/71e8f8bb3c2654ba3b114f24d64a939b116f23e1 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: cherry-pick 3d24b3ab8af0Michaël Zasso2021-07-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/3d24b3ab8af0e822081f1b446a2439f13a086843 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: silence irrelevant V8 warningMichaël Zasso2021-07-201-1/+1
| | | | | | | | PR-URL: https://github.com/nodejs/node/pull/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>
* deps: silence irrelevant V8 warningsMichaël Zasso2021-07-201-3/+2
| | | | | | | PR-URL: https://github.com/nodejs/node/pull/37587 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com>
* deps: fix V8 build issue with inline methodsJiawen Geng2021-07-203-1/+14
| | | | | | | | | PR-URL: https://github.com/nodejs/node/pull/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>
* deps: make v8.h compatible with VS2015Joao Reis2021-07-201-0/+6
| | | | | | | | | | | | 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: https://github.com/nodejs/node/pull/32116 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
* deps: V8: forward declaration of `Rtl*FunctionTable`Refael Ackermann2021-07-201-0/+31
| | | | | | | | | | This should be semver-patch since actual invocation is version conditional. PR-URL: https://github.com/nodejs/node/pull/32116 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
* deps: V8: patch register-arm64.hRefael Ackermann2021-07-201-0/+2
| | | | | | | | | Fixes a compilation issue on some platforms PR-URL: https://github.com/nodejs/node/pull/32116 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
* deps: V8: un-cherry-pick bd019bdRefael Ackermann2021-07-203-0/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/bd019bdb725cebaa34327634d73936cd7003d17c PR-URL: https://github.com/nodejs/node/pull/32116 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
* deps: update V8 to 9.2.230.21Michaël Zasso2021-07-201435-38158/+54507
| | | | | | | | PR-URL: https://github.com/nodejs/node/pull/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>
* deps: update to cjs-module-lexer@1.2.2Guy Bedford2021-07-176-8/+13
| | | | | | | | | | PR-URL: https://github.com/nodejs/node/pull/39402 Reviewed-By: Bradley Farias <bradley.meck@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Zijian Liu <lxxyxzj@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Jan Krems <jan.krems@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* deps: extract gtest source files to deps/googletestlegendecas2021-07-1636-0/+25314
| | | | | | | PR-URL: https://github.com/nodejs/node/pull/39386 Refs: https://github.com/nodejs/node/pull/39361 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: backport 5c76da8ddcf8Michaël Zasso2021-07-122-2/+4
| | | | | | | | | | | | | | | | | | | | | | | Original commit message: [mips][wasm][liftoff] Fix compile failed Port 2b77ca200c56667c68895e49c96c10ff77834f09 Bug: v8:11809 Change-Id: Idbbbc10d1339d6c8463686b6e701fb601a217cab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2931557 Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu yu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/master@{#74934} Refs: https://github.com/v8/v8/commit/5c76da8ddcf89297a8dc2606b68da97d7a5329cb PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 359d44df4cddMichaël Zasso2021-07-121-1/+2
| | | | | | | | | | | | | | | | | | | | | Original commit message: [riscv64] Fix build failed Port 2b77ca200c56667c68895e49c96c10ff77834f09 Change-Id: Ie953a1d54f5529423ae35d1b1cd3ca25e8101c6e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2931577 Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Commit-Queue: Brice Dobry <brice.dobry@futurewei.com> Reviewed-by: Brice Dobry <brice.dobry@futurewei.com> Cr-Commit-Position: refs/heads/master@{#74937} Refs: https://github.com/v8/v8/commit/359d44df4cdd9cdb40cb683b47c2bea6bb7609f6 PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 3805a698f7b6Michaël Zasso2021-07-122-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: PPC/s390: [wasm][liftoff] Always zero-extend 32 bit offsets Port 2b77ca200c56667c68895e49c96c10ff77834f09 Original Commit Message: The upper 32 bits of the 64 bit offset register are not guaranteed to be cleared, so a zero-extension is needed. We already do the zero-extension in the case of explicit bounds checking, but this should also be done if the trap handler is enabled. R=thibaudm@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Ife3ae4f93b85fe1b2c76fe4b98fa408b5b51ed71 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2929661 Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#74886} Refs: https://github.com/v8/v8/commit/3805a698f7b6803dd6ee002cfdda71296c71b30b PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 56fe020eec0cMichaël Zasso2021-07-122-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: [wasm][arm64] Always zero-extend 32 bit offsets, for realz We've already been zero-extending 32-bit offset registers since https://chromium-review.googlesource.com/c/v8/v8/+/2917612, but that patch only covered the case where offset_imm == 0. When there is a non-zero offset, we need the same fix. Bug: chromium:1224882,v8:11809 Change-Id: I1908f735929798f411346807fc4f3c79d8e04362 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2998582 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#75500} Refs: https://github.com/v8/v8/commit/56fe020eec0c35e9816590114b1d80836a504156 Fixes: https://github.com/nodejs/node/issues/39327 PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 2b77ca200c56Michaël Zasso2021-07-127-12/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: [wasm][liftoff] Always zero-extend 32 bit offsets The upper 32 bits of the 64 bit offset register are not guaranteed to be cleared, so a zero-extension is needed. We already do the zero-extension in the case of explicit bounds checking, but this should also be done if the trap handler is enabled. R=clemensb@chromium.org CC=jkummerow@chromium.org Bug: v8:11809 Change-Id: I21e2535c701041d11fa06c176fa683d82db0a3f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2917612 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#74881} Refs: https://github.com/v8/v8/commit/2b77ca200c56667c68895e49c96c10ff77834f09 PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick 53784bdb8f01Michaël Zasso2021-07-121-42/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: [liftoff] Handle constant memory indexes specially This adds detection for constant memory indexes which can statically be proven to be in-bounds (because the effective offset is within the minimum memory size). In these cases, we can skip the bounds check and the out-of-line code for the trap-handler. This often saves 1-2% of code size. R=ahaas@chromium.org Bug: v8:11802 Change-Id: I0ee094e6f1f5d132af1d6a8a7c539a4af6c3cb5e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2919827 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#74825} Refs: https://github.com/v8/v8/commit/53784bdb8f01a6ff76fc3acd3aec4d605cb3bfcc PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: V8: cherry-pick cb4faa902e9fMichaël Zasso2021-07-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message: Reland "[liftoff][arm64] Use 64 bit offset reg in mem op" This is a reland of f645d0b857bc669271adcbe95cf25e1554347dd4 The issue was that converting an i64 to an i32 didn't clear the upper bits on arm64. This was not necessary before because we did the zero extension as part of the load operand, but this is required now that we use the full register. Original change's description: > [liftoff][arm64] Use 64 bit offset reg in mem op > > Accessing the Wasm memory with a 64 bit offset was truncated to 32 bit, > which is fine if we check bounds first, but not if we rely on the > trap handler to catch the OOB. > > R=clemensb@chromium.org > > Bug: v8:11587 > Change-Id: I82a3a2906e55d9d640c30e770a5c93532e3a442c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2808942 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#73829} Bug: v8:11587 Change-Id: Ibc182475745c6f697a0ba6d75c260b74ddf8fe52 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2810846 Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#73853} Refs: https://github.com/v8/v8/commit/cb4faa902e9f9fe848b46fbe8047f70ad4a54971 PR-URL: https://github.com/nodejs/node/pull/39337 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: patch V8 to 9.1.269.38Michaël Zasso2021-07-105-20/+52
| | | | | | | | | | | | | Refs: https://github.com/v8/v8/compare/9.1.269.36...9.1.269.38 Fixes: https://github.com/nodejs/node/issues/37553 PR-URL: https://github.com/nodejs/node/pull/39196 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* build: uvwasi honours node_shared_libuvJérémy Lal2021-07-081-3/+5
| | | | | | | | | | Fix #39248. PR-URL: https://github.com/nodejs/node/pull/39260 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
* deps: upgrade npm to 7.19.1npm-robot2021-07-0593-254/+131
| | | | | | | PR-URL: https://github.com/nodejs/node/pull/39225 Reviewed-By: Ruy Adorno <ruyadorno@github.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* deps: uv: cherry-pick 99c29c9c2c9bBen Noordhuis2021-07-013-13/+57
| | | | | | | | | | | | | | | | | | | | | | Original commit message: idna: fix OOB read in punycode decoder Reported by Eric Sesterhenn in collaboration with Cure53 and ExpressVPN. Reported-By: Eric Sesterhenn <eric.sesterhenn@x41-dsec.de> PR-URL: https://github.com/libuv/libuv-private/pull/1 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> CVE-ID: CVE-2021-22918 Refs: https://hackerone.com/reports/1209681 PR-URL: https://github.com/nodejs-private/node-private/pull/267 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com>
* deps: upgrade npm to 7.19.0npm-robot2021-06-2978-1054/+2781
| | | | | | PR-URL: https://github.com/nodejs/node/pull/39148 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
* deps: update Acorn to v8.4.1Michaël Zasso2021-06-2937-955/+838
| | | | | | | | | | | | | We can remove the Acorn plugins as their features are now supported by default. PR-URL: https://github.com/nodejs/node/pull/39166 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Guy Bedford <guybedford@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
* deps: upgrade npm to 7.18.1npm-robot2021-06-18108-690/+3433
| | | | | | | | PR-URL: https://github.com/nodejs/node/pull/39065 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Ruy Adorno <ruyadorno@github.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com>
* deps: upgrade npm to 7.17.0npm-robot2021-06-14352-39392/+476
| | | | | | | PR-URL: https://github.com/nodejs/node/pull/38999 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
* deps: V8: cherry-pick fa4cb172cde2Michaël Zasso2021-06-102-3/+13
| | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/fa4cb172cde256a1e71d675d81fbb4b85d1e5f66 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: cherry-pick 4c074516397bMichaël Zasso2021-06-103-10/+9
| | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/4c074516397b89c5cfe9de9857018484f73445ef PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: cherry-pick 5f4413194480Michaël Zasso2021-06-104-17/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/5f44131944800f16c4dc6768acb67561e3746384 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: cherry-pick 272445f10927Michaël Zasso2021-06-102-6/+19
| | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/272445f109273dcdf81d37b1f91f146cfd78ec41 PR-URL: https://github.com/nodejs/node/pull/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>
* deps: V8: cherry-pick c0fceaa0669bMichaël Zasso2021-06-1031-130/+781
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: https://github.com/v8/v8/commit/c0fceaa0669b39136c9e780f278e2596d71b4e8a PR-URL: https://github.com/nodejs/node/pull/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>