Skip to content

Commit b3c8e60

Browse files
committed
deps: update V8 to 10.2.154.2
PR-URL: #42740 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
1 parent 7596fbf commit b3c8e60

File tree

882 files changed

+29302
-15793
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

882 files changed

+29302
-15793
lines changed

deps/v8/AUTHORS

+5-3
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ Meteor Development Group <*@meteor.com>
4141
Cloudflare, Inc. <*@cloudflare.com>
4242
Julia Computing, Inc. <*@juliacomputing.com>
4343
CodeWeavers, Inc. <*@codeweavers.com>
44+
Alibaba, Inc. <*@alibaba-inc.com>
4445

4546
Aaron Bieber <deftly@gmail.com>
4647
Aaron O'Mullan <aaron.omullan@gmail.com>
@@ -90,9 +91,11 @@ Daniel Bevenius <daniel.bevenius@gmail.com>
9091
Daniel Dromboski <dandromb@gmail.com>
9192
Daniel James <dnljms@gmail.com>
9293
Daniel Shelton <d1.shelton@samsung.com>
94+
Danylo Boiko <danielboyko02@gmail.com>
9395
Darshan Sen <raisinten@gmail.com>
9496
David Carlier <devnexen@gmail.com>
9597
David Manouchehri <david@davidmanouchehri.com>
98+
David Sanders <dsanders11@ucsbalum.com>
9699
Deepak Mohan <hop2deep@gmail.com>
97100
Deon Dior <diaoyuanjie@gmail.com>
98101
Derek Tu <derek.t@rioslab.org>
@@ -115,6 +118,7 @@ Gus Caplan <me@gus.host>
115118
Gwang Yoon Hwang <ryumiel@company100.net>
116119
Haichuan Wang <hc.opensource@gmail.com>
117120
Hannu Trey <hannu.trey@gmail.com>
121+
Harshal Nandigramwar <pro.bbcom18@gmail.com>
118122
Harshil Jain <twitharshil@gmail.com>
119123
Henrique Ferreiro <henrique.ferreiro@gmail.com>
120124
Hirofumi Mako <mkhrfm@gmail.com>
@@ -135,7 +139,6 @@ Javad Amiri <javad.amiri@anu.edu.au>
135139
Jay Freeman <saurik@saurik.com>
136140
Jesper van den Ende <jespertheend@gmail.com>
137141
Ji Qiu <qiuji@iscas.ac.cn>
138-
Jianghua Yang <jianghua.yjh@alibaba-inc.com>
139142
Jiawen Geng <technicalcute@gmail.com>
140143
Jiaxun Yang <jiaxun.yang@flygoat.com>
141144
Joel Stanley <joel@jms.id.au>
@@ -198,8 +201,6 @@ Peter Rybin <peter.rybin@gmail.com>
198201
Peter Varga <pvarga@inf.u-szeged.hu>
199202
Peter Wong <peter.wm.wong@gmail.com>
200203
PhistucK <phistuck@gmail.com>
201-
Qingyan Li <qingyan.liqy@alibaba-inc.com>
202-
Qiuyi Zhang <qiuyi.zqy@alibaba-inc.com>
203204
Rafal Krypa <rafal@krypa.net>
204205
Raul Tambre <raul@tambre.ee>
205206
Ray Glover <ray@rayglover.net>
@@ -248,6 +249,7 @@ Vladimir Shutoff <vovan@shutoff.ru>
248249
Wael Almattar <waelsy123@gmail.com>
249250
Wei Wu <lazyparser@gmail.com>
250251
Wenlu Wang <kingwenlu@gmail.com>
252+
Wenming Yang <yangwenming@bytedance.com>
251253
Wenyu Zhao <wenyu.zhao@anu.edu.au>
252254
Wiktor Garbacz <wiktor.garbacz@gmail.com>
253255
Wouter Vermeiren <wouter.vermeiren@essensium.com>

deps/v8/BUILD.bazel

+70-4
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ load(":bazel/v8-non-pointer-compression.bzl", "v8_binary_non_pointer_compression
4444
# v8_enable_builtins_profiling
4545
# v8_enable_builtins_profiling_verbose
4646
# v8_builtins_profiling_log_file
47-
# v8_enable_short_builtin_calls
4847
# v8_enable_external_code_space
4948
# v8_postmortem_support
5049
# v8_use_siphash
@@ -231,6 +230,62 @@ selects.config_setting_group(
231230
],
232231
)
233232

