Skip to content

Commit 8fe776f

Browse files
deps: update V8 to 14.4.206
1 parent 45eeb6f commit 8fe776f

File tree

1,007 files changed

+29507
-25187
lines changed

Some content is hidden

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

1,007 files changed

+29507
-25187
lines changed

deps/v8/.clang-format

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ Macros:
1414
- CASE_=case
1515
- FOR_WITH_HANDLE_SCOPE(isolate, init, loop_var, limit_check, increment)=for(init; loop_var; increment)
1616
- WHILE_WITH_HANDLE_SCOPE(isolate, limit_check)=while(limit_check)
17+
# Make clang-format parse conditions in flag implications as expressions, not type definitions.
18+
- DEFINE_IMPLICATION(cond,flag,value)=if(cond) { flag; };
19+
- DEFINE_WEAK_IMPLICATION(cond,flag,value)=if(cond) { flag; };
20+
- DEFINE_VALUE_IMPLICATION(cond,flag,value)=if(cond) { flag = value; };
21+
- DEFINE_WEAK_VALUE_IMPLICATION(cond,flag,value)=if(cond) { flag = value; };
1722
StatementMacros:
1823
- DECL_CAST
1924
- DECL_VERIFIER

deps/v8/AUTHORS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -339,6 +339,7 @@ Zhao Jiazhong <[email protected]>
339339
340340
Zhaojun Meng <[email protected]>
341341
Zheng Liu <[email protected]>
342+
Zhongqi Wang <[email protected]>
342343
Zhongping Wang <[email protected]>
343344
柳荣一 <[email protected]>
344345
Yang Xiang <[email protected]>

