@@ -1460,6 +1460,10 @@ config("toolchain") {
14601460" /wd4715" , # 'function' : not all control paths return a value'
14611461# MSVC does not analyze switch (enum) for completeness.
14621462 ]
1463+
1464+ # TODO(https://crbug.com/1377771): Keep MSVC on C++17 until source code is
1465+ # made compatible with C++20.
1466+ cflags_cc = [ " /std:c++17" ]
14631467 }
14641468
14651469if (! is_clang && ! is_win ) {
@@ -1476,6 +1480,11 @@ config("toolchain") {
14761480# Disable gcc warnings for using enum constant in boolean context.
14771481# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97266
14781482" -Wno-int-in-bool-context" ,
1483+
1484+ # Disable gcc deprecation warnings, which are firing on implicit capture
1485+ # of `this` in capture-by-value lambdas and preventing a build roll which
1486+ # enables C++20 (see https://crbug.com/1374227).
1487+ " -Wno-deprecated" ,
14791488 ]
14801489 }
14811490
@@ -2268,6 +2277,8 @@ action("v8_dump_build_config") {
22682277" v8_current_cpu=\" $v8_current_cpu \" " ,
22692278" v8_enable_atomic_object_field_writes=" +
22702279" $v8_enable_atomic_object_field_writes " ,
2280+ " v8_enable_conservative_stack_scanning=" +
2281+ " $v8_enable_conservative_stack_scanning " ,
22712282" v8_enable_concurrent_marking=$v8_enable_concurrent_marking " ,
22722283" v8_enable_single_generation=$v8_enable_single_generation " ,
22732284" v8_enable_i18n_support=$v8_enable_i18n_support " ,
@@ -2803,6 +2814,7 @@ v8_header_set("v8_internal_headers") {
28032814" src/compiler/all-nodes.h" ,
28042815" src/compiler/allocation-builder-inl.h" ,
28052816" src/compiler/allocation-builder.h" ,
2817+ " src/compiler/backend/bitcast-elider.h" ,
28062818" src/compiler/backend/code-generator-impl.h" ,
28072819" src/compiler/backend/code-generator.h" ,
28082820" src/compiler/backend/frame-elider.h" ,
@@ -2923,16 +2935,18 @@ v8_header_set("v8_internal_headers") {
29232935" src/compiler/turboshaft/graph-builder.h" ,
29242936" src/compiler/turboshaft/graph-visualizer.h" ,
29252937" src/compiler/turboshaft/graph.h" ,
2926- " src/compiler/turboshaft/machine-optimization-assembler .h" ,
2938+ " src/compiler/turboshaft/machine-optimization-reducer .h" ,
29272939" src/compiler/turboshaft/operation-matching.h" ,
29282940" src/compiler/turboshaft/operations.h" ,
29292941" src/compiler/turboshaft/optimization-phase.h" ,
29302942" src/compiler/turboshaft/recreate-schedule.h" ,
29312943" src/compiler/turboshaft/representations.h" ,
2944+ " src/compiler/turboshaft/select-lowering-reducer.h" ,
29322945" src/compiler/turboshaft/sidetable.h" ,
29332946" src/compiler/turboshaft/simplify-tf-loops.h" ,
2947+ " src/compiler/turboshaft/snapshot-table.h" ,
29342948" src/compiler/turboshaft/utils.h" ,
2935- " src/compiler/turboshaft/value-numbering-assembler .h" ,
2949+ " src/compiler/turboshaft/value-numbering-reducer .h" ,
29362950" src/compiler/type-cache.h" ,
29372951" src/compiler/type-narrowing-reducer.h" ,
29382952" src/compiler/typed-optimization.h" ,
@@ -3024,6 +3038,7 @@ v8_header_set("v8_internal_headers") {
30243038" src/handles/maybe-handles.h" ,
30253039" src/handles/persistent-handles.h" ,
30263040" src/handles/shared-object-conveyor-handles.h" ,
3041+ " src/handles/traced-handles.h" ,
30273042" src/heap/allocation-observer.h" ,
30283043" src/heap/allocation-result.h" ,
30293044" src/heap/allocation-stats.h" ,
@@ -3422,6 +3437,7 @@ v8_header_set("v8_internal_headers") {
34223437" src/profiler/heap-profiler.h" ,
34233438" src/profiler/heap-snapshot-generator-inl.h" ,
34243439" src/profiler/heap-snapshot-generator.h" ,
3440+ " src/profiler/output-stream-writer.h" ,
34253441" src/profiler/profile-generator-inl.h" ,
34263442" src/profiler/profile-generator.h" ,
34273443" src/profiler/profiler-listener.h" ,
@@ -4041,6 +4057,7 @@ v8_compiler_sources = [
40414057" src/compiler/access-info.cc" ,
40424058" src/compiler/add-type-assertions-reducer.cc" ,
40434059" src/compiler/all-nodes.cc" ,
4060+ " src/compiler/backend/bitcast-elider.cc" ,
40444061" src/compiler/backend/code-generator.cc" ,
40454062" src/compiler/backend/frame-elider.cc" ,
40464063" src/compiler/backend/gap-resolver.cc" ,
@@ -4429,6 +4446,7 @@ v8_source_set("v8_base_without_compiler") {
44294446" src/handles/local-handles.cc" ,
44304447" src/handles/persistent-handles.cc" ,
44314448" src/handles/shared-object-conveyor-handles.cc" ,
4449+ " src/handles/traced-handles.cc" ,
44324450" src/heap/allocation-observer.cc" ,
44334451" src/heap/array-buffer-sweeper.cc" ,
44344452" src/heap/base-space.cc" ,
@@ -4737,6 +4755,7 @@ v8_source_set("v8_base_without_compiler") {
47374755
47384756if (v8_enable_maglev ) {
47394757sources += [
4758+ " src/maglev/maglev-assembler.cc" ,
47404759" src/maglev/maglev-code-generator.cc" ,
47414760" src/maglev/maglev-compilation-info.cc" ,
47424761" src/maglev/maglev-compilation-unit.cc" ,
@@ -5745,31 +5764,31 @@ v8_source_set("v8_heap_base") {
57455764
57465765if (is_clang || ! is_win ) {
57475766if (current_cpu == " x64" ) {
5748- sources += [ " src/heap/base/asm/x64/push_registers_asm .cc" ]
5767+ sources += [ " src/heap/base/asm/x64/save_registers_asm .cc" ]
57495768 } else if (current_cpu == " x86" ) {
5750- sources += [ " src/heap/base/asm/ia32/push_registers_asm .cc" ]
5769+ sources += [ " src/heap/base/asm/ia32/save_registers_asm .cc" ]
57515770 } else if (current_cpu == " arm" ) {
5752- sources += [ " src/heap/base/asm/arm/push_registers_asm .cc" ]
5771+ sources += [ " src/heap/base/asm/arm/save_registers_asm .cc" ]
57535772 } else if (current_cpu == " arm64" ) {
5754- sources += [ " src/heap/base/asm/arm64/push_registers_asm .cc" ]
5773+ sources += [ " src/heap/base/asm/arm64/save_registers_asm .cc" ]
57555774 } else if (current_cpu == " ppc64" ) {
5756- sources += [ " src/heap/base/asm/ppc/push_registers_asm .cc" ]
5775+ sources += [ " src/heap/base/asm/ppc/save_registers_asm .cc" ]
57575776 } else if (current_cpu == " s390x" ) {
5758- sources += [ " src/heap/base/asm/s390/push_registers_asm .cc" ]
5777+ sources += [ " src/heap/base/asm/s390/save_registers_asm .cc" ]
57595778 } else if (current_cpu == " mips64el" ) {
5760- sources += [ " src/heap/base/asm/mips64/push_registers_asm .cc" ]
5779+ sources += [ " src/heap/base/asm/mips64/save_registers_asm .cc" ]
57615780 } else if (current_cpu == " loong64" ) {
5762- sources += [ " src/heap/base/asm/loong64/push_registers_asm .cc" ]
5781+ sources += [ " src/heap/base/asm/loong64/save_registers_asm .cc" ]
57635782 } else if (current_cpu == " riscv64" || current_cpu == " riscv32" ) {
5764- sources += [ " src/heap/base/asm/riscv/push_registers_asm .cc" ]
5783+ sources += [ " src/heap/base/asm/riscv/save_registers_asm .cc" ]
57655784 }
57665785 } else if (is_win ) {
57675786if (current_cpu == " x64" ) {
5768- sources += [ " src/heap/base/asm/x64/push_registers_masm .asm" ]
5787+ sources += [ " src/heap/base/asm/x64/save_registers_masm .asm" ]
57695788 } else if (current_cpu == " x86" ) {
5770- sources += [ " src/heap/base/asm/ia32/push_registers_masm .asm" ]
5789+ sources += [ " src/heap/base/asm/ia32/save_registers_masm .asm" ]
57715790 } else if (current_cpu == " arm64" ) {
5772- sources += [ " src/heap/base/asm/arm64/push_registers_masm .S" ]
5791+ sources += [ " src/heap/base/asm/arm64/save_registers_masm .S" ]
57735792 }
57745793 }
57755794
0 commit comments