Commit 9e274db98a4 for nodejs
commit 9e274db98a44dcee6c0be4b6fc08fc981b274838
Author: Antoine du Hamel <duhamelantoine1995@gmail.com>
Date: Fri Sep 4 10:58:26 2026 +0200
deps: V8: backport a0607c5006b8
Original commit message:
Rewrite simdutf include paths to allow getting it from system
Change-Id: I2b7b4cb452c22ed72e0935662c3c7477954bc205
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8319848
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#109702}
Refs: https://github.com/v8/v8/commit/a0607c5006b8b23c5b634e105a52ab5c49514abf
Signed-off-by: Joyee Cheung <joyeec9h3@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/65161
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
diff --git a/common.gypi b/common.gypi
index eb7b70b59d4..e8c4e65b274 100644
--- a/common.gypi
+++ b/common.gypi
@@ -44,7 +44,7 @@
# Reset this number to 0 on major V8 upgrades.
# Increment by one for each non-official patch applied to deps/v8.
- 'v8_embedder_string': '-node.13',
+ 'v8_embedder_string': '-node.14',
##### V8 defaults for Node.js #####
diff --git a/deps/v8/BUILD.bazel b/deps/v8/BUILD.bazel
index 83396f2cb7a..49a7613604d 100644
--- a/deps/v8/BUILD.bazel
+++ b/deps/v8/BUILD.bazel
@@ -4664,6 +4664,7 @@ cc_library(
name = "simdutf",
srcs = ["third_party/simdutf/simdutf.cpp"],
hdrs = ["third_party/simdutf/simdutf.h"],
+ strip_include_prefix = "third_party/simdutf",
copts = select({
"@v8//bazel/config:is_clang": ["-std=c++20"],
"@v8//bazel/config:is_gcc": ["-std=gnu++2a"],
diff --git a/deps/v8/BUILD.gn b/deps/v8/BUILD.gn
index 39f578a9c8e..31aa5aab6fc 100644
--- a/deps/v8/BUILD.gn
+++ b/deps/v8/BUILD.gn
@@ -2597,6 +2597,16 @@ group("v8_abseil") {
visibility = [ "./*" ]
}
+group("v8_simdutf") {
+ public_deps = [ "//third_party/simdutf" ]
+ public_configs = [ ":simdutf_include_config" ]
+
+ visibility = [ "./*" ]
+}
+config("simdutf_include_config") {
+ include_dirs = [ "//third_party/simdutf" ]
+}
+
group("zoslib") {
if (current_os == "zos") {
deps = [ "//third_party/zoslib" ]
@@ -5451,6 +5461,7 @@ v8_header_set("v8_internal_headers") {
":v8_headers",
":v8_maybe_icu",
":v8_shared_internal_headers",
+ ":v8_simdutf",
"//third_party/fp16",
]
@@ -5466,7 +5477,6 @@ v8_header_set("v8_internal_headers") {
":v8_heap_base_headers",
":v8_libbase",
":v8_maybe_temporal",
- "//third_party/simdutf",
]
if (v8_enable_experimental_tq_to_tsa) {
deps += [ ":run_torque_to_tsa" ]
@@ -6931,7 +6941,7 @@ v8_cluster_source_set("v8_base_without_compiler") {
":v8_headers",
":v8_internal_headers",
":v8_maybe_icu",
- "//third_party/simdutf",
+ ":v8_simdutf",
]
if (v8_enable_experimental_tq_to_tsa) {
public_deps += [ ":run_torque_to_tsa" ]
@@ -8554,9 +8564,9 @@ v8_executable("d8") {
":v8",
":v8_libbase",
":v8_libplatform",
+ ":v8_simdutf",
":v8_tracing",
"//build/win:default_exe_manifest",
- "//third_party/simdutf",
]
if (is_posix || is_fuchsia) {
diff --git a/deps/v8/DEPS b/deps/v8/DEPS
index 1498c1c7979..30d59efdb80 100644
--- a/deps/v8/DEPS
+++ b/deps/v8/DEPS
@@ -612,10 +612,10 @@ include_rules = [
'+third_party/fp16/src/include',
'+third_party/fuzztest',
'+third_party/ittapi/include',
- '+third_party/simdutf',
'+third_party/v8/codegen',
'+third_party/vtune',
'+hwy/highway.h',
+ '+simdutf.h',
# Abseil features are allow-listed. Please use your best judgement when adding
# to this set -- if in doubt, email v8-dev@. For general guidance, refer to
# the Chromium guidelines (though note that some requirements in V8 may be
diff --git a/deps/v8/src/builtins/builtins-typed-array.cc b/deps/v8/src/builtins/builtins-typed-array.cc
index bc12cf4401e..8dc3fe9b1bb 100644
--- a/deps/v8/src/builtins/builtins-typed-array.cc
+++ b/deps/v8/src/builtins/builtins-typed-array.cc
@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "simdutf.h"
#include "src/base/logging.h"
#include "src/base/macros.h"
#include "src/builtins/builtins-utils-inl.h"
@@ -15,7 +16,6 @@
#include "src/objects/objects-inl.h"
#include "src/objects/option-utils.h"
#include "src/objects/simd.h"
-#include "third_party/simdutf/simdutf.h"
namespace v8::internal {
diff --git a/deps/v8/src/objects/string-inl.h b/deps/v8/src/objects/string-inl.h
index 63318153d53..7d53c78785d 100644
--- a/deps/v8/src/objects/string-inl.h
+++ b/deps/v8/src/objects/string-inl.h
@@ -14,6 +14,7 @@
#include "absl/functional/overload.h"
#include "include/v8config.h"
#include "src/base/logging.h"
+#include "simdutf.h"
#include "src/common/assert-scope.h"
#include "src/common/globals.h"
#include "src/execution/isolate-utils-inl.h"
@@ -38,7 +39,6 @@
#include "src/strings/string-hasher-inl.h"
#include "src/strings/unicode-inl.h"
#include "src/utils/utils.h"
-#include "third_party/simdutf/simdutf.h"
// Has to be the last include (doesn't have include guards):
#include "src/objects/object-macros.h"
diff --git a/deps/v8/src/objects/string.h b/deps/v8/src/objects/string.h
index 0348debcd0f..1c376b110d4 100644
--- a/deps/v8/src/objects/string.h
+++ b/deps/v8/src/objects/string.h
@@ -9,6 +9,7 @@
#include <optional>
#include "include/v8config.h"
+#include "simdutf.h"
#include "src/base/bits.h"
#include "src/base/export-template.h"
#include "src/base/small-vector.h"
@@ -22,7 +23,6 @@
#include "src/objects/tagged.h"
#include "src/sandbox/external-pointer.h"
#include "src/strings/unicode-decoder.h"
-#include "third_party/simdutf/simdutf.h"
// Has to be the last include (doesn't have include guards):
#include "src/objects/object-macros.h"
diff --git a/deps/v8/src/strings/unicode-inl.h b/deps/v8/src/strings/unicode-inl.h
index 25f3d0375e7..3f1b5b33f34 100644
--- a/deps/v8/src/strings/unicode-inl.h
+++ b/deps/v8/src/strings/unicode-inl.h
@@ -8,9 +8,9 @@
#include "src/strings/unicode.h"
// Include the non-inl header before the rest of the headers.
+#include "simdutf.h"
#include "src/base/logging.h"
#include "src/utils/utils.h"
-#include "third_party/simdutf/simdutf.h"
namespace unibrow {
diff --git a/deps/v8/src/strings/unicode.cc b/deps/v8/src/strings/unicode.cc
index d213ea68e8a..74687f7463e 100644
--- a/deps/v8/src/strings/unicode.cc
+++ b/deps/v8/src/strings/unicode.cc
@@ -22,7 +22,7 @@
#endif
#include "hwy/highway.h"
-#include "third_party/simdutf/simdutf.h"
+#include "simdutf.h"
namespace unibrow {
diff --git a/deps/v8/test/cctest/BUILD.gn b/deps/v8/test/cctest/BUILD.gn
index 856a6b7ceac..5c91009bb9a 100644
--- a/deps/v8/test/cctest/BUILD.gn
+++ b/deps/v8/test/cctest/BUILD.gn
@@ -15,8 +15,8 @@ v8_executable("cctest") {
"../..:v8_for_testing",
"../..:v8_libbase",
"../..:v8_libplatform",
+ "../..:v8_simdutf",
"../../tools/debug_helper:v8_debug_helper",
- "//third_party/simdutf",
]
data_deps = [ "../../tools:v8_testrunner" ]