@@ -91,7 +91,7 @@ declare_args() {
9191 # Enable embedded builtins.
9292 v8_enable_embedded_builtins = true
9393
94- # Enable the registration of unwinding info for Windows/ x64.
94+ # Enable the registration of unwinding info for Windows x64 and ARM64 .
9595 v8_win64_unwinding_info = true
9696
9797 # Enable code comments for builtins in the snapshot (impacts performance).
@@ -187,15 +187,21 @@ declare_args() {
187187 # Enable sharing read-only space across isolates.
188188 # Sets -DV8_SHARED_RO_HEAP.
189189 v8_enable_shared_ro_heap = " "
190- }
191190
192- # We reuse the snapshot toolchain for building torque and other generators to
193- # avoid building v8_libbase on the host more than once. On mips with big endian,
194- # the snapshot toolchain is the target toolchain and, hence, can't be used.
195- v8_generator_toolchain = v8_snapshot_toolchain
196- if (host_cpu == " x64" &&
197- (v8_current_cpu == " mips" || v8_current_cpu == " mips64" )) {
198- v8_generator_toolchain = " //build/toolchain/linux:clang_x64"
191+ # Enable lazy source positions by default.
192+ v8_enable_lazy_source_positions = true
193+
194+ # Disable write barriers when GCs are non-incremental and
195+ # heap has single generation.
196+ v8_disable_write_barriers = false
197+
198+ # Redirect allocation in young generation so that there will be
199+ # only one single generation.
200+ v8_enable_single_generation = " "
201+
202+ # Use token threaded dispatch for the regular expression interpreter.
203+ # Use switch-based dispatch if this is false
204+ v8_enable_regexp_interpreter_threaded_dispatch = true
199205}
200206
201207# Derived defaults.
@@ -231,6 +237,13 @@ if (v8_enable_fast_torque == "") {
231237 v8_enable_fast_torque = v8_enable_fast_mksnapshot
232238}
233239
240+ if (v8_enable_single_generation == " " ) {
241+ v8_enable_single_generation = v8_disable_write_barriers
242+ }
243+
244+ assert (! v8_disable_write_barriers || v8_enable_single_generation ,
245+ " Disabling write barriers works only with single generation" )
246+
234247assert (v8_current_cpu != " x86" || ! v8_untrusted_code_mitigations ,
235248 " Untrusted code mitigations are unsupported on ia32" )
236249
@@ -424,12 +437,21 @@ config("features") {
424437 defines += [ " V8_SNAPSHOT_NATIVE_CODE_COUNTERS" ]
425438 }
426439 }
440+ if (v8_enable_single_generation ) {
441+ defines += [ " V8_ENABLE_SINGLE_GENERATION" ]
442+ }
443+ if (v8_disable_write_barriers ) {
444+ defines += [ " V8_DISABLE_WRITE_BARRIERS" ]
445+ }
427446 if (v8_use_external_startup_data ) {
428447 defines += [ " V8_USE_EXTERNAL_STARTUP_DATA" ]
429448 }
430449 if (v8_enable_concurrent_marking ) {
431450 defines += [ " V8_CONCURRENT_MARKING" ]
432451 }
452+ if (v8_enable_lazy_source_positions ) {
453+ defines += [ " V8_ENABLE_LAZY_SOURCE_POSITIONS" ]
454+ }
433455 if (v8_check_microtasks_scopes_consistency ) {
434456 defines += [ " V8_CHECK_MICROTASKS_SCOPES_CONSISTENCY" ]
435457 }
@@ -451,6 +473,9 @@ config("features") {
451473 if (v8_win64_unwinding_info ) {
452474 defines += [ " V8_WIN64_UNWINDING_INFO" ]
453475 }
476+ if (v8_enable_regexp_interpreter_threaded_dispatch ) {
477+ defines += [ " V8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH" ]
478+ }
454479}
455480
456481config (" toolchain" ) {
@@ -968,16 +993,21 @@ torque_files = [
968993 " src/builtins/proxy-set-prototype-of.tq" ,
969994 " src/builtins/proxy.tq" ,
970995 " src/builtins/reflect.tq" ,
996+ " src/builtins/regexp-match.tq" ,
971997 " src/builtins/regexp-replace.tq" ,
998+ " src/builtins/regexp-source.tq" ,
999+ " src/builtins/regexp-test.tq" ,
9721000 " src/builtins/regexp.tq" ,
9731001 " src/builtins/string.tq" ,
9741002 " src/builtins/string-endswith.tq" ,
9751003 " src/builtins/string-html.tq" ,
9761004 " src/builtins/string-iterator.tq" ,
1005+ " src/builtins/string-pad.tq" ,
9771006 " src/builtins/string-repeat.tq" ,
9781007 " src/builtins/string-slice.tq" ,
9791008 " src/builtins/string-startswith.tq" ,
9801009 " src/builtins/string-substring.tq" ,
1010+ " src/builtins/torque-internal.tq" ,
9811011 " src/builtins/typed-array-createtypedarray.tq" ,
9821012 " src/builtins/typed-array-every.tq" ,
9831013 " src/builtins/typed-array-filter.tq" ,
@@ -1002,6 +1032,7 @@ if (!v8_enable_i18n_support) {
10021032action (" run_torque" ) {
10031033 visibility = [
10041034 " :*" ,
1035+ " tools/debug_helper/:*" ,
10051036 " tools/gcmole/:*" ,
10061037 " test/cctest/:*" ,
10071038 ]
@@ -1023,6 +1054,8 @@ action("run_torque") {
10231054 " $target_gen_dir /torque-generated/class-definitions-tq.cc" ,
10241055 " $target_gen_dir /torque-generated/class-definitions-tq-inl.h" ,
10251056 " $target_gen_dir /torque-generated/class-definitions-tq.h" ,
1057+ " $target_gen_dir /torque-generated/class-debug-readers-tq.cc" ,
1058+ " $target_gen_dir /torque-generated/class-debug-readers-tq.h" ,
10261059 " $target_gen_dir /torque-generated/exported-macros-assembler-tq.cc" ,
10271060 " $target_gen_dir /torque-generated/exported-macros-assembler-tq.h" ,
10281061 " $target_gen_dir /torque-generated/csa-types-tq.h" ,
@@ -1752,6 +1785,8 @@ v8_compiler_sources = [
17521785 " src/compiler/escape-analysis-reducer.h" ,
17531786 " src/compiler/escape-analysis.cc" ,
17541787 " src/compiler/escape-analysis.h" ,
1788+ " src/compiler/feedback-source.cc" ,
1789+ " src/compiler/feedback-source.h" ,
17551790 " src/compiler/frame-states.cc" ,
17561791 " src/compiler/frame-states.h" ,
17571792 " src/compiler/frame.cc" ,
@@ -1892,8 +1927,6 @@ v8_compiler_sources = [
18921927 " src/compiler/types.h" ,
18931928 " src/compiler/value-numbering-reducer.cc" ,
18941929 " src/compiler/value-numbering-reducer.h" ,
1895- " src/compiler/vector-slot-pair.cc" ,
1896- " src/compiler/vector-slot-pair.h" ,
18971930 " src/compiler/verifier.cc" ,
18981931 " src/compiler/verifier.h" ,
18991932 " src/compiler/wasm-compiler.cc" ,
@@ -2031,7 +2064,6 @@ v8_source_set("v8_base_without_compiler") {
20312064 " src/builtins/builtins-internal.cc" ,
20322065 " src/builtins/builtins-intl.cc" ,
20332066 " src/builtins/builtins-json.cc" ,
2034- " src/builtins/builtins-math.cc" ,
20352067 " src/builtins/builtins-number.cc" ,
20362068 " src/builtins/builtins-object.cc" ,
20372069 " src/builtins/builtins-promise.cc" ,
@@ -2095,6 +2127,7 @@ v8_source_set("v8_base_without_compiler") {
20952127 " src/codegen/register-arch.h" ,
20962128 " src/codegen/register-configuration.cc" ,
20972129 " src/codegen/register-configuration.h" ,
2130+ " src/codegen/register.cc" ,
20982131 " src/codegen/register.h" ,
20992132 " src/codegen/reglist.h" ,
21002133 " src/codegen/reloc-info.cc" ,
@@ -2194,6 +2227,9 @@ v8_source_set("v8_base_without_compiler") {
21942227 " src/execution/messages.h" ,
21952228 " src/execution/microtask-queue.cc" ,
21962229 " src/execution/microtask-queue.h" ,
2230+ " src/execution/protectors-inl.h" ,
2231+ " src/execution/protectors.cc" ,
2232+ " src/execution/protectors.h" ,
21972233 " src/execution/runtime-profiler.cc" ,
21982234 " src/execution/runtime-profiler.h" ,
21992235 " src/execution/simulator-base.cc" ,
@@ -2758,7 +2794,6 @@ v8_source_set("v8_base_without_compiler") {
27582794 " src/runtime/runtime-typedarray.cc" ,
27592795 " src/runtime/runtime-utils.h" ,
27602796 " src/runtime/runtime-wasm.cc" ,
2761- " src/runtime/runtime-weak-refs.cc" ,
27622797 " src/runtime/runtime.cc" ,
27632798 " src/runtime/runtime.h" ,
27642799 " src/sanitizer/asan.h" ,
@@ -2922,6 +2957,8 @@ v8_source_set("v8_base_without_compiler") {
29222957 " src/wasm/wasm-memory.h" ,
29232958 " src/wasm/wasm-module-builder.cc" ,
29242959 " src/wasm/wasm-module-builder.h" ,
2960+ " src/wasm/wasm-module-sourcemap.cc" ,
2961+ " src/wasm/wasm-module-sourcemap.h" ,
29252962 " src/wasm/wasm-module.cc" ,
29262963 " src/wasm/wasm-module.h" ,
29272964 " src/wasm/wasm-objects-inl.h" ,
@@ -3109,13 +3146,20 @@ v8_source_set("v8_base_without_compiler") {
31093146 " src/diagnostics/arm64/eh-frame-arm64.cc" ,
31103147 " src/execution/arm64/frame-constants-arm64.cc" ,
31113148 " src/execution/arm64/frame-constants-arm64.h" ,
3149+ " src/execution/arm64/pointer-auth-arm64.cc" ,
31123150 " src/execution/arm64/simulator-arm64.cc" ,
31133151 " src/execution/arm64/simulator-arm64.h" ,
31143152 " src/execution/arm64/simulator-logic-arm64.cc" ,
31153153 " src/regexp/arm64/regexp-macro-assembler-arm64.cc" ,
31163154 " src/regexp/arm64/regexp-macro-assembler-arm64.h" ,
31173155 " src/wasm/baseline/arm64/liftoff-assembler-arm64.h" ,
31183156 ]
3157+ if (is_win ) {
3158+ sources += [
3159+ " src/diagnostics/unwinding-info-win64.cc" ,
3160+ " src/diagnostics/unwinding-info-win64.h" ,
3161+ ]
3162+ }
31193163 jumbo_excluded_sources += [
31203164 # TODO([email protected] ): fix this code so it doesn't need 31213165 # to be excluded, see the comments inside.
@@ -3325,6 +3369,7 @@ v8_source_set("torque_base") {
33253369 " src/torque/ast.h" ,
33263370 " src/torque/cfg.cc" ,
33273371 " src/torque/cfg.h" ,
3372+ " src/torque/class-debug-reader-generator.cc" ,
33283373 " src/torque/constants.h" ,
33293374 " src/torque/contextual.h" ,
33303375 " src/torque/csa-generator.cc" ,
@@ -3351,6 +3396,8 @@ v8_source_set("torque_base") {
33513396 " src/torque/torque-compiler.h" ,
33523397 " src/torque/torque-parser.cc" ,
33533398 " src/torque/torque-parser.h" ,
3399+ " src/torque/type-inference.cc" ,
3400+ " src/torque/type-inference.h" ,
33543401 " src/torque/type-oracle.cc" ,
33553402 " src/torque/type-oracle.h" ,
33563403 " src/torque/type-visitor.cc" ,
0 commit comments