• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2025 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6# http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14  - ETS:
15      bytecodeopt:
16        codegen_intrinsics_inc: plugins/ets/bytecode_optimizer/visitors/ets_codegen_intrinsics.inc
17        codegen_visitors_inc: plugins/ets/bytecode_optimizer/visitors/codegen_visitors.inc
18        reg_encoder_visitors_inc: plugins/ets/bytecode_optimizer/visitors/reg_encoder_visitors.inc
19      lang_enum_id: 5
20      lang_context_class: ark::ets::EtsLanguageContext
21      lang_context_header_path: plugins/ets/runtime/ets_language_context.h
22      additional_interpter_inl: plugins/ets/runtime/interpreter/interpreter-inl.h
23      language_config:
24        lang_type: static
25        mt_mode: task
26        has_value_object_types: false
27      ctor_name: <ctor>
28      cctor_name: <cctor>
29
30      directive_name: eTS
31      string_class_descriptor: Lstd/core/String;
32
33      Intrinsics:
34        header: plugins/ets/runtime/intrinsics_declaration.h
35        inlining_expansion_inl_h: plugins/ets/compiler/intrinsics_inlining_expansion_ets.inl.h
36        inlining_expansion_switch_case_inl: plugins/ets/compiler/intrinsics_inlining_expansion_switch_case_ets.inl
37        ir_build_static_call_inl: plugins/ets/compiler/intrinsics_ir_build_static_call_ets.inl
38        ir_build_virtual_call_inl: plugins/ets/compiler/intrinsics_ir_build_virtual_call_ets.inl
39        ir_build_inl_h: plugins/ets/compiler/intrinsics_ir_build_ets.inl.h
40        intrinsics_peephole_inl_h: plugins/ets/compiler/intrinsics_peephole_ets.inl.h
41
42      Tests:
43        inst_generator_test: plugins/ets/tests/compiler/inst_generator_test_ext.inc
44
45      Disasm:
46        language_interface_path: plugins/ets/disassembler/disasm_ets_plugin.inc
47
48      Abc2Prog:
49        language_interface_path: plugins/ets/abc2program/abc2program_ets_plugin.h
50
51      logger:
52        components:
53          - name: ani
54          - name: ets
55          - name: ets_napi
56          - name: ets_interop_js
57
58      Verification:
59        header: plugins/ets/verification/ets_plugin.h
60        plugin_class: ark::verifier::plugin::EtsPlugin
61
62      irtoc_files:
63        - plugins_interpreter_handlers: plugins/ets/irtoc_scripts/interpreter_handlers.irt
64        - plugins_main_loop: plugins/ets/irtoc_scripts/interpreter_main_loop.irt
65        - plugins_string_builder: plugins/ets/irtoc_scripts/string_builder.irt
66        - plugins_string: plugins/ets/irtoc_scripts/string.irt
67        - plugins_to_string_cache: plugins/ets/irtoc_scripts/to_string_cache.irt
68        - plugins_typed_arrays: plugins/ets/irtoc_scripts/typed_arrays.irt
69
70      Metadatas:
71        - RecordMetadata:
72            new_class_name: ark::pandasm::extensions::ets::RecordMetadata
73            header_path: plugins/ets/assembler/extension/ets_meta.h
74        - FieldMetadata:
75            new_class_name: ark::pandasm::extensions::ets::FieldMetadata
76            header_path: plugins/ets/assembler/extension/ets_meta.h
77        - FunctionMetadata:
78            new_class_name: ark::pandasm::extensions::ets::FunctionMetadata
79            header_path: plugins/ets/assembler/extension/ets_meta.h
80        - ParamMetadata:
81            new_class_name: ark::pandasm::extensions::ets::ParamMetadata
82            header_path: plugins/ets/assembler/extension/ets_meta.h
83      compiler_extensions:
84        header_path_compiler_inst_builder_extension: plugins/ets/compiler/optimizer/ir_builder/ets_inst_builder.h
85        header_path_compiler_interface_extension: plugins/ets/compiler/ets_compiler_interface.h
86        header_path_implementation_codegen: plugins/ets/compiler/optimizer/ets_codegen_extensions.h
87        load_immediate_codegen: LoadImmediateCodegen
88        get_native_method_codegen: EtsGetNativeMethod
89        get_native_method_managed_class_codegen: EtsGetNativeMethodManagedClass
90        get_method_native_pointer_codegen: EtsGetMethodNativePointer
91        get_native_api_env_codegen: EtsGetNativeApiEnv
92        begin_native_method_codegen: EtsBeginNativeMethod
93        end_native_method_prim_codegen: EtsEndNativeMethodPrim
94        end_native_method_obj_codegen: EtsEndNativeMethodObj
95        check_native_exception_codegen: EtsCheckNativeException
96        wrap_object_native_codegen: EtsWrapObjectNative
97        resolve_call_by_name: ResolveCallByNameCodegen
98        pipeline_includes: plugins/ets/compiler/optimizer/ets_pipeline_includes.inl.h
99        optimizations_after_unroll: plugins/ets/compiler/optimizer/ets_optimizations_after_unroll.inl
100      runtime_defines:
101        defines_header_path: plugins/ets/runtime/asm_defines/defines.h
102        asm_defines_def: plugins/ets/runtime/asm_defines/asm_defines.def
103      llvmbackend_extensions:
104        - emit_intrinsic: plugins/ets/libllvmbackend/ets_emit_intrinsic_llvm_ir_constructor_gen.inl
105        - get_intrinsic_id_inc: plugins/ets/libllvmbackend/ets_get_intrinsic_id_llvm_ark_interface_gen.inl
106        - get_intrinsic_id_func: GetEtsIntrinsicId
107        - llvm_ir_constructor: plugins/ets/libllvmbackend/ets_llvm_ir_constructor_gen.inl
108        - llvm_ir_constructor_h: plugins/ets/libllvmbackend/ets_llvm_ir_constructor_h_gen.inl
109