Skip to content
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
build: speed up compilation of some V8 files
This introduces a special target to compile some of the
'v8_initializers' files with "-O1" instead of "-O3" to avoid huge
compilation times with GCC versions <13.

Closes: #52068
  • Loading branch information
targos committed Mar 14, 2024
commit d95b0e39128854a05563cabfd597ef3450d8003e
27 changes: 27 additions & 0 deletions tools/v8_gypfiles/v8.gyp
Original file line number Diff line number Diff line change
Expand Up @@ -253,12 +253,32 @@
'<(V8_ROOT)/src/init/setup-isolate-full.cc',
],
}, # v8_init
{
# This target is used to work around a GCC issue that causes the
# compilation to take several minutes when using -O2 or -O3.
# This is fixed in GCC 13.
'target_name': 'v8_initializers_slow',
'type': 'static_library',
'toolsets': ['host', 'target'],
'dependencies': [
'run_torque',
],
'cflags!': ['-O3'],
'cflags': ['-O1'],
'sources': [
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/js-to-wasm-tq-csa.h',
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/js-to-wasm-tq-csa.cc',
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/wasm-to-js-tq-csa.h',
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/wasm-to-js-tq-csa.cc',
],
}, # v8_initializers_slow
{
'target_name': 'v8_initializers',
'type': 'static_library',
'toolsets': ['host', 'target'],
'dependencies': [
'torque_generated_initializers',
'v8_initializers_slow',
'v8_base_without_compiler',
'v8_shared_internal_headers',
'v8_pch',
Expand All @@ -267,6 +287,13 @@
'<(SHARED_INTERMEDIATE_DIR)',
'<(generate_bytecode_output_root)',
],
# Compiled by v8_initializers_slow target.
'sources!': [
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/js-to-wasm-tq-csa.h',
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/js-to-wasm-tq-csa.cc',
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/wasm-to-js-tq-csa.h',
'<(SHARED_INTERMEDIATE_DIR)/torque-generated/src/builtins/wasm-to-js-tq-csa.cc',
],
'sources': [
'<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "\\"v8_initializers.*?sources = ")',
],
Expand Down