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" ]