deps: update V8 to 15.2 - #65161
deps: update V8 to 15.2#65161targos wants to merge 33 commits into
Conversation
|
Review requested:
|
|
I guess this is blocked by #64408 (https://github.com/nodejs/node/actions/runs/31307061482/job/93228984418?pr=65161) |
|
Uploaded https://chromium-review.googlesource.com/c/v8/v8/+/8223266 to fix the Linux AArch64 build (haven't tested on real Linux AArch64 yet, but that's what the error message suggests) |
GCC requires SVE enabled for the entire translation unit and does not expose raw __builtin_sve_* builtins on a per-function basis. Fallback to Neon if it's not built by Clang. Refs: nodejs/node#65161 Change-Id: I53a06fcf8f901ae0347044c6999463ce99215c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8223266 Reviewed-by: Igor Sheludko <[email protected]> Commit-Queue: Joyee Cheung <[email protected]> Cr-Commit-Position: refs/heads/main@{#109230}
Original commit message:
[simd] Disable SVE implementation of array search for GCC
GCC requires SVE enabled for the entire translation unit and does
not expose raw __builtin_sve_* builtins on a per-function basis.
Fallback to Neon if it's not built by Clang.
Refs: nodejs#65161
Change-Id: I53a06fcf8f901ae0347044c6999463ce99215c45
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8223266
Reviewed-by: Igor Sheludko <[email protected]>
Commit-Queue: Joyee Cheung <[email protected]>
Cr-Commit-Position: refs/heads/main@{#109230}
Refs: v8/v8@68cf9ec
|
FWIW https://chromium-review.googlesource.com/c/v8/v8/+/8236132 was opened by @sravani1510 to address the AIX build failure that is occurring on our V8 nightly builds. |
|
@nodejs/platform-windows We're hitting a weird error on Windows: https://github.com/nodejs/node/actions/runs/31699320590/job/94444346312?pr=65161 This wrong path doesn't exist in the code. |
|
@legendecas Can you help with the perfetto build? |
|
Fixed the perfetto build. But I think the CI is failing for tests in large pages. Likely not related. |
|
Thanks. Summary of the remaining issues in GitHub CI: I'll start a Jenkins CI for more coverage. |
Been talking to @miladfarca about this: The Linux ppc64le and s390x machines being tested on have 8GB RAM and this test is allocating 16GB. |
|
Patched it here: https://crrev.com/c/8252113 |
|
For the SEA test failures: they should not have run in the first place. #63751 should fix it. |
|
This should fix the alpine failures https://chromium-review.googlesource.com/c/v8/v8/+/8254825 |
For most libcs, pthread_getattr_np() returns the the stack reserved limit on the main thread, but musl only returns the current high-water mark at the time of the call. There's no macro to detect musl, so just fallback to the conservative stack limit in cases where the libc is not one that is known to work. Refs: nodejs/node#65161 Change-Id: Ie2b51269b9e8d2d3451d5d68ad1a233d396af935 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8254825 Reviewed-by: Michael Lippautz <[email protected]> Commit-Queue: Joyee Cheung <[email protected]> Cr-Commit-Position: refs/heads/main@{#109406}
Original commit message:
[simd] Disable SVE implementation of array search for GCC
GCC requires SVE enabled for the entire translation unit and does
not expose raw __builtin_sve_* builtins on a per-function basis.
Fallback to Neon if it's not built by Clang.
Refs: nodejs#65161
Change-Id: I53a06fcf8f901ae0347044c6999463ce99215c45
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8223266
Reviewed-by: Igor Sheludko <[email protected]>
Commit-Queue: Joyee Cheung <[email protected]>
Cr-Commit-Position: refs/heads/main@{#109230}
Refs: v8/v8@68cf9ec
aix: simplify OS::DecommitPages implementation Replace complex mmap/munmap retry logic with mprotect + madvise approach. This fixes a race condition that was causing test failures in Node.js. Node.js stress test was run with this fix and testing shows 0 failures out of 1000 runs of wpt/test-wasm-jsapi with this patch compared to 224 failures without it. Refs: nodejs#62647 Refs: https://chromium-review.googlesource.com/c/v8/v8/+/7780464 PR-URL: nodejs#61898 Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: Filip Skokan <[email protected]> Reviewed-By: Rafael Gonzaga <[email protected]> Reviewed-By: Chengzhong Wu <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Original commit message:
[simd] Disable SVE implementation of array search for GCC
GCC requires SVE enabled for the entire translation unit and does
not expose raw __builtin_sve_* builtins on a per-function basis.
Fallback to Neon if it's not built by Clang.
Refs: nodejs#65161
Change-Id: I53a06fcf8f901ae0347044c6999463ce99215c45
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8223266
Reviewed-by: Igor Sheludko <[email protected]>
Commit-Queue: Joyee Cheung <[email protected]>
Cr-Commit-Position: refs/heads/main@{#109230}
Refs: v8/v8@68cf9ec
Signed-off-by: Joyee Cheung <[email protected]>
Co-Authored-By: Joyee Cheung <[email protected]> Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Post-mortem libraries should use v8's debug_helper library instead. Signed-off-by: Joyee Cheung <[email protected]>
- Set/GetPrototype - Holder Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-off-by: Joyee Cheung <[email protected]>
ICU_UTIL_DATA_SHARED had been removed since https://crrev.com/c/1513615, but Node.js still defined it and relied on the removed path on Windows, so the ICU initialization in mksnapshot had been silently failing since then. https://crrev.com/c/7679153 made the failure visible so the build started breaking on Windows. Fix it by always using ICU_UTIL_DATA_STATIC since we already compile the ICU data statically in. Signed-off-by: Joyee Cheung <[email protected]>
Signed-off-by: Joyee Cheung <[email protected]>
V8 bumped its wire-format version from 0x0f to 0x10. Update the expected hex in test-v8-serdes, and derive the v8 header bytes dynamically in test-runner-v8-deserializer so it tracks future bumps automatically. Signed-off-by: Joyee Cheung <[email protected]>
V8 no longer supports JSON.parse on worker isolates while the shared string table is enabled. Since --harmony-struct enables that table and Node workers parse process.config during bootstrap, use direct MessageChannel instead of a worker. Signed-Off-By: Michaël Zasso <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-off-by: Chengzhong Wu <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Original commit message:
[platform][posix] Fallback to conservative stack limit on musl
For most libcs, pthread_getattr_np() returns the the stack reserved
limit on the main thread, but musl only returns the current high-water
mark at the time of the call. There's no macro to detect musl, so just
fallback to the conservative stack limit in cases where the libc is
not one that is known to work.
Refs: nodejs#65161
Change-Id: Ie2b51269b9e8d2d3451d5d68ad1a233d396af935
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8254825
Reviewed-by: Michael Lippautz <[email protected]>
Commit-Queue: Joyee Cheung <[email protected]>
Cr-Commit-Position: refs/heads/main@{#109406}
Refs: v8/v8@ba4ef8d
Signed-off-by: Joyee Cheung <[email protected]>
Original commit message:
Skip regress-498816446-3 when there is not enough memory
Currently causing a test failure on a machine with 8Gb of memory:
```
regress-498816446-3.js:25: RangeError: Array buffer allocation failed
```
Change-Id: I9e0396445c0b870d0070d666f9d6081b93e80f9c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8252113
Commit-Queue: Milad Farazmand <[email protected]>
Reviewed-by: Darius Mercadier <[email protected]>
Cr-Commit-Position: refs/heads/main@{#109426}
Refs: v8/v8@811fe8b
Signed-off-by: Joyee Cheung <[email protected]>
Signed-off-by: StefanStojanovic <[email protected]> Signed-off-by: Joyee Cheung <[email protected]>
Signed-off-by: Joyee Cheung <[email protected]>
Original commit message:
[cleanup] Remove --js-float16array
Remove the --js-float16array flag and incorporate Float16Array into the
standard typed array macros and baseline snapshot unconditionally.
Float16Array has been shipping by default since M138.
Bug: 548385945
TAG=agy
CONV=052f499d-4ee5-4a10-8afd-900ba4a338db
Change-Id: I2c0012158febf422fdc1b866b9414f3f040e83ad
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8264275
Reviewed-by: Nikolaos Papaspyrou <[email protected]>
Auto-Submit: Olivier Flückiger <[email protected]>
Commit-Queue: Nikolaos Papaspyrou <[email protected]>
Cr-Commit-Position: refs/heads/main@{#109335}
Refs: v8/v8@f3d4d45
Co-authored-by: Antoine du Hamel <[email protected]>
PR-URL: nodejs#65702
Reviewed-By: Marco Ippolito <[email protected]>
Reviewed-By: Filip Skokan <[email protected]>
Reviewed-By: Juan José Arboleda <[email protected]>
r-li.patch
Signed-off-by: Joyee Cheung <[email protected]>
Original commit message:
AIX: implement Stack::ObtainCurrentThreadStackReservedLimit
Port 5a54f45b671bdf47e083ffbad547713d8bacb28f
AIX lacks `pthread_getattr_np()` so we implement the function using
pthread_getthrds_np() with PTHRDSINFO_QUERY_ALL, consistent with
ObtainCurrentThreadStackStart(). The `__pi_stackaddr` field maps to the
lowest stack address, equivalent to the base returned by
pthread_attr_getstack() on other POSIX platforms.
IT: 145
Change-Id: Ia1a34912630e3128f61fa0fca502429b837d611f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8236132
Reviewed-by: Milad Farazmand <[email protected]>
Reviewed-by: Michael Lippautz <[email protected]>
Commit-Queue: Milad Farazmand <[email protected]>
Cr-Commit-Position: refs/heads/main@{#109640}
Refs: v8/v8@f4221e0
Signed-off-by: Joyee Cheung <[email protected]>
|
From the previous Jenkins run, we have this error on Windows: https://ci.nodejs.org/job/node-compile-windows-debug/34698/nodes=win-vs2022_clang/console |
|
Thanks, cherry-picked the AIX fix. I also noticed that several commits are missing signed-off-by field, so I signed them off myself. @nodejs/platform-smartos any news regarding implementing |
|
@nodejs/platform-smartos to be clear, this means porting v8/v8@5a54f45 to |
|
Im not a Solaris expert, but Im trying to help with this. I submitted a fix to V8 here https://chromium-review.googlesource.com/c/v8/v8/+/8413453 I also ran it through the SmartOS Jenkins job. The original There are still some other failures, but they happen later in |
|
Update on the I put together a fix and ran it through a SmartOS job which is now fully green. V8 fix https://chromium-review.googlesource.com/c/v8/v8/+/8409815 |
|
Working out the Windows fix here, the arm64 build is fixed, still checking the debug build because it keeps timing out.. |
Refs: #64784