• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021 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
14group("ark_aot_js_test") {
15  testonly = true
16  test_list = [
17    "asyncfunctionenter",
18    "bigint_typed_array_constructors",
19    "call_default_args",
20    "constructor_returns_non_object",
21    "tryldglobalbyname",
22    "dynamicimport",
23    "emptyif",
24    "formatrangetoparts",
25    "module",
26    "undefined",
27    "cjs",
28    "for_await_of",
29    "dead_code_elimination",
30    "equal",
31    "js_string_equal",
32    "js_string_add",
33    "regressioncase",
34  ]
35
36  deps = []
37  foreach(test, test_list) {
38    deps += [ "${test}:${test}AotAction" ]
39    if (!is_debug) {
40      deps += [ "${test}:${test}AotContextAction" ]
41    }
42  }
43}
44
45group("ark_aot_ts_test") {
46  testonly = true
47  test_list = [
48    "add",
49    "and",
50    "array",
51    "array_bounds_check_elimination",
52    "array_foreach_inline",
53    "ashr",
54    "asyncgenerator",
55    "asyncgeneratormultiloop",
56    "asyncgeneratorrest",
57    "async_context",
58    "async_env",
59    "await",
60    "await_loop",
61    "bc_builder",
62    "bind",
63    "binaryop_special_value",
64    "builtinmath",
65    "call_same_bytecode_func",
66    "callithisrange",
67    "calls",
68    "classstatic",
69    "class_method_signature",
70    "closeiterator",
71    "compiler_test",
72    "constpool",
73    "continue_from_finally",
74    "copyrestargs",
75    "createarray_meta_data",
76    "createarrayimm16",
77    "createarraywithbuffer",
78    "createemptyarray",
79    "createemptyobject",
80    "creategeneratorobj",
81    "createiterresultobj",
82    "createobjecthavingmethod",
83    "createobjectwithbuffer",
84    "createobjectwithexcludedkeys",
85    "createregexpwithliteral",
86    "dec",
87    "default_supers",
88    "defineasyncfunc",
89    "defineclasswithbuffer",
90    "defineclass",
91    "definefunc",
92    "definefunc_variable_args",
93    "definegeneratorfunc",
94    "definegettersetterbyvalue",
95    "definemethod",
96    "definencfunc",
97    "delobjprop",
98    "deopt",
99    "deopt_clear_aotflags",
100    "destructuring",
101    "div",
102    "duplicatefunctions",
103    "duplicatekey",
104    "elements_kind",
105    "equal_nan",
106    "exception_case1",
107    "exception_case10",
108    "exception_case11",
109    "exception_case12",
110    "exception_case13",
111    "exception_case2",
112    "exception_case3",
113    "exception_case4",
114    "exception_case5",
115    "exception_case6",
116    "exception_case7",
117    "exception_case8",
118    "exception_case9",
119    "exp",
120    "extends_builtins",
121    "fast_call_builtins",
122    "frame_states",
123    "forin_delete_property",
124    "forin_dictionary_mode",
125    "forin_empty_prototype",
126    "forin_enum_cache",
127    "forin_non_empty_prototype",
128    "forin_special_object",
129    "forloop",
130    "framestatesalloc",
131    "framestatesasync",
132    "framestatesphi",
133    "generatormerge",
134    "generatorcontinuefinally",
135    "getiterator",
136    "getiteratornext",
137    "getnextpropname",
138    "getpropiterator",
139    "getresumemode",
140    "gettemplateobject",
141    "getunmappedargs",
142    "global_this_ts",
143    "generic_instance_type_literal",
144    "helloaot",
145    "helloconcurrent",
146    "ic",
147    "inc",
148    "inline",
149    "instanceof",
150    "isfalse",
151    "isin",
152    "isomorphism",
153    "istrue",
154    "jsonstringify",
155    "large_func",
156    "large_func_acc",
157    "ldbigint",
158    "ldconst",
159    "ldfunctionpref",
160    "ldglobalvar",
161    "ldobjbyname",
162    "ldobjbyname_typed_path",
163    "ldobjbyvalue",
164    "ldstlexvar",
165    "ldsuperbyname",
166    "lexenv_specialization",
167    "lexenv_specialization",
168    "lexenv_specialization_noopt",
169    "load_local_module_var",
170    "logic_op",
171    "loop_hoist",
172    "loop_peeling",
173    "loop_phi",
174    "loop_with_variable_exchange",
175    "loops",
176    "map",
177    "mod",
178    "modules",
179    "mul",
180    "multi_module_compilation",
181    "neg",
182    "new",
183    "newlexenv",
184    "newobjrange",
185    "newobjspread",
186    "not",
187    "not_equal",
188    "numberspeculativeretype",
189    "operations_stub_test",
190    "optimization",
191    "optimized_call",
192    "or",
193    "ordinaryhasinstance",
194    "pgo_call",
195    "pgo_call_js",
196    "pgo_class_operation",
197    "pgo_class_prototype",
198    "pgo_constructor_number",
199    "pgo_forof_array",
200    "pgo_forof_map",
201    "pgo_forof_set",
202    "pgo_forof_string",
203    "pgo_forof_typed_array",
204    "pgo_function_operation",
205    "pgo_function_prototype",
206    "pgo_ldobjbyvalue_array",
207    "pgo_ldobjbyvalue_string",
208    "pgo_length",
209    "pgo_objectliteral_operation",
210    "pgo_call_deopt",
211    "pgo_call_deopt_js",
212    "pgo_call_recursive_js",
213    "pgo_on_heap",
214    "pgo_track_type",
215    "poplexenv",
216    "proxy",
217    "resumegenerator",
218    "rodata",
219    "setobjectwithproto",
220    "set",
221    "shl",
222    "shr",
223    "specialloops",
224    "starrayspread",
225    "statesplit",
226    "stclasstoglobalrecord",
227    "stconsttoglobalrecord",
228    "stglobalvar",
229    "stlettoglobalrecord",
230    "stobjbyindex",
231    "stobjbyname",
232    "stobjbyvalue",
233    "stownbyindex",
234    "stownbyname",
235    "stownbynamewithnameset",
236    "stownbyvalue",
237    "stownbyvaluewithnameset",
238    "strictequal",
239    "strictnotequal",
240    "string",
241    "string_add",
242    "string_equal",
243    "stsuperbyname",
244    "sub",
245    "supercall",
246    "supercallspread",
247    "suspendgenerator",
248    "suspendgeneratorbranch",
249
250    "suspendgeneratorfor",
251    "suspendgeneratorphi",
252    "suspendgeneratorreturn",
253    "suspendgeneratorthrow",
254    "throw",
255    "throwifsupernotcorrectcall",
256    "throwundefindeifhole",
257    "tonumber",
258    "tonumeric",
259    "try",
260    "try_catch_finally",
261    "tryldglobalbyname_global_object",
262    "tryldglobalbyname_global_record",
263    "trystglobalbynameprefid32",
264    "ts_hclass_generator",
265    "ts_inline",
266    "ts_inline_accessor",
267    "ts_inline_accessor_deopt",
268    "ts_inline_accessor_extends",
269    "ts_inline_accessor_same_name",
270    "ts_inline_change_target",
271    "ts_inline_deopt",
272    "ts_inline_deopt_loop",
273    "ts_inline_exception1",
274    "ts_inline_exception2",
275    "ts_inline_exception3",
276    "ts_inline_exception4",
277    "ts_inline_exception5",
278    "ts_inline_exception6",
279    "ts_inline_exception7",
280    "ts_inline_exception8",
281    "ts_inline_extends",
282    "ts_inline_loop",
283    "ts_inline_max_call",
284    "ts_multi_inline",
285    "ts_multi_inline_deopt",
286    "ts_multi_inline_max_call",
287    "ts_multi_inline_recursive",
288    "typedarray",
289    "typedarray_load_store",
290    "typedarrayfill",
291    "typeof",
292    "unaryop_special_value",
293    "xor",
294    "sharedcheck",
295    "definesendableclass",
296    "sendablecontext",
297  ]
298
299  deps = []
300  foreach(test, test_list) {
301    deps += [ "${test}:${test}AotAction" ]
302    if (!is_debug) {
303      deps += [ "${test}:${test}AotContextAction" ]
304    }
305  }
306
307  if (is_debug) {
308    debug_test_list = [
309      # builtins_stub test only print log in debug mode
310      "builtins_array",
311      "builtins_stub",
312    ]
313    foreach(test, debug_test_list) {
314      deps += [ "${test}:${test}AotAction" ]
315    }
316  }
317}
318
319group("ark_aot_test") {
320  testonly = true
321  deps = [
322    ":ark_aot_js_test",
323    ":ark_aot_ts_test",
324    "analyze_property:analyze_property_test",
325    "aot_compatibility_test:aot_compatibility_test",
326    "aot_multi_constantpool_test:aot_multi_constantpool_test",
327    "aot_type_test:aot_type_test",
328    "object:object_test",
329    "vtable:vtable_test",
330  ]
331
332  if (is_mac) {
333    deps -= [
334      ":ark_aot_js_test",
335      ":ark_aot_ts_test",
336      "aot_type_test:aot_type_test",
337    ]
338  }
339}
340