1b1994897Sopenharmony_ci# Copyright (c) 2021-2024 Huawei Device Co., Ltd. 2b1994897Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3b1994897Sopenharmony_ci# you may not use this file except in compliance with the License. 4b1994897Sopenharmony_ci# You may obtain a copy of the License at 5b1994897Sopenharmony_ci# 6b1994897Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7b1994897Sopenharmony_ci# 8b1994897Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9b1994897Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10b1994897Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11b1994897Sopenharmony_ci# See the License for the specific language governing permissions and 12b1994897Sopenharmony_ci# limitations under the License. 13b1994897Sopenharmony_ci 14b1994897Sopenharmony_ciimport("//arkcompiler/runtime_core/ark_config.gni") 15b1994897Sopenharmony_ciconfig("arkcompiler_public_config") { 16b1994897Sopenharmony_ci include_dirs = [ 17b1994897Sopenharmony_ci "$ark_root/compiler", 18b1994897Sopenharmony_ci "$ark_root/compiler/code_info", 19b1994897Sopenharmony_ci "$ark_root/compiler/optimizer/ir", 20b1994897Sopenharmony_ci "$target_gen_dir/generated", 21b1994897Sopenharmony_ci ] 22b1994897Sopenharmony_ci 23b1994897Sopenharmony_ci include_dirs += platform_include_dirs 24b1994897Sopenharmony_ci 25b1994897Sopenharmony_ci if (enable_bytecode_optimizer) { 26b1994897Sopenharmony_ci defines = [ "ENABLE_BYTECODE_OPT" ] 27b1994897Sopenharmony_ci } 28b1994897Sopenharmony_ci 29b1994897Sopenharmony_ci is_x64 = 30b1994897Sopenharmony_ci current_cpu == "amd64" || current_cpu == "x64" || current_cpu == "x86_64" 31b1994897Sopenharmony_ci 32b1994897Sopenharmony_ci cflags_cc = [] 33b1994897Sopenharmony_ci if (is_x64 || current_cpu == "arm64") { 34b1994897Sopenharmony_ci if (!is_mingw) { 35b1994897Sopenharmony_ci cflags_cc += [ 36b1994897Sopenharmony_ci "-DPANDA_COMPILER_TARGET_AARCH64", 37b1994897Sopenharmony_ci "-DUSE_VIXL_ARM64", 38b1994897Sopenharmony_ci ] 39b1994897Sopenharmony_ci } 40b1994897Sopenharmony_ci } 41b1994897Sopenharmony_ci if (ark_enable_compiler_x64) { 42b1994897Sopenharmony_ci cflags_cc += [ "-DPANDA_COMPILER_TARGET_X86_64" ] 43b1994897Sopenharmony_ci } 44b1994897Sopenharmony_ci} 45b1994897Sopenharmony_ci 46b1994897Sopenharmony_cilibarkcompiler_sources = [ 47b1994897Sopenharmony_ci "compiler_logger.cpp", 48b1994897Sopenharmony_ci "compiler_options.cpp", 49b1994897Sopenharmony_ci "optimizer/analysis/dominators_tree.cpp", 50b1994897Sopenharmony_ci "optimizer/analysis/linear_order.cpp", 51b1994897Sopenharmony_ci "optimizer/analysis/liveness_analyzer.cpp", 52b1994897Sopenharmony_ci "optimizer/analysis/loop_analyzer.cpp", 53b1994897Sopenharmony_ci "optimizer/analysis/rpo.cpp", 54b1994897Sopenharmony_ci "optimizer/ir/basicblock.cpp", 55b1994897Sopenharmony_ci "optimizer/ir/dump.cpp", 56b1994897Sopenharmony_ci "optimizer/ir/graph.cpp", 57b1994897Sopenharmony_ci "optimizer/ir/graph_checker.cpp", 58b1994897Sopenharmony_ci "optimizer/ir/graph_cloner.cpp", 59b1994897Sopenharmony_ci "optimizer/ir/inst.cpp", 60b1994897Sopenharmony_ci "optimizer/ir/locations.cpp", 61b1994897Sopenharmony_ci "optimizer/ir_builder/inst_builder.cpp", 62b1994897Sopenharmony_ci "optimizer/ir_builder/ir_builder.cpp", 63b1994897Sopenharmony_ci "optimizer/optimizations/branch_elimination.cpp", 64b1994897Sopenharmony_ci "optimizer/optimizations/cleanup.cpp", 65b1994897Sopenharmony_ci "optimizer/optimizations/lowering.cpp", 66b1994897Sopenharmony_ci "optimizer/optimizations/move_constants.cpp", 67b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/interference_graph.cpp", 68b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/reg_alloc.cpp", 69b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/reg_alloc_base.cpp", 70b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/reg_alloc_graph_coloring.cpp", 71b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/reg_alloc_resolver.cpp", 72b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/reg_alloc_stat.cpp", 73b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/reg_map.cpp", 74b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/spill_fills_resolver.cpp", 75b1994897Sopenharmony_ci "optimizer/optimizations/regalloc/split_resolver.cpp", 76b1994897Sopenharmony_ci "optimizer/optimizations/vn.cpp", 77b1994897Sopenharmony_ci "optimizer/pass.cpp", 78b1994897Sopenharmony_ci "optimizer/pass_manager.cpp", 79b1994897Sopenharmony_ci "optimizer/pass_manager_statistics.cpp", 80b1994897Sopenharmony_ci] 81b1994897Sopenharmony_ci 82b1994897Sopenharmony_cilibarkcompiler_sources += [ "$target_gen_dir/generated/inst_builder_gen.cpp" ] 83b1994897Sopenharmony_ci 84b1994897Sopenharmony_cilibarkcompiler_configs = [ 85b1994897Sopenharmony_ci ":arkcompiler_public_config", 86b1994897Sopenharmony_ci "$ark_root:ark_config", 87b1994897Sopenharmony_ci "$ark_root/libpandabase:arkbase_public_config", 88b1994897Sopenharmony_ci "$ark_root/libpandafile:arkfile_public_config", 89b1994897Sopenharmony_ci] 90b1994897Sopenharmony_ci 91b1994897Sopenharmony_ciohos_shared_library("libarkcompiler") { 92b1994897Sopenharmony_ci stack_protector_ret = false 93b1994897Sopenharmony_ci sources = libarkcompiler_sources 94b1994897Sopenharmony_ci 95b1994897Sopenharmony_ci configs = libarkcompiler_configs 96b1994897Sopenharmony_ci 97b1994897Sopenharmony_ci deps = [ 98b1994897Sopenharmony_ci ":codegen_language_extensions_h", 99b1994897Sopenharmony_ci ":compiler_events_gen_h", 100b1994897Sopenharmony_ci ":compiler_interface_extensions_inl_h", 101b1994897Sopenharmony_ci ":compiler_logger_components_inc", 102b1994897Sopenharmony_ci ":compiler_options_gen_h", 103b1994897Sopenharmony_ci ":cpu_features_gen_inc", 104b1994897Sopenharmony_ci ":intrinsics_codegen_ext_inl_h", 105b1994897Sopenharmony_ci ":intrinsics_inline_inl", 106b1994897Sopenharmony_ci ":intrinsics_ir_build_inl_h", 107b1994897Sopenharmony_ci ":intrinsics_ir_build_static_call_inl", 108b1994897Sopenharmony_ci ":intrinsics_ir_build_virtual_call_inl", 109b1994897Sopenharmony_ci ":intrinsics_stub_inl", 110b1994897Sopenharmony_ci ":intrinsics_stub_inl_h", 111b1994897Sopenharmony_ci ":ir_dyn_base_types_h", 112b1994897Sopenharmony_ci ":isa_gen_libarkcompiler_inst_builder_gen_cpp", 113b1994897Sopenharmony_ci ":libarkcompiler_ecma_intrinsics_enum_inl", 114b1994897Sopenharmony_ci ":libarkcompiler_generate_ecma_inl", 115b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_generate_operations_intrinsic_graph_inl", 116b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_generate_operations_intrinsic_inst_inl", 117b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_get_intrinsics_inl", 118b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_get_intrinsics_names_inl", 119b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsic_codegen_test_inl", 120b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsic_flags_test_inl", 121b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_codegen_inl", 122b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_codegen_inl_h", 123b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_enum_inl", 124b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_flags_inl", 125b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_ir_build_inl", 126b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_IR-instructions_md", 127b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_arch_info_gen_h", 128b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_codegen_arm64_gen_inc", 129b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_inst_checker_gen_h", 130b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_opcodes_h", 131b1994897Sopenharmony_ci ":source_languages_h", 132b1994897Sopenharmony_ci "$ark_root/libpandabase:libarkbase", 133b1994897Sopenharmony_ci "$ark_root/libpandafile:isa_gen_libarkfile_bytecode_instruction-inl_gen_h", 134b1994897Sopenharmony_ci "$ark_root/libpandafile:isa_gen_libarkfile_bytecode_instruction_enum_gen_h", 135b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile", 136b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile_type_gen_h", 137b1994897Sopenharmony_ci ] 138b1994897Sopenharmony_ci 139b1994897Sopenharmony_ci external_deps = [ sdk_libc_secshared_dep ] 140b1994897Sopenharmony_ci 141b1994897Sopenharmony_ci include_dirs = [ "$ark_root/compiler/optimizer" ] 142b1994897Sopenharmony_ci 143b1994897Sopenharmony_ci output_extension = "so" 144b1994897Sopenharmony_ci relative_install_dir = "ark" 145b1994897Sopenharmony_ci part_name = "runtime_core" 146b1994897Sopenharmony_ci subsystem_name = "arkcompiler" 147b1994897Sopenharmony_ci} 148b1994897Sopenharmony_ci 149b1994897Sopenharmony_cilibarkcompiler_frontend_static_common_deps = [ 150b1994897Sopenharmony_ci ":codegen_language_extensions_h", 151b1994897Sopenharmony_ci ":compiler_events_gen_h", 152b1994897Sopenharmony_ci ":compiler_interface_extensions_inl_h", 153b1994897Sopenharmony_ci ":compiler_logger_components_inc", 154b1994897Sopenharmony_ci ":compiler_options_gen_h", 155b1994897Sopenharmony_ci ":cpu_features_gen_inc", 156b1994897Sopenharmony_ci ":intrinsics_codegen_ext_inl_h", 157b1994897Sopenharmony_ci ":intrinsics_inline_inl", 158b1994897Sopenharmony_ci ":intrinsics_ir_build_inl_h", 159b1994897Sopenharmony_ci ":intrinsics_ir_build_static_call_inl", 160b1994897Sopenharmony_ci ":intrinsics_ir_build_virtual_call_inl", 161b1994897Sopenharmony_ci ":intrinsics_stub_inl", 162b1994897Sopenharmony_ci ":intrinsics_stub_inl_h", 163b1994897Sopenharmony_ci ":ir_dyn_base_types_h", 164b1994897Sopenharmony_ci ":isa_gen_libarkcompiler_inst_builder_gen_cpp", 165b1994897Sopenharmony_ci ":libarkcompiler_ecma_intrinsics_enum_inl", 166b1994897Sopenharmony_ci ":libarkcompiler_generate_ecma_inl", 167b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_generate_operations_intrinsic_graph_inl", 168b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_generate_operations_intrinsic_inst_inl", 169b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_get_intrinsics_inl", 170b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_get_intrinsics_names_inl", 171b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsic_codegen_test_inl", 172b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsic_flags_test_inl", 173b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_codegen_inl", 174b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_codegen_inl_h", 175b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_enum_inl", 176b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_flags_inl", 177b1994897Sopenharmony_ci ":libarkcompiler_intrinsics_gen_inl_intrinsics_ir_build_inl", 178b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_IR-instructions_md", 179b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_arch_info_gen_h", 180b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_codegen_arm64_gen_inc", 181b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_inst_checker_gen_h", 182b1994897Sopenharmony_ci ":libarkcompiler_opcodes_h_opcodes_h", 183b1994897Sopenharmony_ci ":source_languages_h", 184b1994897Sopenharmony_ci "$ark_root/libpandabase:libarkbase_frontend_static", 185b1994897Sopenharmony_ci "$ark_root/libpandafile:isa_gen_libarkfile_bytecode_instruction-inl_gen_h", 186b1994897Sopenharmony_ci "$ark_root/libpandafile:isa_gen_libarkfile_bytecode_instruction_enum_gen_h", 187b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile_frontend_static", 188b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile_type_gen_h", 189b1994897Sopenharmony_ci] 190b1994897Sopenharmony_ci 191b1994897Sopenharmony_ciohos_static_library("libarkcompiler_frontend_static") { 192b1994897Sopenharmony_ci stack_protector_ret = false 193b1994897Sopenharmony_ci sources = libarkcompiler_sources 194b1994897Sopenharmony_ci 195b1994897Sopenharmony_ci configs = libarkcompiler_configs 196b1994897Sopenharmony_ci 197b1994897Sopenharmony_ci deps = libarkcompiler_frontend_static_common_deps 198b1994897Sopenharmony_ci 199b1994897Sopenharmony_ci if (is_arkui_x) { 200b1994897Sopenharmony_ci deps += [ "$ark_third_party_root/bounds_checking_function:libsec_static" ] 201b1994897Sopenharmony_ci } else { 202b1994897Sopenharmony_ci external_deps = [ sdk_libc_secshared_dep ] 203b1994897Sopenharmony_ci } 204b1994897Sopenharmony_ci 205b1994897Sopenharmony_ci include_dirs = [ "$ark_root/compiler/optimizer" ] 206b1994897Sopenharmony_ci 207b1994897Sopenharmony_ci part_name = "runtime_core" 208b1994897Sopenharmony_ci subsystem_name = "arkcompiler" 209b1994897Sopenharmony_ci} 210b1994897Sopenharmony_ci 211b1994897Sopenharmony_ciohos_static_library( 212b1994897Sopenharmony_ci "libarkcompiler_frontend_static_for_libark_defect_scan_aux") { 213b1994897Sopenharmony_ci stack_protector_ret = false 214b1994897Sopenharmony_ci sources = libarkcompiler_sources 215b1994897Sopenharmony_ci 216b1994897Sopenharmony_ci configs = libarkcompiler_configs 217b1994897Sopenharmony_ci 218b1994897Sopenharmony_ci defines = [ "IR_FOR_LIBARK_DEFECT_SCAN_AUX" ] 219b1994897Sopenharmony_ci 220b1994897Sopenharmony_ci deps = libarkcompiler_frontend_static_common_deps 221b1994897Sopenharmony_ci 222b1994897Sopenharmony_ci if (is_arkui_x) { 223b1994897Sopenharmony_ci deps += [ "$ark_third_party_root/bounds_checking_function:libsec_static" ] 224b1994897Sopenharmony_ci } else { 225b1994897Sopenharmony_ci external_deps = [ sdk_libc_secshared_dep ] 226b1994897Sopenharmony_ci } 227b1994897Sopenharmony_ci 228b1994897Sopenharmony_ci include_dirs = [ "$ark_root/compiler/optimizer" ] 229b1994897Sopenharmony_ci 230b1994897Sopenharmony_ci part_name = "runtime_core" 231b1994897Sopenharmony_ci subsystem_name = "arkcompiler" 232b1994897Sopenharmony_ci} 233b1994897Sopenharmony_ci 234b1994897Sopenharmony_ciark_isa_gen("isa_gen_libarkcompiler") { 235b1994897Sopenharmony_ci template_files = [ "inst_builder_gen.cpp.erb" ] 236b1994897Sopenharmony_ci sources = "optimizer/templates" 237b1994897Sopenharmony_ci destination = "$target_gen_dir/generated" 238b1994897Sopenharmony_ci} 239b1994897Sopenharmony_ci 240b1994897Sopenharmony_ciark_gen("libarkcompiler_intrinsics_gen_inl") { 241b1994897Sopenharmony_ci data = "intrinsics.yaml" 242b1994897Sopenharmony_ci template_files = [ 243b1994897Sopenharmony_ci "intrinsics_enum.inl.erb", 244b1994897Sopenharmony_ci "get_intrinsics.inl.erb", 245b1994897Sopenharmony_ci "entrypoints_bridge_asm_macro.inl.erb", 246b1994897Sopenharmony_ci "intrinsics_ir_build.inl.erb", 247b1994897Sopenharmony_ci "get_intrinsics_names.inl.erb", 248b1994897Sopenharmony_ci "generate_operations_intrinsic_inst.inl.erb", 249b1994897Sopenharmony_ci "generate_operations_intrinsic_graph.inl.erb", 250b1994897Sopenharmony_ci "intrinsic_codegen_test.inl.erb", 251b1994897Sopenharmony_ci "intrinsic_flags_test.inl.erb", 252b1994897Sopenharmony_ci "intrinsics_codegen.inl.h.erb", 253b1994897Sopenharmony_ci "intrinsics_codegen.inl.erb", 254b1994897Sopenharmony_ci "intrinsics_flags.inl.erb", 255b1994897Sopenharmony_ci ] 256b1994897Sopenharmony_ci sources = "optimizer/templates/intrinsics" 257b1994897Sopenharmony_ci destination = "$target_gen_dir/generated" 258b1994897Sopenharmony_ci requires = [ 259b1994897Sopenharmony_ci "$ark_root/compiler/optimizer/templates/intrinsics/compiler_intrinsics.rb", 260b1994897Sopenharmony_ci ] 261b1994897Sopenharmony_ci} 262b1994897Sopenharmony_ci 263b1994897Sopenharmony_ciark_isa_gen("libarkcompiler") { 264b1994897Sopenharmony_ci template_files = [ 265b1994897Sopenharmony_ci "generate_ecma.inl.erb", 266b1994897Sopenharmony_ci "ecma_intrinsics_enum.inl.erb", 267b1994897Sopenharmony_ci ] 268b1994897Sopenharmony_ci sources = "optimizer/templates" 269b1994897Sopenharmony_ci requires = [ "$ark_root//assembler/asm_isapi.rb" ] 270b1994897Sopenharmony_ci destination = "$target_gen_dir/generated" 271b1994897Sopenharmony_ci} 272b1994897Sopenharmony_ci 273b1994897Sopenharmony_ciark_gen("libarkcompiler_opcodes_h") { 274b1994897Sopenharmony_ci data = "$ark_root/compiler/optimizer/ir/instructions.yaml" 275b1994897Sopenharmony_ci template_files = [ 276b1994897Sopenharmony_ci "opcodes.h.erb", 277b1994897Sopenharmony_ci "arch_info_gen.h.erb", 278b1994897Sopenharmony_ci "inst_checker_gen.h.erb", 279b1994897Sopenharmony_ci "IR-instructions.md.erb", 280b1994897Sopenharmony_ci "codegen_arm64_gen.inc.erb", 281b1994897Sopenharmony_ci ] 282b1994897Sopenharmony_ci sources = "optimizer/templates" 283b1994897Sopenharmony_ci destination = "$target_gen_dir/generated" 284b1994897Sopenharmony_ci requires = [ "$ark_root/compiler/optimizer/templates/instructions.rb" ] 285b1994897Sopenharmony_ci} 286b1994897Sopenharmony_ci 287b1994897Sopenharmony_ciark_gen_file("compiler_options_gen_h") { 288b1994897Sopenharmony_ci template_file = "$ark_root/templates/options/options.h.erb" 289b1994897Sopenharmony_ci data_file = "compiler.yaml" 290b1994897Sopenharmony_ci requires = [ "$ark_root/templates/common.rb" ] 291b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/compiler_options_gen.h" 292b1994897Sopenharmony_ci} 293b1994897Sopenharmony_ci 294b1994897Sopenharmony_ciark_gen_file("cpu_features_gen_inc") { 295b1994897Sopenharmony_ci template_file = "$ark_root/templates/cpu_features.inc.erb" 296b1994897Sopenharmony_ci data_file = "compiler.yaml" 297b1994897Sopenharmony_ci requires = [ "$ark_root/templates/common.rb" ] 298b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/cpu_features.inc" 299b1994897Sopenharmony_ci} 300b1994897Sopenharmony_ci 301b1994897Sopenharmony_ciark_gen_file("compiler_events_gen_h") { 302b1994897Sopenharmony_ci template_file = "$ark_root/templates/events/events.h.erb" 303b1994897Sopenharmony_ci data_file = "compiler.yaml" 304b1994897Sopenharmony_ci requires = [ "$ark_root/templates/common.rb" ] 305b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/compiler_events_gen.h" 306b1994897Sopenharmony_ci} 307b1994897Sopenharmony_ci 308b1994897Sopenharmony_ciark_gen_file("compiler_logger_components_inc") { 309b1994897Sopenharmony_ci template_file = 310b1994897Sopenharmony_ci "$ark_root/templates/logger_components/logger_components.inc.erb" 311b1994897Sopenharmony_ci data_file = "compiler.yaml" 312b1994897Sopenharmony_ci requires = [ "$ark_root/templates/common.rb" ] 313b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/compiler_logger_components.inc" 314b1994897Sopenharmony_ci} 315b1994897Sopenharmony_ciark_gen_file("intrinsics_stub_inl") { 316b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 317b1994897Sopenharmony_ci template_file = "optimizer/templates/intrinsics/intrinsics_stub.inl.erb" 318b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 319b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 320b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/intrinsics_stub.inl" 321b1994897Sopenharmony_ci} 322b1994897Sopenharmony_ciark_gen_file("intrinsics_stub_inl_h") { 323b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 324b1994897Sopenharmony_ci template_file = "optimizer/templates/intrinsics/intrinsics_stub.inl.h.erb" 325b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 326b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 327b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/intrinsics_stub.inl.h" 328b1994897Sopenharmony_ci} 329b1994897Sopenharmony_ciark_gen_file("intrinsics_codegen_ext_inl_h") { 330b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 331b1994897Sopenharmony_ci template_file = 332b1994897Sopenharmony_ci "optimizer/templates/intrinsics/intrinsics_codegen_ext.inl.h.erb" 333b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 334b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 335b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/intrinsics_codegen_ext.inl.h" 336b1994897Sopenharmony_ci} 337b1994897Sopenharmony_ciark_gen_file("intrinsics_inline_inl") { 338b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 339b1994897Sopenharmony_ci template_file = "optimizer/templates/intrinsics/intrinsics_inline.inl.erb" 340b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 341b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 342b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/intrinsics_inline.inl" 343b1994897Sopenharmony_ci} 344b1994897Sopenharmony_ciark_gen_file("intrinsics_ir_build_inl_h") { 345b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 346b1994897Sopenharmony_ci template_file = "optimizer/templates/intrinsics/intrinsics_ir_build.inl.h.erb" 347b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 348b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 349b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/intrinsics_ir_build.inl.h" 350b1994897Sopenharmony_ci} 351b1994897Sopenharmony_ciark_gen_file("intrinsics_ir_build_static_call_inl") { 352b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 353b1994897Sopenharmony_ci template_file = 354b1994897Sopenharmony_ci "optimizer/templates/intrinsics/intrinsics_ir_build_static_call.inl.erb" 355b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 356b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 357b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/intrinsics_ir_build_static_call.inl" 358b1994897Sopenharmony_ci} 359b1994897Sopenharmony_ciark_gen_file("intrinsics_ir_build_virtual_call_inl") { 360b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 361b1994897Sopenharmony_ci template_file = 362b1994897Sopenharmony_ci "optimizer/templates/intrinsics/intrinsics_ir_build_virtual_call.inl.erb" 363b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 364b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 365b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/intrinsics_ir_build_virtual_call.inl" 366b1994897Sopenharmony_ci} 367b1994897Sopenharmony_ci 368b1994897Sopenharmony_ciark_gen_file("ir_dyn_base_types_h") { 369b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 370b1994897Sopenharmony_ci template_file = "optimizer/templates/ir-dyn-base-types.h.erb" 371b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 372b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 373b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/ir-dyn-base-types.h" 374b1994897Sopenharmony_ci} 375b1994897Sopenharmony_ci 376b1994897Sopenharmony_ciark_gen_file("source_languages_h") { 377b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 378b1994897Sopenharmony_ci template_file = "optimizer/templates/source_languages.h.erb" 379b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 380b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 381b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/source_languages.h" 382b1994897Sopenharmony_ci} 383b1994897Sopenharmony_ci 384b1994897Sopenharmony_ciark_gen_file("codegen_language_extensions_h") { 385b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 386b1994897Sopenharmony_ci template_file = "optimizer/templates/codegen_language_extensions.h.erb" 387b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 388b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 389b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/codegen_language_extensions.h" 390b1994897Sopenharmony_ci} 391b1994897Sopenharmony_ci 392b1994897Sopenharmony_ciark_gen_file("compiler_interface_extensions_inl_h") { 393b1994897Sopenharmony_ci extra_dependencies = [ "$ark_root:concat_plugins_yamls" ] 394b1994897Sopenharmony_ci template_file = "optimizer/templates/compiler_interface_extensions.inl.h.erb" 395b1994897Sopenharmony_ci data_file = "$target_gen_dir/../plugin_options.yaml" 396b1994897Sopenharmony_ci requires = [ "$ark_root/templates/plugin_options.rb" ] 397b1994897Sopenharmony_ci output_file = "$target_gen_dir/generated/compiler_interface_extensions.inl.h" 398b1994897Sopenharmony_ci} 399