@@ -12,191 +12,22 @@
'v8_os_page_size%' : 0 ,
'generate_bytecode_output_root' : '<(SHARED_INTERMEDIATE_DIR)/generate-bytecode-output-root' ,
'generate_bytecode_builtins_list_output' : '<(generate_bytecode_output_root)/builtins-generated/bytecodes-builtins-list.h' ,
'torque_files' : [
"<(V8_ROOT)/src/builtins/aggregate-error.tq" ,
"<(V8_ROOT)/src/builtins/array-copywithin.tq" ,
"<(V8_ROOT)/src/builtins/array-every.tq" ,
"<(V8_ROOT)/src/builtins/array-filter.tq" ,
"<(V8_ROOT)/src/builtins/array-find.tq" ,
"<(V8_ROOT)/src/builtins/array-findindex.tq" ,
"<(V8_ROOT)/src/builtins/array-foreach.tq" ,
"<(V8_ROOT)/src/builtins/array-from.tq" ,
"<(V8_ROOT)/src/builtins/array-isarray.tq" ,
"<(V8_ROOT)/src/builtins/array-join.tq" ,
"<(V8_ROOT)/src/builtins/array-lastindexof.tq" ,
"<(V8_ROOT)/src/builtins/array-map.tq" ,
"<(V8_ROOT)/src/builtins/array-of.tq" ,
"<(V8_ROOT)/src/builtins/array-reduce-right.tq" ,
"<(V8_ROOT)/src/builtins/array-reduce.tq" ,
"<(V8_ROOT)/src/builtins/array-reverse.tq" ,
"<(V8_ROOT)/src/builtins/array-shift.tq" ,
"<(V8_ROOT)/src/builtins/array-slice.tq" ,
"<(V8_ROOT)/src/builtins/array-some.tq" ,
"<(V8_ROOT)/src/builtins/array-splice.tq" ,
"<(V8_ROOT)/src/builtins/array-unshift.tq" ,
"<(V8_ROOT)/src/builtins/array.tq" ,
"<(V8_ROOT)/src/builtins/arraybuffer.tq" ,
"<(V8_ROOT)/src/builtins/base.tq" ,
"<(V8_ROOT)/src/builtins/bigint.tq" ,
"<(V8_ROOT)/src/builtins/boolean.tq" ,
"<(V8_ROOT)/src/builtins/builtins-string.tq" ,
"<(V8_ROOT)/src/builtins/cast.tq" ,
"<(V8_ROOT)/src/builtins/collections.tq" ,
"<(V8_ROOT)/src/builtins/constructor.tq" ,
"<(V8_ROOT)/src/builtins/conversion.tq" ,
"<(V8_ROOT)/src/builtins/convert.tq" ,
"<(V8_ROOT)/src/builtins/console.tq" ,
"<(V8_ROOT)/src/builtins/data-view.tq" ,
"<(V8_ROOT)/src/builtins/finalization-registry.tq" ,
"<(V8_ROOT)/src/builtins/frames.tq" ,
"<(V8_ROOT)/src/builtins/frame-arguments.tq" ,
"<(V8_ROOT)/src/builtins/function.tq" ,
"<(V8_ROOT)/src/builtins/growable-fixed-array.tq" ,
"<(V8_ROOT)/src/builtins/ic-callable.tq" ,
"<(V8_ROOT)/src/builtins/ic.tq" ,
"<(V8_ROOT)/src/builtins/internal-coverage.tq" ,
"<(V8_ROOT)/src/builtins/internal.tq" ,
"<(V8_ROOT)/src/builtins/iterator.tq" ,
"<(V8_ROOT)/src/builtins/math.tq" ,
"<(V8_ROOT)/src/builtins/number.tq" ,
"<(V8_ROOT)/src/builtins/object-fromentries.tq" ,
"<(V8_ROOT)/src/builtins/object.tq" ,
"<(V8_ROOT)/src/builtins/promise-abstract-operations.tq" ,
"<(V8_ROOT)/src/builtins/promise-all.tq" ,
"<(V8_ROOT)/src/builtins/promise-all-element-closure.tq" ,
"<(V8_ROOT)/src/builtins/promise-any.tq" ,
"<(V8_ROOT)/src/builtins/promise-constructor.tq" ,
"<(V8_ROOT)/src/builtins/promise-finally.tq" ,
"<(V8_ROOT)/src/builtins/promise-misc.tq" ,
"<(V8_ROOT)/src/builtins/promise-race.tq" ,
"<(V8_ROOT)/src/builtins/promise-reaction-job.tq" ,
"<(V8_ROOT)/src/builtins/promise-resolve.tq" ,
"<(V8_ROOT)/src/builtins/promise-then.tq" ,
"<(V8_ROOT)/src/builtins/promise-jobs.tq" ,
"<(V8_ROOT)/src/builtins/proxy-constructor.tq" ,
"<(V8_ROOT)/src/builtins/proxy-delete-property.tq" ,
"<(V8_ROOT)/src/builtins/proxy-get-property.tq" ,
"<(V8_ROOT)/src/builtins/proxy-get-prototype-of.tq" ,
"<(V8_ROOT)/src/builtins/proxy-has-property.tq" ,
"<(V8_ROOT)/src/builtins/proxy-is-extensible.tq" ,
"<(V8_ROOT)/src/builtins/proxy-prevent-extensions.tq" ,
"<(V8_ROOT)/src/builtins/proxy-revocable.tq" ,
"<(V8_ROOT)/src/builtins/proxy-revoke.tq" ,
"<(V8_ROOT)/src/builtins/proxy-set-property.tq" ,
"<(V8_ROOT)/src/builtins/proxy-set-prototype-of.tq" ,
"<(V8_ROOT)/src/builtins/proxy.tq" ,
"<(V8_ROOT)/src/builtins/reflect.tq" ,
"<(V8_ROOT)/src/builtins/regexp-exec.tq" ,
"<(V8_ROOT)/src/builtins/regexp-match-all.tq" ,
"<(V8_ROOT)/src/builtins/regexp-match.tq" ,
"<(V8_ROOT)/src/builtins/regexp-replace.tq" ,
"<(V8_ROOT)/src/builtins/regexp-search.tq" ,
"<(V8_ROOT)/src/builtins/regexp-source.tq" ,
"<(V8_ROOT)/src/builtins/regexp-split.tq" ,
"<(V8_ROOT)/src/builtins/regexp-test.tq" ,
"<(V8_ROOT)/src/builtins/regexp.tq" ,
"<(V8_ROOT)/src/builtins/string-endswith.tq" ,
"<(V8_ROOT)/src/builtins/string-html.tq" ,
"<(V8_ROOT)/src/builtins/string-iterator.tq" ,
"<(V8_ROOT)/src/builtins/string-pad.tq" ,
"<(V8_ROOT)/src/builtins/string-repeat.tq" ,
"<(V8_ROOT)/src/builtins/string-replaceall.tq" ,
"<(V8_ROOT)/src/builtins/string-slice.tq" ,
"<(V8_ROOT)/src/builtins/string-startswith.tq" ,
"<(V8_ROOT)/src/builtins/string-substring.tq" ,
"<(V8_ROOT)/src/builtins/string-substr.tq" ,
"<(V8_ROOT)/src/builtins/symbol.tq" ,
"<(V8_ROOT)/src/builtins/torque-internal.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-createtypedarray.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-every.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-entries.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-filter.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-find.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-findindex.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-foreach.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-from.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-keys.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-of.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-reduce.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-reduceright.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-set.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-slice.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-some.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-sort.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-subarray.tq" ,
"<(V8_ROOT)/src/builtins/typed-array-values.tq" ,
"<(V8_ROOT)/src/builtins/typed-array.tq" ,
"<(V8_ROOT)/src/builtins/wasm.tq" ,
"<(V8_ROOT)/src/builtins/weak-ref.tq" ,
"<(V8_ROOT)/src/ic/handler-configuration.tq" ,
"<(V8_ROOT)/src/objects/allocation-site.tq" ,
"<(V8_ROOT)/src/objects/api-callbacks.tq" ,
"<(V8_ROOT)/src/objects/arguments.tq" ,
"<(V8_ROOT)/src/objects/cell.tq" ,
"<(V8_ROOT)/src/objects/code.tq" ,
"<(V8_ROOT)/src/objects/contexts.tq" ,
"<(V8_ROOT)/src/objects/data-handler.tq" ,
"<(V8_ROOT)/src/objects/debug-objects.tq" ,
"<(V8_ROOT)/src/objects/descriptor-array.tq" ,
"<(V8_ROOT)/src/objects/embedder-data-array.tq" ,
"<(V8_ROOT)/src/objects/feedback-cell.tq" ,
"<(V8_ROOT)/src/objects/feedback-vector.tq" ,
"<(V8_ROOT)/src/objects/fixed-array.tq" ,
"<(V8_ROOT)/src/objects/foreign.tq" ,
"<(V8_ROOT)/src/objects/free-space.tq" ,
"<(V8_ROOT)/src/objects/heap-number.tq" ,
"<(V8_ROOT)/src/objects/heap-object.tq" ,
"<(V8_ROOT)/src/objects/js-array-buffer.tq" ,
"<(V8_ROOT)/src/objects/js-array.tq" ,
"<(V8_ROOT)/src/objects/js-collection-iterator.tq" ,
"<(V8_ROOT)/src/objects/js-collection.tq" ,
"<(V8_ROOT)/src/objects/js-generator.tq" ,
"<(V8_ROOT)/src/objects/js-objects.tq" ,
"<(V8_ROOT)/src/objects/js-promise.tq" ,
"<(V8_ROOT)/src/objects/js-proxy.tq" ,
"<(V8_ROOT)/src/objects/js-regexp-string-iterator.tq" ,
"<(V8_ROOT)/src/objects/js-regexp.tq" ,
"<(V8_ROOT)/src/objects/js-weak-refs.tq" ,
"<(V8_ROOT)/src/objects/literal-objects.tq" ,
"<(V8_ROOT)/src/objects/map.tq" ,
"<(V8_ROOT)/src/objects/microtask.tq" ,
"<(V8_ROOT)/src/objects/module.tq" ,
"<(V8_ROOT)/src/objects/name.tq" ,
"<(V8_ROOT)/src/objects/oddball.tq" ,
"<(V8_ROOT)/src/objects/ordered-hash-table.tq" ,
"<(V8_ROOT)/src/objects/primitive-heap-object.tq" ,
"<(V8_ROOT)/src/objects/promise.tq" ,
"<(V8_ROOT)/src/objects/property-array.tq" ,
"<(V8_ROOT)/src/objects/property-cell.tq" ,
"<(V8_ROOT)/src/objects/property-descriptor-object.tq" ,
"<(V8_ROOT)/src/objects/prototype-info.tq" ,
"<(V8_ROOT)/src/objects/regexp-match-info.tq" ,
"<(V8_ROOT)/src/objects/scope-info.tq" ,
"<(V8_ROOT)/src/objects/script.tq" ,
"<(V8_ROOT)/src/objects/shared-function-info.tq" ,
"<(V8_ROOT)/src/objects/source-text-module.tq" ,
"<(V8_ROOT)/src/objects/stack-frame-info.tq" ,
"<(V8_ROOT)/src/objects/string.tq" ,
"<(V8_ROOT)/src/objects/struct.tq" ,
"<(V8_ROOT)/src/objects/synthetic-module.tq" ,
"<(V8_ROOT)/src/objects/template-objects.tq" ,
"<(V8_ROOT)/src/objects/template.tq" ,
"<(V8_ROOT)/src/wasm/wasm-objects.tq" ,
"<(V8_ROOT)/test/torque/test-torque.tq" ,
"<(V8_ROOT)/third_party/v8/builtins/array-sort.tq" ,
],
'torque_output_root' : '<(SHARED_INTERMEDIATE_DIR)/torque-output-root' ,
'torque_files_replaced' : ['<!@pymod_do_main(ForEachReplace ".tq" "-tq-csa" <@(torque_files))' ],
'torque_outputs' : ['<!@pymod_do_main(ForEachFormat "<(torque_output_root)/torque-generated/%s.cc" <@(torque_files_replaced))' ],
'torque_outputs+' : ['<!@pymod_do_main(ForEachFormat "<(torque_output_root)/torque-generated/%s.h" <@(torque_files_replaced))' ],
'torque_files' : ['<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "torque_files = ")' ],
# Torque and V8 expect the files to be named relative to V8's root.
'torque_files_without_v8_root' : ['<!@pymod_do_main(ForEachReplace "<@(V8_ROOT)/" "" <@(torque_files))' ],
'torque_files_replaced' : ['<!@pymod_do_main(ForEachReplace ".tq" "-tq" <@(torque_files_without_v8_root))' ],
'torque_outputs_csa_cc' : ['<!@pymod_do_main(ForEachFormat "<(SHARED_INTERMEDIATE_DIR)/torque-generated/%s-csa.cc" <@(torque_files_replaced))' ],
'torque_outputs_csa_h' : ['<!@pymod_do_main(ForEachFormat "<(SHARED_INTERMEDIATE_DIR)/torque-generated/%s-csa.h" <@(torque_files_replaced))' ],
'torque_outputs_inl_inc' : ['<!@pymod_do_main(ForEachFormat "<(SHARED_INTERMEDIATE_DIR)/torque-generated/%s-inl.inc" <@(torque_files_replaced))' ],
'torque_outputs_cc' : ['<!@pymod_do_main(ForEachFormat "<(SHARED_INTERMEDIATE_DIR)/torque-generated/%s.cc" <@(torque_files_replaced))' ],
'torque_outputs_inc' : ['<!@pymod_do_main(ForEachFormat "<(SHARED_INTERMEDIATE_DIR)/torque-generated/%s.inc" <@(torque_files_replaced))' ],
'v8_compiler_sources' : ['<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "v8_compiler_sources = ")' ],
'conditions' : [
['v8_enable_i18n_support' , {
'torque_files' : [
"<(V8_ROOT)/src/objects/intl-objects.tq" ,
]
}]
'<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "torque_files \\ += ")' ,
],
}],
],
},
'includes' : ['toolchain.gypi' , 'features.gypi' ],
@@ -222,7 +53,7 @@
'hard_dependency' : 1 ,
'direct_dependent_settings' : {
'include_dirs' : [
'<(torque_output_root )' ,
'<(SHARED_INTERMEDIATE_DIR )' ,
],
},
'actions' : [
@@ -233,35 +64,36 @@
'<@(torque_files)' ,
],
'outputs' : [
'<(torque_output_root )/torque-generated/bit-fields.h' ,
'<(torque_output_root )/torque-generated/builtin-definitions.h' ,
'<(torque_output_root )/torque-generated/interface-descriptors.inc' ,
'<(torque_output_root )/torque-generated/factory.cc' ,
'<(torque_output_root )/torque-generated/factory.inc' ,
'<(torque_output_root )/torque-generated/field-offsets.h' ,
'<(torque_output_root )/torque-generated/class-verifiers.cc' ,
'<(torque_output_root )/torque-generated/class-verifiers.h' ,
'<(torque_output_root )/torque-generated/enum-verifiers.cc' ,
'<(torque_output_root )/torque-generated/objects-printer.cc' ,
'<(torque_output_root )/torque-generated/objects-body-descriptors-inl.inc' ,
'<(torque_output_root )/torque-generated/class-definitions .cc' ,
'<(torque_output_root )/torque-generated/class-definitions-inl .h' ,
'<(torque_output_root )/torque-generated/class-definitions.h ' ,
'<(torque_output_root )/torque-generated/class-debug-readers.cc ' ,
'<(torque_output_root )/torque-generated/class-debug-readers .h' ,
'<(torque_output_root )/torque-generated/exported-macros-assembler.cc ' ,
'<(torque_output_root )/torque-generated/exported -macros-assembler.h ' ,
'<(torque_output_root )/torque-generated/csa-types .h' ,
'<(torque_output_root )/torque-generated/instance-types .h' ,
'<(torque_output_root)/torque-generated/internal-class-definitions.h ' ,
'<(torque_output_root)/torque-generated/internal-class-definitions-inl.h ' ,
'<(torque_output_root)/torque-generated/exported-class-definitions.h ' ,
'<(torque_output_root)/torque-generated/exported-class-definitions-inl.h ' ,
'<@(torque_outputs )' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/bit-fields.h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/builtin-definitions.h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/interface-descriptors.inc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/factory.cc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/factory.inc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/field-offsets.h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/class-verifiers.cc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/class-verifiers.h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/enum-verifiers.cc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/objects-printer.cc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/objects-body-descriptors-inl.inc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/class-debug-readers .cc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/class-debug-readers .h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/exported-macros-assembler.cc ' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/exported-macros-assembler.h ' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/csa-types .h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/instance-types.h ' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/runtime -macros.cc ' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/runtime-macros .h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/class-forward-declarations .h' ,
'<@(torque_outputs_csa_cc) ' ,
'<@(torque_outputs_csa_h) ' ,
'<@(torque_outputs_inl_inc) ' ,
'<@(torque_outputs_cc) ' ,
'<@(torque_outputs_inc )' ,
],
'action' : [
'<@(_inputs)' ,
'-o' , '<(torque_output_root)/torque-generated' ,
'<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)' ,
'<@(torque_files_without_v8_root)' ,
'-o' , '<(SHARED_INTERMEDIATE_DIR)/torque-generated' ,
'-v8-root' , '<(V8_ROOT)'
],
},
@@ -303,12 +135,13 @@
],
'direct_dependent_settings' : {
'sources' : [
'<(torque_output_root )/torque-generated/csa-types.h' ,
'<(torque_output_root )/torque-generated/enum-verifiers.cc' ,
'<(torque_output_root )/torque-generated/exported-macros-assembler.cc' ,
'<(torque_output_root )/torque-generated/exported-macros-assembler.h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/csa-types.h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/enum-verifiers.cc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/exported-macros-assembler.cc' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/exported-macros-assembler.h' ,
'<(V8_ROOT)/src/torque/runtime-support.h' ,
'<@(torque_outputs)' ,
'<@(torque_outputs_csa_cc)' ,
'<@(torque_outputs_csa_h)' ,
],
}
}, # torque_generated_initializers
@@ -328,14 +161,15 @@
],
'direct_dependent_settings' : {
'sources' : [
'<(torque_output_root)/torque-generated/class-definitions.cc' ,
'<(torque_output_root)/torque-generated/class-verifiers.cc' ,
'<(torque_output_root)/torque-generated/class-verifiers.h' ,
'<(torque_output_root)/torque-generated/factory.cc' ,
'<(torque_output_root)/torque-generated/objects-printer.cc' ,
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/class-forward-declarations.h' ,
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/class-verifiers.cc' ,
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/class-verifiers.h' ,
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/factory.cc' ,
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/objects-printer.cc' ,
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/runtime-macros.cc' ,
],
'include_dirs' : [
'<(torque_output_root )' ,
'<(SHARED_INTERMEDIATE_DIR )' ,
],
},
}, # torque_generated_definitions
@@ -357,7 +191,7 @@
],
'include_dirs' : [
'<(generate_bytecode_output_root)' ,
'<(torque_output_root )' ,
'<(SHARED_INTERMEDIATE_DIR )' ,
],
},
'actions' : [
@@ -406,13 +240,11 @@
'torque_generated_initializers' ,
],
'include_dirs' : [
'<(torque_output_root )' ,
'<(SHARED_INTERMEDIATE_DIR )' ,
'<(generate_bytecode_output_root)' ,
],
'sources' : [
'<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "\\ "v8_initializers.*?sources = ")' ,
'<@(torque_outputs)' ,
],
'conditions' : [
['want_separate_host_toolset' , {
@@ -753,7 +585,7 @@
'direct_dependent_settings' : {
'include_dirs' : [
'<(generate_bytecode_output_root)' ,
'<(torque_output_root )' ,
'<(SHARED_INTERMEDIATE_DIR )' ,
],
},
'sources' : [
@@ -1678,7 +1510,7 @@
'dependencies' : ['run_torque' ],
'variables' : {
'heapobject_files' : [
'<(torque_output_root )/torque-generated/instance-types.h' ,
'<(SHARED_INTERMEDIATE_DIR )/torque-generated/instance-types.h' ,
'<(V8_ROOT)/src/objects/allocation-site.h' ,
'<(V8_ROOT)/src/objects/allocation-site-inl.h' ,
'<(V8_ROOT)/src/objects/cell.h' ,