233+
# We use a string flag to create a 3 value-logic.
234+
# If no explicit value for v8_enable_short_builtin_calls, we set it to 'none'.
235+
v8_string(
236+
name = "v8_enable_short_builtin_calls",
237+
default = "none",
238+
)
239+
240+
# Default setting for v8_enable_pointer_compression.
241+
config_setting(
242+
name = "v8_enable_short_builtin_calls_is_none",
243+
flag_values = {
244+
":v8_enable_short_builtin_calls": "none",
245+
},
246+
)
247+
248+
# Explicity defined v8_enable_pointer_compression.
249+
config_setting(
250+
name = "v8_enable_short_builtin_calls_is_true",
251+
flag_values = {
252+
":v8_enable_short_builtin_calls": "True",
253+
},
254+
)
255+
256+
# Default setting for v8_enable_short_builtin_calls when target is x64.
257+
# Disable short calls when pointer compression is not enabled.
258+
selects.config_setting_group(
259+
name = "v8_target_x64_default_short_builtin_calls",
260+
match_all = [
261+
":v8_enable_short_builtin_calls_is_none",
262+
"@v8//bazel/config:v8_target_x64",
263+
":is_v8_enable_pointer_compression",
264+
],
265+
)
266+
267+
# Default setting for v8_enable_short_builtin_calls when target is arm64, but not Android.
268+
selects.config_setting_group(
269+
name = "v8_target_arm64_default_short_builtin_calls",
270+
match_all = [
271+
":v8_enable_short_builtin_calls_is_none",
272+
"@v8//bazel/config:v8_target_arm64",
273+
"@v8//bazel/config:is_not_android",
274+
],
275+
)
276+
277+
# v8_enable_short_builtin_calls is valid whenever it is explicitly defined
278+
# or we have the default settings for targets x64 and arm64.
279+
# TODO(victorgomes): v8_enable_short_builtin_calls should not be enabled when CFI is enabled.
280+
selects.config_setting_group(
281+
name = "is_v8_enable_short_builtin_calls",
282+
match_any = [
283+
":v8_enable_short_builtin_calls_is_true",
284+
":v8_target_x64_default_short_builtin_calls",
285+
":v8_target_arm64_default_short_builtin_calls",
286+
],
287+
)
288+
234289
# Enable -rdynamic.
235290
selects.config_setting_group(
236291
name = "should_add_rdynamic",
@@ -339,6 +394,11 @@ v8_config(
339394
"V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE",
340395
],
341396
"//conditions:default": [],
397+
}) + select({
398+
":is_v8_enable_short_builtin_calls": [
399+
"V8_SHORT_BUILTIN_CALLS",
400+
],
401+
"//conditions:default": [],
342402
}) + select({
343403
":is_v8_enable_test_features": [
344404
"V8_ENABLE_ALLOCATION_TIMEOUT",
@@ -606,7 +666,6 @@ filegroup(
606666
"src/base/template-utils.h",
607667
"src/base/timezone-cache.h",
608668
"src/base/threaded-list.h",
609-
"src/base/type-traits.h",
610669
"src/base/utils/random-number-generator.cc",
611670
"src/base/utils/random-number-generator.h",
612671
"src/base/vector.h",
@@ -1305,7 +1364,6 @@ filegroup(
13051364
"src/heap/allocation-stats.h",
13061365
"src/heap/array-buffer-sweeper.cc",
13071366
"src/heap/array-buffer-sweeper.h",
1308-
"src/heap/barrier.h",
13091367
"src/heap/base-space.cc",
13101368
"src/heap/base-space.h",
13111369
"src/heap/basic-memory-chunk.cc",
@@ -1331,7 +1389,9 @@ filegroup(
13311389
"src/heap/cppgc-js/cpp-marking-state-inl.h",
13321390
"src/heap/cppgc-js/cpp-snapshot.cc",
13331391
"src/heap/cppgc-js/cpp-snapshot.h",
1392+
"src/heap/cppgc-js/unified-heap-marking-state.cc",
13341393
"src/heap/cppgc-js/unified-heap-marking-state.h",
1394+
"src/heap/cppgc-js/unified-heap-marking-state-inl.h",
13351395
"src/heap/cppgc-js/unified-heap-marking-verifier.cc",
13361396
"src/heap/cppgc-js/unified-heap-marking-verifier.h",
13371397
"src/heap/cppgc-js/unified-heap-marking-visitor.cc",
@@ -1353,6 +1413,7 @@ filegroup(
13531413
"src/heap/gc-idle-time-handler.cc",
13541414
"src/heap/gc-idle-time-handler.h",
13551415
"src/heap/gc-tracer.cc",
1416+
"src/heap/gc-tracer-inl.h",
13561417
"src/heap/gc-tracer.h",
13571418
"src/heap/heap-allocator-inl.h",
13581419
"src/heap/heap-allocator.cc",
@@ -1930,6 +1991,7 @@ filegroup(
19301991
"src/runtime/runtime-proxy.cc",
19311992
"src/runtime/runtime-regexp.cc",
19321993
"src/runtime/runtime-scopes.cc",
1994+
"src/runtime/runtime-shadow-realm.cc",
19331995
"src/runtime/runtime-strings.cc",
19341996
"src/runtime/runtime-symbol.cc",
19351997
"src/runtime/runtime-test.cc",
@@ -1964,6 +2026,7 @@ filegroup(
19642026
"src/snapshot/deserializer.cc",
19652027
"src/snapshot/deserializer.h",
19662028
"src/snapshot/embedded/embedded-data.cc",
2029+
"src/snapshot/embedded/embedded-data-inl.h",
19672030
"src/snapshot/embedded/embedded-data.h",
19682031
"src/snapshot/embedded/embedded-file-writer-interface.h",
19692032
"src/snapshot/object-deserializer.cc",
@@ -2374,6 +2437,8 @@ filegroup(
23742437
"src/wasm/baseline/liftoff-compiler.h",
23752438
"src/wasm/baseline/liftoff-register.h",
23762439
"src/wasm/branch-hint-map.h",
2440+
"src/wasm/canonical-types.cc",
2441+
"src/wasm/canonical-types.h",
23772442
"src/wasm/code-space-access.cc",
23782443
"src/wasm/code-space-access.h",
23792444
"src/wasm/compilation-environment.h",
@@ -2550,6 +2615,8 @@ filegroup(
25502615
"src/compiler/backend/unwinding-info-writer.h",
25512616
"src/compiler/basic-block-instrumentor.cc",
25522617
"src/compiler/basic-block-instrumentor.h",
2618+
"src/compiler/branch-condition-duplicator.cc",
2619+
"src/compiler/branch-condition-duplicator.h",
25532620
"src/compiler/branch-elimination.cc",
25542621
"src/compiler/branch-elimination.h",
25552622
"src/compiler/bytecode-analysis.cc",
@@ -2857,7 +2924,6 @@ filegroup(
28572924
"src/heap/cppgc/compactor.h",
28582925
"src/heap/cppgc/concurrent-marker.cc",
28592926
"src/heap/cppgc/concurrent-marker.h",
2860-
"src/heap/cppgc/default-platform.cc",
28612927
"src/heap/cppgc/explicit-management.cc",
28622928
"src/heap/cppgc/free-list.cc",
28632929
"src/heap/cppgc/free-list.h",

deps/v8/BUILD.gn

+25-15
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ declare_args() {
299299

300300
# Enable the experimental V8 sandbox.
301301
# Sets -DV8_SANDBOX.
302-
v8_enable_sandbox = false
302+
v8_enable_sandbox = ""
303303

304304
# Enable external pointer sandboxing. Requires v8_enable_sandbox.
305305
# Sets -DV8_SANDBOXED_EXTERNAL_POINRTERS.
@@ -421,13 +421,10 @@ if (v8_enable_short_builtin_calls == "") {
421421
v8_current_cpu == "x64" || (!is_android && v8_current_cpu == "arm64")
422422
}
423423
if (v8_enable_external_code_space == "") {
424-
# Can't use !is_android here, because Torque toolchain is affected by
425-
# the value of this flag but actually runs on the host side.
426424
v8_enable_external_code_space =
427425
v8_enable_pointer_compression &&
428426
(v8_current_cpu == "x64" ||
429-
(target_os != "android" && target_os != "fuchsia" &&
430-
v8_current_cpu == "arm64"))
427+
(target_os != "fuchsia" && v8_current_cpu == "arm64"))
431428
}
432429
if (v8_enable_maglev == "") {
433430
v8_enable_maglev = v8_current_cpu == "x64" && v8_enable_pointer_compression
@@ -474,7 +471,8 @@ if (v8_multi_arch_build &&
474471
# Check if it is a Chromium build and activate PAC/BTI if needed.
475472
# TODO(cavalcantii): have a single point of integration with PAC/BTI flags.
476473
if (build_with_chromium && v8_current_cpu == "arm64" &&
477-
arm_control_flow_integrity == "standard") {
474+
(arm_control_flow_integrity == "standard" ||
475+
arm_control_flow_integrity == "pac")) {
478476
v8_control_flow_integrity = true
479477
}
480478

@@ -492,10 +490,12 @@ if (v8_enable_shared_ro_heap == "") {
492490
v8_enable_pointer_compression_shared_cage
493491
}
494492

495-
# Enable the v8 sandbox on 64-bit Chromium builds.
496-
if (build_with_chromium && v8_enable_pointer_compression_shared_cage &&
497-
v8_enable_external_code_space) {
498-
v8_enable_sandbox = true
493+
if (v8_enable_sandbox == "") {
494+
# TODO(saelo, v8:11880) remove dependency on v8_enable_external_code_space
495+
# once that is enabled everywhere by default.
496+
v8_enable_sandbox =
497+
build_with_chromium && v8_enable_pointer_compression_shared_cage &&
498+
v8_enable_external_code_space
499499
}
500500

501501
# Enable all available sandbox features if sandbox future is enabled.
@@ -1044,8 +1044,8 @@ config("toolchain") {
10441044
defines += [ "V8_TARGET_ARCH_ARM64" ]
10451045
if (current_cpu == "arm64") {
10461046
# This will enable PAC+BTI in code generation and static code.
1047-
if (v8_control_flow_integrity) {
1048-
# TODO(v8:10026): Enable this in src/build.
1047+
if (v8_control_flow_integrity &&
1048+
(!build_with_chromium || arm_control_flow_integrity == "standard")) {
10491049
cflags += [ "-mbranch-protection=standard" ]
10501050
asmflags = [ "-mmark-bti-property" ]
10511051
} else if (build_with_chromium && arm_control_flow_integrity == "pac") {
@@ -1179,6 +1179,9 @@ config("toolchain") {
11791179

11801180
#FIXME: Temporarily use MIPS macro for the building.
11811181
defines += [ "CAN_USE_FPU_INSTRUCTIONS" ]
1182+
if (target_is_simulator) {
1183+
defines += [ "CAN_USE_RVV_INSTRUCTIONS" ]
1184+
}
11821185
}
11831186

11841187
if (v8_current_cpu == "x86") {
@@ -2778,6 +2781,7 @@ v8_header_set("v8_internal_headers") {
27782781
"src/compiler/backend/spill-placer.h",
27792782
"src/compiler/backend/unwinding-info-writer.h",
27802783
"src/compiler/basic-block-instrumentor.h",
2784+
"src/compiler/branch-condition-duplicator.h",
27812785
"src/compiler/branch-elimination.h",
27822786
"src/compiler/bytecode-analysis.h",
27832787
"src/compiler/bytecode-graph-builder.h",
@@ -2963,7 +2967,6 @@ v8_header_set("v8_internal_headers") {
29632967
"src/heap/allocation-result.h",
29642968
"src/heap/allocation-stats.h",
29652969
"src/heap/array-buffer-sweeper.h",
2966-
"src/heap/barrier.h",
29672970
"src/heap/base-space.h",
29682971
"src/heap/basic-memory-chunk.h",
29692972
"src/heap/code-object-registry.h",
@@ -2978,6 +2981,7 @@ v8_header_set("v8_internal_headers") {
29782981
"src/heap/cppgc-js/cpp-marking-state-inl.h",
29792982
"src/heap/cppgc-js/cpp-marking-state.h",
29802983
"src/heap/cppgc-js/cpp-snapshot.h",
2984+
"src/heap/cppgc-js/unified-heap-marking-state-inl.h",
29812985
"src/heap/cppgc-js/unified-heap-marking-state.h",
29822986
"src/heap/cppgc-js/unified-heap-marking-verifier.h",
29832987
"src/heap/cppgc-js/unified-heap-marking-visitor.h",
@@ -2993,6 +2997,7 @@ v8_header_set("v8_internal_headers") {
29932997
"src/heap/free-list-inl.h",
29942998
"src/heap/free-list.h",
29952999
"src/heap/gc-idle-time-handler.h",
3000+
"src/heap/gc-tracer-inl.h",
29963001
"src/heap/gc-tracer.h",
29973002
"src/heap/heap-allocator-inl.h",
29983003
"src/heap/heap-allocator.h",
@@ -3390,6 +3395,7 @@ v8_header_set("v8_internal_headers") {
33903395
"src/snapshot/context-deserializer.h",
33913396
"src/snapshot/context-serializer.h",
33923397
"src/snapshot/deserializer.h",
3398+
"src/snapshot/embedded/embedded-data-inl.h",
33933399
"src/snapshot/embedded/embedded-data.h",
33943400
"src/snapshot/embedded/embedded-file-writer-interface.h",
33953401
"src/snapshot/object-deserializer.h",
@@ -3479,6 +3485,7 @@ v8_header_set("v8_internal_headers") {
34793485
"src/maglev/maglev-graph-labeller.h",
34803486
"src/maglev/maglev-graph-printer.h",
34813487
"src/maglev/maglev-graph-processor.h",
3488+
"src/maglev/maglev-graph-verifier.h",
34823489
"src/maglev/maglev-graph.h",
34833490
"src/maglev/maglev-interpreter-frame-state.h",
34843491
"src/maglev/maglev-ir.h",
@@ -3510,6 +3517,7 @@ v8_header_set("v8_internal_headers") {
35103517
"src/wasm/baseline/liftoff-assembler.h",
35113518
"src/wasm/baseline/liftoff-compiler.h",
35123519
"src/wasm/baseline/liftoff-register.h",
3520+
"src/wasm/canonical-types.h",
35133521
"src/wasm/code-space-access.h",
35143522
"src/wasm/compilation-environment.h",
35153523
"src/wasm/decoder.h",
@@ -3890,6 +3898,7 @@ v8_compiler_sources = [
38903898
"src/compiler/backend/register-allocator.cc",
38913899
"src/compiler/backend/spill-placer.cc",
38923900
"src/compiler/basic-block-instrumentor.cc",
3901+
"src/compiler/branch-condition-duplicator.cc",
38933902
"src/compiler/branch-elimination.cc",
38943903
"src/compiler/bytecode-analysis.cc",
38953904
"src/compiler/bytecode-graph-builder.cc",
@@ -4227,6 +4236,7 @@ v8_source_set("v8_base_without_compiler") {
42274236
"src/heap/concurrent-marking.cc",
42284237
"src/heap/cppgc-js/cpp-heap.cc",
42294238
"src/heap/cppgc-js/cpp-snapshot.cc",
4239+
"src/heap/cppgc-js/unified-heap-marking-state.cc",
42304240
"src/heap/cppgc-js/unified-heap-marking-verifier.cc",
42314241
"src/heap/cppgc-js/unified-heap-marking-visitor.cc",
42324242
"src/heap/embedder-tracing.cc",
@@ -4445,6 +4455,7 @@ v8_source_set("v8_base_without_compiler") {
44454455
"src/runtime/runtime-proxy.cc",
44464456
"src/runtime/runtime-regexp.cc",
44474457
"src/runtime/runtime-scopes.cc",
4458+
"src/runtime/runtime-shadow-realm.cc",
44484459
"src/runtime/runtime-strings.cc",
44494460
"src/runtime/runtime-symbol.cc",
44504461
"src/runtime/runtime-test.cc",
@@ -4535,6 +4546,7 @@ v8_source_set("v8_base_without_compiler") {
45354546
"src/trap-handler/handler-shared.cc",
45364547
"src/wasm/baseline/liftoff-assembler.cc",
45374548
"src/wasm/baseline/liftoff-compiler.cc",
4549+
"src/wasm/canonical-types.cc",
45384550
"src/wasm/code-space-access.cc",
45394551
"src/wasm/function-body-decoder.cc",
45404552
"src/wasm/function-compiler.cc",
@@ -5185,7 +5197,6 @@ v8_component("v8_libbase") {
51855197
"src/base/template-utils.h",
51865198
"src/base/threaded-list.h",
51875199
"src/base/timezone-cache.h",
5188-
"src/base/type-traits.h",
51895200
"src/base/utils/random-number-generator.cc",
51905201
"src/base/utils/random-number-generator.h",
51915202
"src/base/v8-fallthrough.h",
@@ -5603,7 +5614,6 @@ v8_source_set("cppgc_base") {
56035614
"src/heap/cppgc/compactor.h",
56045615
"src/heap/cppgc/concurrent-marker.cc",
56055616
"src/heap/cppgc/concurrent-marker.h",
5606-
"src/heap/cppgc/default-platform.cc",
56075617
"src/heap/cppgc/explicit-management.cc",
56085618
"src/heap/cppgc/free-list.cc",
56095619
"src/heap/cppgc/free-list.h",

0 commit comments

Comments
 (0)