Commit 7c2eaad2967 for nodejs
commit 7c2eaad2967a90fb6886ecfe19c0315eb7408e8d
Author: Antoine du Hamel <duhamelantoine1995@gmail.com>
Date: Fri Oct 16 11:05:43 2026 +0200
deps: V8: cherry-pick 785a2ea88a90
Original commit message:
[tracing] do not define legacy tracing classes when using Perfetto
Otherwise the Windows build of Node.js fails with `undefined symbol`
errors due to the missing destructor.
Change-Id: Id0841aed2f0a8f0cfe8889c39150552e31ee5f96
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8580049
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Chengzhong Wu <cwu631@bloomberg.net>
Commit-Queue: Chengzhong Wu <cwu631@bloomberg.net>
Cr-Commit-Position: refs/heads/main@{#110947}
Refs: https://github.com/v8/v8/commit/785a2ea88a903317d72fe40e3fff660267865a69
PR-URL: https://github.com/nodejs/node/pull/66876
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Gürgün Dayıoğlu <hey@gurgun.day>
diff --git a/common.gypi b/common.gypi
index e6a81c49d92..a8dbd9ba13e 100644
--- a/common.gypi
+++ b/common.gypi
@@ -50,7 +50,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.9',
+ 'v8_embedder_string': '-node.10',
##### V8 defaults for Node.js #####
diff --git a/deps/v8/include/libplatform/v8-tracing.h b/deps/v8/include/libplatform/v8-tracing.h
index 9d05949c38e..ea405b7870f 100644
--- a/deps/v8/include/libplatform/v8-tracing.h
+++ b/deps/v8/include/libplatform/v8-tracing.h
@@ -35,6 +35,7 @@ class TraceEventListener;
const int kTraceMaxNumArgs = 2;
+#if !defined(V8_USE_PERFETTO)
class V8_PLATFORM_EXPORT TraceObject {
public:
union ArgValue {
@@ -176,6 +177,7 @@ class V8_PLATFORM_EXPORT TraceBuffer {
TraceBuffer(const TraceBuffer&) = delete;
void operator=(const TraceBuffer&) = delete;
};
+#endif // !defined(V8_USE_PERFETTO)
// Options determines how the trace buffer stores data.
enum TraceRecordMode {
diff --git a/deps/v8/test/benchmarks/cpp/BUILD.gn b/deps/v8/test/benchmarks/cpp/BUILD.gn
index 4f870a8772b..0cba56ee1ab 100644
--- a/deps/v8/test/benchmarks/cpp/BUILD.gn
+++ b/deps/v8/test/benchmarks/cpp/BUILD.gn
@@ -65,6 +65,7 @@ if (v8_enable_google_benchmark) {
"//:v8",
"//:v8_internal_headers",
"//:v8_libbase",
+ "//:v8_tracing",
"//third_party/google_benchmark_chrome:google_benchmark",
]
}
diff --git a/deps/v8/test/cctest/test-cpu-profiler.cc b/deps/v8/test/cctest/test-cpu-profiler.cc
index 42067b6076b..1600323a222 100644
--- a/deps/v8/test/cctest/test-cpu-profiler.cc
+++ b/deps/v8/test/cctest/test-cpu-profiler.cc
@@ -2955,9 +2955,11 @@ TEST(DeoptUntrackedFunction) {
iprofiler->DeleteProfile(iprofile);
}
-using v8::platform::tracing::TraceBuffer;
using v8::platform::tracing::TraceConfig;
+#if !defined(V8_USE_PERFETTO)
+using v8::platform::tracing::TraceBuffer;
using v8::platform::tracing::TraceObject;
+#endif // !defined(V8_USE_PERFETTO)
namespace {