deps/v8/BUILD.bazel

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -512,7 +512,6 @@ v8_config(
512512
"GOOGLE3",
513513
"V8_ADVANCED_BIGINT_ALGORITHMS",
514514
"V8_CONCURRENT_MARKING",
515-
"V8_ENABLE_LEAPTIERING",
516515
"V8_ENABLE_SPARKPLUG",
517516
"V8_ENABLE_EXTENSIBLE_RO_SNAPSHOT",
518517
"V8_ENABLE_CONTINUATION_PRESERVED_EMBEDDER_DATA",
@@ -523,6 +522,18 @@ v8_config(
523522
"V8_ENABLE_CHECKS",
524523
],
525524
"//conditions:default": [],
525+
}) + select({
526+
"@v8//bazel/config:asan_enabled" : [ "V8_USE_ADDRESS_SANITIZER" ],
527+
"//conditions:default": [],
528+
}) + select({
529+
"@v8//bazel/config:hwasan_enabled" : [ "V8_USE_HWADDRESS_SANITIZER" ],
530+
"//conditions:default": [],
531+
}) + select({
532+
"@v8//bazel/config:msan_enabled" : [ "V8_USE_MEMORY_SANITIZER" ],
533+
"//conditions:default": [],
534+
}) + select({
535+
"@v8//bazel/config:ubsan_enabled" : [ "V8_USE_UNDEFINED_BEHAVIOR_SANITIZER" ],
536+
"//conditions:default": [],
526537
}) + select(
527538
{
528539
"@v8//bazel/config:v8_target_ia32": ["V8_TARGET_ARCH_IA32"],
@@ -2583,6 +2594,7 @@ filegroup(
25832594
"src/tasks/task-utils.cc",
25842595
"src/tasks/task-utils.h",
25852596
"src/torque/runtime-macro-shims.h",
2597+
"src/tracing/perfetto-sdk.h",
25862598
"src/tracing/trace-event.cc",
25872599
"src/tracing/trace-event.h",
25882600
"src/tracing/trace-event-no-perfetto.h",
@@ -2923,7 +2935,9 @@ filegroup(
29232935
"src/maglev/maglev-pipeline-statistics.h",
29242936
"src/maglev/maglev-post-hoc-optimizations-processors.h",
29252937
"src/maglev/maglev-pre-regalloc-codegen-processors.h",
2938+
"src/maglev/maglev-range.h",
29262939
"src/maglev/maglev-range-analysis.h",
2940+
"src/maglev/maglev-range-verification.h",
29272941
"src/maglev/maglev-reducer-inl.h",
29282942
"src/maglev/maglev-reducer.h",
29292943
"src/maglev/maglev-regalloc-data.h",
@@ -2950,6 +2964,7 @@ filegroup(
29502964
"src/maglev/maglev-phi-representation-selector.cc",
29512965
"src/maglev/maglev-truncation.cc",
29522966
"src/maglev/maglev-pipeline-statistics.cc",
2967+
"src/maglev/maglev-range-verification.cc",
29532968
"src/maglev/maglev-regalloc.cc",
29542969
"src/maglev/maglev.cc",
29552970
],
@@ -3247,8 +3262,8 @@ filegroup(
32473262
"src/compiler/backend/spill-placer.cc",
32483263
"src/compiler/backend/spill-placer.h",
32493264
"src/compiler/backend/unwinding-info-writer.h",
3250-
"src/compiler/basic-block-instrumentor.cc",
3251-
"src/compiler/basic-block-instrumentor.h",
3265+
"src/compiler/basic-block-call-graph-profiler.cc",
3266+
"src/compiler/basic-block-call-graph-profiler.h",
32523267
"src/compiler/branch-elimination.cc",
32533268
"src/compiler/branch-elimination.h",
32543269
"src/compiler/bytecode-analysis.cc",
@@ -3502,6 +3517,7 @@ filegroup(
35023517
"src/compiler/turboshaft/late-load-elimination-reducer.h",
35033518
"src/compiler/turboshaft/layered-hash-map.h",
35043519
"src/compiler/turboshaft/load-store-simplification-reducer.h",
3520+
"src/compiler/turboshaft/load-store-verification-reducer.h",
35053521
"src/compiler/turboshaft/loop-finder.cc",
35063522
"src/compiler/turboshaft/loop-finder.h",
35073523
"src/compiler/turboshaft/loop-peeling-phase.cc",
@@ -3737,7 +3753,10 @@ filegroup(
37373753
"src/maglev/maglev-ir.h",
37383754
"src/maglev/maglev-ir-inl.h",
37393755
"src/maglev/maglev-kna-processor.h",
3756+
"src/maglev/maglev-range.h",
37403757
"src/maglev/maglev-range-analysis.h",
3758+
"src/maglev/maglev-range-verification.cc",
3759+
"src/maglev/maglev-range-verification.h",
37413760
"src/maglev/maglev-reducer-inl.h",
37423761
"src/maglev/maglev-reducer.h",
37433762
"src/maglev/maglev-register-frame-array.h",

deps/v8/BUILD.gn

Lines changed: 54 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -457,7 +457,8 @@ declare_args() {
457457
v8_enable_experimental_tsa_builtins = false
458458

459459
# Use the encoding of undefined in double values.
460-
v8_enable_undefined_double = false
460+
# Only enabled for fuzzing in V8 Fuzzilli builds
461+
v8_enable_undefined_double = v8_fuzzilli
461462

462463
v8_dcheck_always_on = dcheck_always_on
463464

@@ -489,6 +490,9 @@ declare_args() {
489490

490491
# Use a hard-coded secret value when hashing.
491492
v8_use_default_hasher_secret = true
493+
494+
# add instrumentation for Dumpling differential fuzzing
495+
v8_dumpling = false
492496
}
493497

494498
# Derived defaults.
@@ -598,7 +602,7 @@ if (v8_enable_external_code_space == "") {
598602
v8_enable_pointer_compression &&
599603
v8_enable_pointer_compression_shared_cage &&
600604
(v8_current_cpu == "x64" || v8_current_cpu == "arm64" ||
601-
v8_current_cpu == "loong64")
605+
v8_current_cpu == "loong64" || v8_current_cpu == "riscv64")
602606
}
603607
if (v8_enable_sparkplug == "") {
604608
v8_enable_sparkplug = !v8_jitless
@@ -978,6 +982,8 @@ external_v8_defines = [
978982
"V8_DEPRECATION_WARNINGS",
979983
"V8_IMMINENT_DEPRECATION_WARNINGS",
980984
"V8_USE_PERFETTO",
985+
"V8_USE_PERFETTO_JSON_EXPORT",
986+
"V8_USE_PERFETTO_SDK",
981987
"V8_MAP_PACKING",
982988
"V8_IS_TSAN",
983989
"V8_ENABLE_DIRECT_HANDLE",
@@ -1026,6 +1032,12 @@ if (v8_imminent_deprecation_warnings) {
10261032
if (v8_use_perfetto) {
10271033
enabled_external_v8_defines += [ "V8_USE_PERFETTO" ]
10281034
}
1035+
if (v8_use_perfetto_json_export) {
1036+
enabled_external_v8_defines += [ "V8_USE_PERFETTO_JSON_EXPORT" ]
1037+
}
1038+
if (v8_use_perfetto_sdk) {
1039+
enabled_external_v8_defines += [ "V8_USE_PERFETTO_SDK" ]
1040+
}
10291041
if (v8_enable_map_packing) {
10301042
enabled_external_v8_defines += [ "V8_MAP_PACKING" ]
10311043
}
@@ -1176,8 +1188,7 @@ config("features") {
11761188
if (v8_enable_pointer_compression) {
11771189
if (v8_enable_pointer_compression_shared_cage) {
11781190
defines += [
1179-
# TODO(442942399): Re-enable after bug has been addressed.
1180-
# "V8_CONTIGUOUS_COMPRESSED_RO_SPACE",
1191+
"V8_CONTIGUOUS_COMPRESSED_RO_SPACE",
11811192
"V8_CONTIGUOUS_COMPRESSED_RO_SPACE_SIZE_MB=${v8_contiguous_compressed_ro_space_size_mb}",
11821193
]
11831194
} else {
@@ -1326,6 +1337,9 @@ config("features") {
13261337
if (v8_fuzzilli) {
13271338
defines += [ "V8_FUZZILLI" ]
13281339
}
1340+
if (v8_dumpling) {
1341+
defines += [ "V8_DUMPLING" ]
1342+
}
13291343
if (v8_enable_fuzztest) {
13301344
defines += [ "V8_ENABLE_FUZZTEST" ]
13311345
}
@@ -1459,7 +1473,6 @@ config("features") {
14591473
if (v8_enable_undefined_double) {
14601474
defines += [ "V8_ENABLE_UNDEFINED_DOUBLE" ]
14611475
}
1462-
defines += [ "V8_ENABLE_LEAPTIERING" ]
14631476
if (v8_enable_partition_alloc) {
14641477
defines += [ "V8_ENABLE_PARTITION_ALLOC" ]
14651478
}
@@ -1589,10 +1602,9 @@ config("toolchain") {
15891602
}
15901603
}
15911604

1592-
# Under simulator build, compiler will not provide __riscv_xlen. Define here
15931605
if (v8_current_cpu == "riscv64" || v8_current_cpu == "riscv32") {
15941606
if (v8_target_is_simulator) {
1595-
defines += [ "_RISCV_TARGET_SIMULATOR" ]
1607+
defines += [ "RISCV_TARGET_SIMULATOR" ]
15961608
}
15971609
if (riscv_use_rvv || v8_target_is_simulator) {
15981610
defines += [ "CAN_USE_RVV_INSTRUCTIONS" ]
@@ -1607,10 +1619,19 @@ config("toolchain") {
16071619
if (riscv_use_zbs) {
16081620
defines += [ "__riscv_zbs" ]
16091621
}
1622+
defines += [ "RISCV_CODE_ALIGNMENT=${riscv_code_alignment}" ]
1623+
defines +=
1624+
[ "RISCV_CONSTANT_POOL_ALIGNMENT=${riscv_constant_pool_alignment}" ]
16101625
}
1626+
16111627
if (v8_current_cpu == "riscv64") {
16121628
defines += [ "V8_TARGET_ARCH_RISCV64" ]
1613-
defines += [ "__riscv_xlen=64" ]
1629+
1630+
# When building the simulator, the compiler does not provide __riscv_xlen,
1631+
# so we explicitly define it here.
1632+
if (v8_target_is_simulator) {
1633+
defines += [ "__riscv_xlen=64" ]
1634+
}
16141635
if (!is_clang) {
16151636
cflags += [ "-ffp-contract=off" ]
16161637
}
@@ -1621,7 +1642,12 @@ config("toolchain") {
16211642

16221643
if (v8_current_cpu == "riscv32") {
16231644
defines += [ "V8_TARGET_ARCH_RISCV32" ]
1624-
defines += [ "__riscv_xlen=32" ]
1645+
1646+
# When building the simulator, the compiler does not provide __riscv_xlen,
1647+
# so we explicitly define it here.
1648+
if (v8_target_is_simulator) {
1649+
defines += [ "__riscv_xlen=32" ]
1650+
}
16251651
}
16261652

16271653
if (v8_current_cpu == "x86") {
@@ -3555,7 +3581,7 @@ v8_header_set("v8_internal_headers") {
35553581
"src/compiler/backend/register-allocator.h",
35563582
"src/compiler/backend/spill-placer.h",
35573583
"src/compiler/backend/unwinding-info-writer.h",
3558-
"src/compiler/basic-block-instrumentor.h",
3584+
"src/compiler/basic-block-call-graph-profiler.h",
35593585
"src/compiler/branch-elimination.h",
35603586
"src/compiler/bytecode-analysis.h",
35613587
"src/compiler/bytecode-graph-builder.h",
@@ -3699,6 +3725,7 @@ v8_header_set("v8_internal_headers") {
36993725
"src/compiler/turboshaft/late-load-elimination-reducer.h",
37003726
"src/compiler/turboshaft/layered-hash-map.h",
37013727
"src/compiler/turboshaft/load-store-simplification-reducer.h",
3728+
"src/compiler/turboshaft/load-store-verification-reducer.h",
37023729
"src/compiler/turboshaft/loop-finder.h",
37033730
"src/compiler/turboshaft/loop-peeling-phase.h",
37043731
"src/compiler/turboshaft/loop-peeling-reducer.h",
@@ -4476,6 +4503,7 @@ v8_header_set("v8_internal_headers") {
44764503
"src/tracing/code-data-source.h",
44774504
"src/tracing/code-trace-context.h",
44784505
"src/tracing/perfetto-logger.h",
4506+
"src/tracing/perfetto-sdk.h",
44794507
"src/tracing/perfetto-utils.h",
44804508
]
44814509
}
@@ -4519,6 +4547,9 @@ v8_header_set("v8_internal_headers") {
45194547
"src/maglev/maglev-pipeline-statistics.h",
45204548
"src/maglev/maglev-post-hoc-optimizations-processors.h",
45214549
"src/maglev/maglev-pre-regalloc-codegen-processors.h",
4550+
"src/maglev/maglev-range-analysis.h",
4551+
"src/maglev/maglev-range-verification.h",
4552+
"src/maglev/maglev-range.h",
45224553
"src/maglev/maglev-reducer-inl.h",
45234554
"src/maglev/maglev-reducer.h",
45244555
"src/maglev/maglev-regalloc-data.h",
@@ -5138,7 +5169,7 @@ v8_compiler_sources = [
51385169
"src/compiler/backend/register-allocator-verifier.cc",
51395170
"src/compiler/backend/register-allocator.cc",
51405171
"src/compiler/backend/spill-placer.cc",
5141-
"src/compiler/basic-block-instrumentor.cc",
5172+
"src/compiler/basic-block-call-graph-profiler.cc",
51425173
"src/compiler/branch-elimination.cc",
51435174
"src/compiler/bytecode-analysis.cc",
51445175
"src/compiler/bytecode-graph-builder.cc",
@@ -5295,6 +5326,7 @@ if (!v8_enable_maglev) {
52955326
"src/maglev/maglev-ir.cc",
52965327
"src/maglev/maglev-known-node-aspects.cc",
52975328
"src/maglev/maglev-phi-representation-selector.cc",
5329+
"src/maglev/maglev-range-verification.cc",
52985330
"src/maglev/maglev-truncation.cc",
52995331
]
53005332
}
@@ -6039,6 +6071,7 @@ v8_source_set("v8_base_without_compiler") {
60396071
"src/maglev/maglev-known-node-aspects.cc",
60406072
"src/maglev/maglev-phi-representation-selector.cc",
60416073
"src/maglev/maglev-pipeline-statistics.cc",
6074+
"src/maglev/maglev-range-verification.cc",
60426075
"src/maglev/maglev-regalloc.cc",
60436076
"src/maglev/maglev-truncation.cc",
60446077
"src/maglev/maglev.cc",
@@ -6493,6 +6526,15 @@ v8_source_set("v8_base_without_compiler") {
64936526
]
64946527
}
64956528

6529+
if (v8_dumpling) {
6530+
sources += [
6531+
"src/dumpling/dumpling-manager.cc",
6532+
"src/dumpling/dumpling-manager.h",
6533+
"src/dumpling/object-dumping.cc",
6534+
"src/dumpling/object-dumping.h",
6535+
]
6536+
}
6537+
64966538
if (v8_enable_i18n_support) {
64976539
deps += [ ":run_gen-regexp-special-case" ]
64986540
sources += [ "$target_gen_dir/src/regexp/special-case.cc" ]
@@ -7431,6 +7473,7 @@ v8_source_set("cppgc_base") {
74317473

74327474
if (v8_use_perfetto) {
74337475
sources += [
7476+
"src/tracing/perfetto-sdk.h",
74347477
"src/tracing/trace-categories.cc",
74357478
"src/tracing/trace-categories.h",
74367479
]

0 commit comments

Comments
 (0)