• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# source binary: out/rk3568/clang_x64/obj/arkcompiler/runtime_core/abc2program/tests/HelloWorldDebug.abc
2
3.language ECMAScript
4
5# ====================
6# LITERALS
7
8_ESModuleRecord_3278 { 21 [ i32:4, string:"./a", string:"./b", string:"./d", string:"./e", i32:1, string:"a", string:"a", method_affiliate:0, i32:1, string:"b", method_affiliate:1, i32:1, string:"c", string:"c", i32:1, string:"e", string:"e", method_affiliate:3, i32:1, method_affiliate:2, ]}
9
10_ESScopeNamesRecord_3254 { 8 [ tag_value:5, string:"HelloWorld", tag_value:5, string:"Lit", tag_value:5, string:"NestedLiteralArray", tag_value:5, string:"hoo", ]}
11
12_GLOBAL_3358 { 6 [ tag_value:5, string:"method", tag_value:22, async_generator_method:.#*@3*#method, tag_value:9, method_affiliate:0, ]}
13
14_GLOBAL_3375 { 2 [ tag_value:2, i32:0, ]}
15
16_GLOBAL_3384 { 8 [ tag_value:5, string:"lit", tag_value:6, method:.#~@1>#lit, tag_value:9, method_affiliate:0, tag_value:2, i32:1, ]}
17
18_GLOBAL_3406 { 6 [ tag_value:5, string:"num", tag_value:2, i32:1, tag_value:2, i32:1, ]}
19
20_GLOBAL_3425 { 10 [ tag_value:5, string:"NestedLiteralArray", tag_value:6, method:.#~@2>#NestedLiteralArray, tag_value:9, method_affiliate:0, tag_value:2, i32:1, tag_value:24, literal_array:_GLOBAL_3406, ]}
21
22_GLOBAL_3452 { 10 [ tag_value:2, i32:2, tag_value:5, string:"4newTarget", tag_value:2, i32:0, tag_value:5, string:"this", tag_value:2, i32:1, ]}
23
24
25
26# ====================
27# RECORDS
28
29.record _ESModuleRecord {
30	u32 arkcompiler/runtime_core/abc2program/tests/ts/HelloWorld.ts _ESModuleRecord_3278
31}
32.record.source_file
33
34.record _ESScopeNamesRecord {
35	u32 arkcompiler/runtime_core/abc2program/tests/ts/HelloWorld.ts _ESScopeNamesRecord_3254
36}
37.record.source_file
38
39.record _ESSlotNumberAnnotation {
40}
41.record.source_file
42
43.record _GLOBAL {
44}
45.record.source_file
46
47
48# ====================
49# METHODS
50
51.function_kind FunctionKind::NC_FUNCTION
52 _ESSlotNumberAnnotation
53 SlotNumber 1
54.function any .#*#add(any a0, any a1, any a2, any a3, any a4) {
55	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
56	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
57	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
58	mov v3, a3                               # line: 18446744073709551615           # column: 4294967295
59	mov v4, a4                               # line: 18446744073709551615           # column: 4294967295
60	lda v3                                   # line: 75           # column: 44
61	sta v6                                   # line: 75           # column: 48
62	lda v4                                   # line: 75           # column: 48
63	add2 0x0, v6                             # line: 75           # column: 48
64	return                                   # line: 75           # column: 49
65
66# LOCAL_VARIABLE_TABLE:
67#	 Start   Length  Register           Name   Signature
68	    5        5         0       4funcObj         any
69	    5        5         1     0newTarget         any
70	    5        5         2          0this         any
71	    5        5         3              a         any
72	    5        5         4              b         any
73}
74
75.function_kind FunctionKind::ASYNC_NC_FUNCTION
76 _ESSlotNumberAnnotation
77 SlotNumber 0
78.function any .#*#asyncArrowFunc(any a0, any a1, any a2) {
79	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
80	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
81	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
82	asyncfunctionenter                       # line: 18446744073709551615           # column: 4294967295
83	sta v3                                   # line: 18446744073709551615           # column: 4294967295
84	label@5: ldundefined                     # line: 18446744073709551615           # column: 4294967295
85	asyncfunctionresolve v3                  # line: 18446744073709551615           # column: 4294967295
86	return                                   # line: 86           # column: 52
87	label@8: sta v4                          # line: 86           # column: 23
88	asyncfunctionreject v3                   # line: 86           # column: 23
89	return                                   # line: 86           # column: 52
90	label@11:                                # line: 86           # column: 52
91.catchall :
92	try_begin_label : label@5
93	try_end_label : label@8
94	catch_begin_label : label@8
95	catch_end_label : label@11
96
97# LOCAL_VARIABLE_TABLE:
98#	 Start   Length  Register           Name   Signature
99	    3        8         0       4funcObj         any
100	    3        8         1     0newTarget         any
101	    3        8         2          0this         any
102}
103
104.function_kind FunctionKind::ASYNC_GENERATOR_FUNCTION
105 _ESSlotNumberAnnotation
106 SlotNumber 4
107.function any .#*#asyncGenerateFunc(any a0, any a1, any a2) {
108	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
109	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
110	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
111	createasyncgeneratorobj v0               # line: 18446744073709551615           # column: 4294967295
112	sta v3                                   # line: 18446744073709551615           # column: 4294967295
113	label@5: ldundefined                     # line: 18446744073709551615           # column: 4294967295
114	suspendgenerator v3                      # line: 18446744073709551615           # column: 4294967295
115	lda v3                                   # line: 18446744073709551615           # column: 4294967295
116	resumegenerator                          # line: 18446744073709551615           # column: 4294967295
117	sta v5                                   # line: 18446744073709551615           # column: 4294967295
118	lda v3                                   # line: 18446744073709551615           # column: 4294967295
119	getresumemode                            # line: 18446744073709551615           # column: 4294967295
120	sta v4                                   # line: 18446744073709551615           # column: 4294967295
121	lda.str hello                            # line: 83           # column: 8
122	asyncfunctionawaituncaught v3            # line: 83           # column: 2
123	suspendgenerator v3                      # line: 83           # column: 2
124	lda v3                                   # line: 83           # column: 2
125	resumegenerator                          # line: 83           # column: 2
126	sta v8                                   # line: 83           # column: 2
127	lda v3                                   # line: 83           # column: 2
128	getresumemode                            # line: 83           # column: 2
129	sta v7                                   # line: 83           # column: 2
130	ldai 0x1                                 # line: 83           # column: 2
131	eq 0x0, v7                               # line: 83           # column: 2
132	jeqz label@27                            # line: 83           # column: 2
133	lda v8                                   # line: 83           # column: 2
134	throw                                    # line: 83           # column: 2
135	label@27: lda v8                         # line: 83           # column: 2
136	sta v4                                   # line: 83           # column: 2
137	lda v3                                   # line: 83           # column: 2
138	setgeneratorstate 0x2                    # line: 83           # column: 2
139	ldfalse                                  # line: 83           # column: 2
140	sta v7                                   # line: 83           # column: 2
141	asyncgeneratorresolve v3, v4, v7         # line: 83           # column: 2
142	lda v3                                   # line: 83           # column: 2
143	resumegenerator                          # line: 83           # column: 2
144	sta v6                                   # line: 83           # column: 2
145	lda v3                                   # line: 83           # column: 2
146	getresumemode                            # line: 83           # column: 2
147	sta v5                                   # line: 83           # column: 2
148	ldai 0x0                                 # line: 83           # column: 2
149	eq 0x1, v5                               # line: 83           # column: 2
150	jeqz label@65                            # line: 83           # column: 2
151	lda v6                                   # line: 83           # column: 2
152	asyncfunctionawaituncaught v3            # line: 83           # column: 2
153	suspendgenerator v3                      # line: 83           # column: 2
154	lda v3                                   # line: 83           # column: 2
155	resumegenerator                          # line: 83           # column: 2
156	sta v6                                   # line: 83           # column: 2
157	lda v3                                   # line: 83           # column: 2
158	getresumemode                            # line: 83           # column: 2
159	sta v5                                   # line: 83           # column: 2
160	ldai 0x1                                 # line: 83           # column: 2
161	eq 0x2, v5                               # line: 83           # column: 2
162	jeqz label@57                            # line: 83           # column: 2
163	lda v6                                   # line: 83           # column: 2
164	throw                                    # line: 83           # column: 2
165	label@57: lda v6                         # line: 83           # column: 2
166	sta v7                                   # line: 83           # column: 2
167	ldtrue                                   # line: 83           # column: 2
168	sta v8                                   # line: 83           # column: 2
169	lda v3                                   # line: 83           # column: 2
170	setgeneratorstate 0x4                    # line: 83           # column: 2
171	asyncgeneratorresolve v3, v7, v8         # line: 83           # column: 2
172	return                                   # line: 84           # column: 1
173	label@65: ldai 0x1                       # line: 83           # column: 2
174	eq 0x3, v5                               # line: 83           # column: 2
175	jeqz label@70                            # line: 83           # column: 2
176	lda v6                                   # line: 83           # column: 2
177	throw                                    # line: 83           # column: 2
178	label@70: lda v6                         # line: 83           # column: 2
179	ldundefined                              # line: 18446744073709551615           # column: 4294967295
180	sta v4                                   # line: 18446744073709551615           # column: 4294967295
181	ldtrue                                   # line: 18446744073709551615           # column: 4294967295
182	sta v5                                   # line: 18446744073709551615           # column: 4294967295
183	lda v3                                   # line: 18446744073709551615           # column: 4294967295
184	setgeneratorstate 0x4                    # line: 18446744073709551615           # column: 4294967295
185	asyncgeneratorresolve v3, v4, v5         # line: 18446744073709551615           # column: 4294967295
186	return                                   # line: 84           # column: 1
187	label@79: sta v4                         # line: 82           # column: 6
188	lda v3                                   # line: 82           # column: 6
189	setgeneratorstate 0x4                    # line: 82           # column: 6
190	lda v4                                   # line: 82           # column: 6
191	asyncgeneratorreject v3                  # line: 82           # column: 6
192	return                                   # line: 84           # column: 1
193	label@85:                                # line: 84           # column: 1
194.catchall :
195	try_begin_label : label@5
196	try_end_label : label@79
197	catch_begin_label : label@79
198	catch_end_label : label@85
199
200# LOCAL_VARIABLE_TABLE:
201#	 Start   Length  Register           Name   Signature
202	    3       82         0       4funcObj         any
203	    3       82         1     4newTarget         any
204	    3       82         2           this         any
205}
206
207.function_kind FunctionKind::FUNCTION
208 _ESSlotNumberAnnotation
209 SlotNumber 24
210.function any .#*#foo(any a0, any a1, any a2) {
211	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
212	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
213	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
214	ldundefined                              # line: 40           # column: 2
215	sta v4                                   # line: 40           # column: 2
216	label@5: ldai 0xb                        # line: 41           # column: 11
217	trystglobalbyname 0x0, varA              # line: 41           # column: 4
218	ldai 0x16                                # line: 42           # column: 8
219	trystglobalbyname 0x1, x                 # line: 42           # column: 4
220	label@9: ldai 0x1                        # line: 44           # column: 13
221	trystglobalbyname 0x2, varA              # line: 44           # column: 6
222	label@11: jmp label@21                   # line: 43           # column: 4
223	label@12: sta v5                         # line: 45           # column: 13
224	lda.str inner catch                      # line: 46           # column: 12
225	trystglobalbyname 0x3, msg               # line: 46           # column: 6
226	tryldglobalbyname 0x4, print             # line: 47           # column: 6
227	sta v6                                   # line: 47           # column: 6
228	tryldglobalbyname 0x5, msg               # line: 47           # column: 12
229	sta v7                                   # line: 47           # column: 12
230	lda v6                                   # line: 47           # column: 6
231	callarg1 0x6, v7                         # line: 47           # column: 6
232	label@21: tryldglobalbyname 0x8, varA    # line: 49           # column: 8
233	sta v5                                   # line: 49           # column: 8
234	lda.str                                  # line: 49           # column: 17
235	stricteq 0x9, v5                         # line: 49           # column: 8
236	jeqz label@28                            # line: 49           # column: 8
237	lda.str null                             # line: 50           # column: 12
238	throw                                    # line: 50           # column: 6
239	label@28: tryldglobalbyname 0xa, x       # line: 52           # column: 8
240	sta v5                                   # line: 52           # column: 8
241	ldai 0x64                                # line: 52           # column: 12
242	greater 0xb, v5                          # line: 52           # column: 8
243	jeqz label@36                            # line: 52           # column: 8
244	lda.str max                              # line: 53           # column: 12
245	throw                                    # line: 53           # column: 6
246	jmp label@38                             # line: 53           # column: 6
247	label@36: lda.str min                    # line: 55           # column: 12
248	throw                                    # line: 55           # column: 6
249	label@38: jmp label@48                   # line: 40           # column: 2
250	label@39: sta v5                         # line: 58           # column: 9
251	lda.str outter catch                     # line: 59           # column: 11
252	trystglobalbyname 0xc, masg              # line: 59           # column: 4
253	tryldglobalbyname 0xd, print             # line: 60           # column: 4
254	sta v6                                   # line: 60           # column: 4
255	tryldglobalbyname 0xe, msg               # line: 60           # column: 10
256	sta v7                                   # line: 60           # column: 10
257	lda v6                                   # line: 60           # column: 4
258	callarg1 0xf, v7                         # line: 60           # column: 4
259	label@48: ldhole                         # line: 40           # column: 2
260	sta v5                                   # line: 40           # column: 2
261	jmp label@52                             # line: 40           # column: 2
262	label@51: sta v5                         # line: 40           # column: 2
263	label@52: lda v4                         # line: 40           # column: 2
264	sta v6                                   # line: 40           # column: 2
265	ldundefined                              # line: 40           # column: 2
266	eq 0x11, v6                              # line: 40           # column: 2
267	jeqz label@66                            # line: 40           # column: 2
268	sta v4                                   # line: 40           # column: 2
269	lda.str error                            # line: 63           # column: 10
270	trystglobalbyname 0x12, msg              # line: 63           # column: 4
271	tryldglobalbyname 0x13, print            # line: 64           # column: 4
272	sta v6                                   # line: 64           # column: 4
273	tryldglobalbyname 0x14, msg              # line: 64           # column: 10
274	sta v7                                   # line: 64           # column: 10
275	lda v6                                   # line: 64           # column: 4
276	callarg1 0x15, v7                        # line: 64           # column: 4
277	label@66: lda v5                         # line: 40           # column: 2
278	sta v6                                   # line: 40           # column: 2
279	ldhole                                   # line: 40           # column: 2
280	sta v7                                   # line: 40           # column: 2
281	lda v6                                   # line: 40           # column: 2
282	noteq 0x17, v7                           # line: 40           # column: 2
283	jeqz label@75                            # line: 40           # column: 2
284	lda v6                                   # line: 40           # column: 2
285	throw                                    # line: 40           # column: 2
286	label@75: ldundefined                    # line: 18446744073709551615           # column: 4294967295
287	returnundefined                          # line: 66           # column: 1
288.catchall :
289	try_begin_label : label@9
290	try_end_label : label@11
291	catch_begin_label : label@12
292	catch_end_label : label@21
293.catchall :
294	try_begin_label : label@5
295	try_end_label : label@38
296	catch_begin_label : label@39
297	catch_end_label : label@48
298.catchall :
299	try_begin_label : label@5
300	try_end_label : label@48
301	catch_begin_label : label@51
302	catch_end_label : label@52
303
304# LOCAL_VARIABLE_TABLE:
305#	 Start   Length  Register           Name   Signature
306	    3       74         0       4funcObj         any
307	    3       74         1     4newTarget         any
308	    3       74         2           this         any
309	   39        9         5            err         any
310}
311
312.function_kind FunctionKind::GENERATOR_FUNCTION
313 _ESSlotNumberAnnotation
314 SlotNumber 4
315.function any .#*#generateFunc(any a0, any a1, any a2) {
316	label@0: mov v0, a0                      # line: 18446744073709551615           # column: 4294967295
317	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
318	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
319	creategeneratorobj v0                    # line: 18446744073709551615           # column: 4294967295
320	sta v3                                   # line: 18446744073709551615           # column: 4294967295
321	ldundefined                              # line: 18446744073709551615           # column: 4294967295
322	suspendgenerator v3                      # line: 18446744073709551615           # column: 4294967295
323	lda v3                                   # line: 18446744073709551615           # column: 4294967295
324	resumegenerator                          # line: 18446744073709551615           # column: 4294967295
325	sta v5                                   # line: 18446744073709551615           # column: 4294967295
326	lda v3                                   # line: 18446744073709551615           # column: 4294967295
327	getresumemode                            # line: 18446744073709551615           # column: 4294967295
328	sta v4                                   # line: 18446744073709551615           # column: 4294967295
329	ldai 0x0                                 # line: 18446744073709551615           # column: 4294967295
330	eq 0x0, v4                               # line: 18446744073709551615           # column: 4294967295
331	jeqz label@18                            # line: 18446744073709551615           # column: 4294967295
332	lda v5                                   # line: 18446744073709551615           # column: 4294967295
333	return                                   # line: 18446744073709551615           # column: 4294967295
334	label@18: ldai 0x1                       # line: 18446744073709551615           # column: 4294967295
335	eq 0x1, v4                               # line: 18446744073709551615           # column: 4294967295
336	jeqz label@23                            # line: 18446744073709551615           # column: 4294967295
337	lda v5                                   # line: 18446744073709551615           # column: 4294967295
338	throw                                    # line: 18446744073709551615           # column: 4294967295
339	label@23: lda v5                         # line: 18446744073709551615           # column: 4294967295
340	lda.str hello                            # line: 79           # column: 8
341	sta v6                                   # line: 79           # column: 2
342	ldfalse                                  # line: 79           # column: 2
343	sta v7                                   # line: 79           # column: 2
344	createiterresultobj v6, v7               # line: 79           # column: 2
345	suspendgenerator v3                      # line: 79           # column: 2
346	lda v3                                   # line: 79           # column: 2
347	resumegenerator                          # line: 79           # column: 2
348	sta v9                                   # line: 79           # column: 2
349	lda v3                                   # line: 79           # column: 2
350	getresumemode                            # line: 79           # column: 2
351	sta v8                                   # line: 79           # column: 2
352	ldai 0x0                                 # line: 79           # column: 2
353	eq 0x2, v8                               # line: 79           # column: 2
354	jeqz label@41                            # line: 79           # column: 2
355	lda v9                                   # line: 79           # column: 2
356	return                                   # line: 80           # column: 1
357	label@41: ldai 0x1                       # line: 79           # column: 2
358	eq 0x3, v8                               # line: 79           # column: 2
359	jeqz label@46                            # line: 79           # column: 2
360	lda v9                                   # line: 79           # column: 2
361	throw                                    # line: 79           # column: 2
362	label@46: lda v9                         # line: 79           # column: 2
363	ldundefined                              # line: 18446744073709551615           # column: 4294967295
364	return                                   # line: 80           # column: 1
365	label@49: throw                          # line: 78           # column: 0
366	label@50:                                # line: 78           # column: 0
367.catchall :
368	try_begin_label : label@0
369	try_end_label : label@49
370	catch_begin_label : label@49
371	catch_end_label : label@50
372
373# LOCAL_VARIABLE_TABLE:
374#	 Start   Length  Register           Name   Signature
375	    3       47         0       4funcObj         any
376	    3       47         1     4newTarget         any
377	    3       47         2           this         any
378}
379
380.function_kind FunctionKind::FUNCTION
381 _ESSlotNumberAnnotation
382 SlotNumber 0
383.function any .#*#goo(any a0, any a1, any a2) {
384	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
385	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
386	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
387	ldundefined                              # line: 18446744073709551615           # column: 4294967295
388	returnundefined                          # line: 68           # column: 23
389
390# LOCAL_VARIABLE_TABLE:
391#	 Start   Length  Register           Name   Signature
392	    3        2         0       4funcObj         any
393	    3        2         1     4newTarget         any
394	    3        2         2           this         any
395}
396
397.function_kind FunctionKind::FUNCTION
398 _ESSlotNumberAnnotation
399 SlotNumber 2
400.function any .#*#hoo(any a0, any a1, any a2) {
401	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
402	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
403	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
404	fldai 1.230000e+00                       # line: 71           # column: 9
405	trystglobalbyname 0x0, varA              # line: 71           # column: 2
406	createobjectwithbuffer 0x1, _GLOBAL_3358 # line: 72           # column: 12
407	sta v5                                   # line: 72           # column: 12
408	lda v5                                   # line: 72           # column: 12
409	sta v3                                   # line: 72           # column: 6
410	ldundefined                              # line: 18446744073709551615           # column: 4294967295
411	returnundefined                          # line: 73           # column: 1
412
413# LOCAL_VARIABLE_TABLE:
414#	 Start   Length  Register           Name   Signature
415	    3        8         0       4funcObj         any
416	    3        8         1     4newTarget         any
417	    3        8         2           this         any
418	    3        8         3            obj         any
419}
420
421.function_kind FunctionKind::ASYNC_FUNCTION
422 _ESSlotNumberAnnotation
423 SlotNumber 0
424.function any .#*@3*#method(any a0, any a1, any a2) {
425	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
426	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
427	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
428	createasyncgeneratorobj v0               # line: 18446744073709551615           # column: 4294967295
429	sta v3                                   # line: 18446744073709551615           # column: 4294967295
430	label@5: ldundefined                     # line: 18446744073709551615           # column: 4294967295
431	suspendgenerator v3                      # line: 18446744073709551615           # column: 4294967295
432	lda v3                                   # line: 18446744073709551615           # column: 4294967295
433	resumegenerator                          # line: 18446744073709551615           # column: 4294967295
434	sta v5                                   # line: 18446744073709551615           # column: 4294967295
435	lda v3                                   # line: 18446744073709551615           # column: 4294967295
436	getresumemode                            # line: 18446744073709551615           # column: 4294967295
437	sta v4                                   # line: 18446744073709551615           # column: 4294967295
438	ldundefined                              # line: 18446744073709551615           # column: 4294967295
439	sta v4                                   # line: 18446744073709551615           # column: 4294967295
440	ldtrue                                   # line: 18446744073709551615           # column: 4294967295
441	sta v5                                   # line: 18446744073709551615           # column: 4294967295
442	lda v3                                   # line: 18446744073709551615           # column: 4294967295
443	setgeneratorstate 0x4                    # line: 18446744073709551615           # column: 4294967295
444	asyncgeneratorresolve v3, v4, v5         # line: 18446744073709551615           # column: 4294967295
445	return                                   # line: 72           # column: 70
446	label@21: sta v4                         # line: 72           # column: 27
447	lda v3                                   # line: 72           # column: 27
448	setgeneratorstate 0x4                    # line: 72           # column: 27
449	lda v4                                   # line: 72           # column: 27
450	asyncgeneratorreject v3                  # line: 72           # column: 27
451	return                                   # line: 72           # column: 70
452	label@27:                                # line: 72           # column: 70
453.catchall :
454	try_begin_label : label@5
455	try_end_label : label@21
456	catch_begin_label : label@21
457	catch_end_label : label@27
458
459# LOCAL_VARIABLE_TABLE:
460#	 Start   Length  Register           Name   Signature
461	    3       24         0       4funcObj         any
462	    3       24         1     4newTarget         any
463	    3       24         2           this         any
464}
465
466.function_kind FunctionKind::FUNCTION
467 _ESSlotNumberAnnotation
468 SlotNumber 2
469.function any .#~@0=#HelloWorld(any a0, any a1, any a2) {
470	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
471	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
472	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
473	lda v2                                   # line: 0           # column: 0
474	sta v4                                   # line: 0           # column: 0
475	lda.str HelloWorld                       # line: 22           # column: 8
476	stobjbyname 0x0, str, v4                 # line: 0           # column: 0
477	lda v2                                   # line: 18446744073709551615           # column: 4294967295
478	return                                   # line: 0           # column: 0
479
480# LOCAL_VARIABLE_TABLE:
481#	 Start   Length  Register           Name   Signature
482	    3        6         0       4funcObj         any
483	    3        6         1     4newTarget         any
484	    3        6         2           this         any
485}
486
487.function_kind FunctionKind::FUNCTION
488 _ESSlotNumberAnnotation
489 SlotNumber 0
490.function any .#~@1=#Lit(any a0, any a1, any a2) {
491	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
492	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
493	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
494	lda v2                                   # line: 18446744073709551615           # column: 4294967295
495	return                                   # line: 0           # column: 0
496
497# LOCAL_VARIABLE_TABLE:
498#	 Start   Length  Register           Name   Signature
499	    3        2         0       4funcObj         any
500	    3        2         1     4newTarget         any
501	    3        2         2           this         any
502}
503
504.function_kind FunctionKind::NONE
505 _ESSlotNumberAnnotation
506 SlotNumber 2
507.function any .#~@1>#lit(any a0, any a1, any a2) {
508	label@0: mov v0, a0                      # line: 18446744073709551615           # column: 4294967295
509	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
510	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
511	creategeneratorobj v0                    # line: 18446744073709551615           # column: 4294967295
512	sta v3                                   # line: 18446744073709551615           # column: 4294967295
513	ldundefined                              # line: 18446744073709551615           # column: 4294967295
514	suspendgenerator v3                      # line: 18446744073709551615           # column: 4294967295
515	lda v3                                   # line: 18446744073709551615           # column: 4294967295
516	resumegenerator                          # line: 18446744073709551615           # column: 4294967295
517	sta v5                                   # line: 18446744073709551615           # column: 4294967295
518	lda v3                                   # line: 18446744073709551615           # column: 4294967295
519	getresumemode                            # line: 18446744073709551615           # column: 4294967295
520	sta v4                                   # line: 18446744073709551615           # column: 4294967295
521	ldai 0x0                                 # line: 18446744073709551615           # column: 4294967295
522	eq 0x0, v4                               # line: 18446744073709551615           # column: 4294967295
523	jeqz label@18                            # line: 18446744073709551615           # column: 4294967295
524	lda v5                                   # line: 18446744073709551615           # column: 4294967295
525	return                                   # line: 18446744073709551615           # column: 4294967295
526	label@18: ldai 0x1                       # line: 18446744073709551615           # column: 4294967295
527	eq 0x1, v4                               # line: 18446744073709551615           # column: 4294967295
528	jeqz label@23                            # line: 18446744073709551615           # column: 4294967295
529	lda v5                                   # line: 18446744073709551615           # column: 4294967295
530	throw                                    # line: 18446744073709551615           # column: 4294967295
531	label@23: lda v5                         # line: 18446744073709551615           # column: 4294967295
532	ldundefined                              # line: 18446744073709551615           # column: 4294967295
533	return                                   # line: 26           # column: 44
534	label@26: throw                          # line: 26           # column: 6
535	label@27:                                # line: 26           # column: 6
536.catchall :
537	try_begin_label : label@0
538	try_end_label : label@26
539	catch_begin_label : label@26
540	catch_end_label : label@27
541
542# LOCAL_VARIABLE_TABLE:
543#	 Start   Length  Register           Name   Signature
544	    3       24         0       4funcObj         any
545	    3       24         1     4newTarget         any
546	    3       24         2           this         any
547}
548
549.function_kind FunctionKind::NONE
550 _ESSlotNumberAnnotation
551 SlotNumber 2
552.function any .#~@2=#NestedLiteralArray(any a0, any a1, any a2) {
553	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
554	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
555	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
556	lda.str use sendable                     # line: 33           # column: 4
557	lda v2                                   # line: 0           # column: 0
558	sta v4                                   # line: 0           # column: 0
559	ldai 0x1                                 # line: 30           # column: 16
560	stobjbyname 0x0, num, v4                 # line: 0           # column: 0
561	lda v2                                   # line: 18446744073709551615           # column: 4294967295
562	return                                   # line: 34           # column: 3
563
564# LOCAL_VARIABLE_TABLE:
565#	 Start   Length  Register           Name   Signature
566	    3        7         0       4funcObj         any
567	    3        7         1     4newTarget         any
568	    3        7         2           this         any
569}
570
571.function_kind FunctionKind::NONE
572 _ESSlotNumberAnnotation
573 SlotNumber 0
574.function any .#~@2>#NestedLiteralArray(any a0, any a1, any a2) {
575	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
576	mov v1, a1                               # line: 18446744073709551615           # column: 4294967295
577	mov v2, a2                               # line: 18446744073709551615           # column: 4294967295
578	ldundefined                              # line: 18446744073709551615           # column: 4294967295
579	returnundefined                          # line: 31           # column: 31
580
581# LOCAL_VARIABLE_TABLE:
582#	 Start   Length  Register           Name   Signature
583	    3        2         0       4funcObj         any
584	    3        2         1     4newTarget         any
585	    3        2         2           this         any
586}
587
588.function_kind FunctionKind::FUNCTION
589 _ESSlotNumberAnnotation
590 SlotNumber 28
591.function any .func_main_0(any a0, any a1, any a2) {
592	newlexenvwithname 0x2, _GLOBAL_3452      # line: 18446744073709551615           # column: 4294967295
593	mov v0, a0                               # line: 18446744073709551615           # column: 4294967295
594	lda a1                                   # line: 18446744073709551615           # column: 4294967295
595	stlexvar 0x0, 0x0                        # line: 18446744073709551615           # column: 4294967295
596	lda a2                                   # line: 18446744073709551615           # column: 4294967295
597	stlexvar 0x0, 0x1                        # line: 18446744073709551615           # column: 4294967295
598	definefunc 0x0, .#*#foo, 0x0             # line: 18446744073709551615           # column: 4294967295
599	sta v3                                   # line: 18446744073709551615           # column: 4294967295
600	definefunc 0x1, .#*#asyncGenerateFunc, 0x0 # line: 18446744073709551615           # column: 4294967295
601	sta v4                                   # line: 18446744073709551615           # column: 4294967295
602	definefunc 0x2, .#*#goo, 0x0             # line: 18446744073709551615           # column: 4294967295
603	sta v9                                   # line: 18446744073709551615           # column: 4294967295
604	definefunc 0x3, .#*#generateFunc, 0x0    # line: 18446744073709551615           # column: 4294967295
605	sta v10                                  # line: 18446744073709551615           # column: 4294967295
606	definefunc 0x4, .#*#hoo, 0x0             # line: 18446744073709551615           # column: 4294967295
607	sta v11                                  # line: 18446744073709551615           # column: 4294967295
608	getmodulenamespace 0x1                   # line: 18446744073709551615           # column: 4294967295
609	sta v12                                  # line: 18446744073709551615           # column: 4294967295
610	ldundefined                              # line: 17           # column: 11
611	stmodulevar 0x0                          # line: 17           # column: 11
612	ldhole                                   # line: 21           # column: 17
613	sta v17                                  # line: 21           # column: 17
614	defineclasswithbuffer 0x5, .#~@0=#HelloWorld, _GLOBAL_3375, 0x0, v17 # line: 21           # column: 17
615	sta v15                                  # line: 21           # column: 17
616	sta v16                                  # line: 21           # column: 6
617	lda v15                                  # line: 21           # column: 17
618	ldobjbyname 0x6, prototype               # line: 21           # column: 17
619	sta v18                                  # line: 21           # column: 17
620	lda v15                                  # line: 21           # column: 17
621	sta v7                                   # line: 21           # column: 6
622	ldhole                                   # line: 25           # column: 10
623	sta v17                                  # line: 25           # column: 10
624	defineclasswithbuffer 0x8, .#~@1=#Lit, _GLOBAL_3384, 0x0, v17 # line: 25           # column: 10
625	sta v15                                  # line: 25           # column: 10
626	sta v16                                  # line: 25           # column: 6
627	lda v15                                  # line: 25           # column: 10
628	ldobjbyname 0x9, prototype               # line: 25           # column: 10
629	sta v18                                  # line: 25           # column: 10
630	lda v15                                  # line: 25           # column: 10
631	sta v5                                   # line: 25           # column: 6
632	ldhole                                   # line: 29           # column: 25
633	sta v17                                  # line: 29           # column: 25
634	callruntime.definesendableclass 0xb, .#~@2=#NestedLiteralArray, _GLOBAL_3425, 0x0, v17 # line: 29           # column: 25
635	sta v15                                  # line: 29           # column: 25
636	sta v16                                  # line: 29           # column: 6
637	sta v8                                   # line: 29           # column: 6
638	lda.str                                  # line: 37           # column: 15
639	trystglobalbyname 0xc, string            # line: 37           # column: 6
640	definefunc 0xd, .#*#add, 0x2             # line: 75           # column: 10
641	sta v6                                   # line: 75           # column: 4
642	lda v6                                   # line: 76           # column: 0
643	sta v15                                  # line: 76           # column: 0
644	ldai 0x1                                 # line: 76           # column: 4
645	sta v16                                  # line: 76           # column: 4
646	ldai 0x2                                 # line: 76           # column: 7
647	sta v17                                  # line: 76           # column: 7
648	lda v15                                  # line: 76           # column: 0
649	callargs2 0xe, v16, v17                  # line: 76           # column: 0
650	definefunc 0x10, .#*#asyncArrowFunc, 0x0 # line: 86           # column: 23
651	sta v13                                  # line: 86           # column: 6
652	lda v3                                   # line: 88           # column: 0
653	sta v15                                  # line: 88           # column: 0
654	lda v15                                  # line: 88           # column: 0
655	callarg0 0x11                            # line: 88           # column: 0
656	tryldglobalbyname 0x13, print            # line: 90           # column: 0
657	sta v15                                  # line: 90           # column: 0
658	lda v9                                   # line: 90           # column: 6
659	sta v17                                  # line: 90           # column: 6
660	lda v17                                  # line: 90           # column: 6
661	ldobjbyname 0x14, toString               # line: 90           # column: 6
662	sta v16                                  # line: 90           # column: 6
663	lda v16                                  # line: 90           # column: 6
664	callthis0 0x16, v17                      # line: 90           # column: 6
665	sta v16                                  # line: 90           # column: 6
666	lda v15                                  # line: 90           # column: 0
667	callarg1 0x18, v16                       # line: 90           # column: 0
668	lda v11                                  # line: 92           # column: 0
669	sta v15                                  # line: 92           # column: 0
670	lda v15                                  # line: 92           # column: 0
671	callarg0 0x1a                            # line: 92           # column: 0
672	ldundefined                              # line: 18446744073709551615           # column: 4294967295
673	returnundefined                          # line: 18446744073709551615           # column: 4294967295
674
675# LOCAL_VARIABLE_TABLE:
676#	 Start   Length  Register           Name   Signature
677	    6       76         0       4funcObj         any
678	    6       76         3            foo         any
679	    6       76         4  asyncGenerateFunc         any
680	    6       76         5            Lit         any
681	    6       76         6            add         any
682	    6       76         7     HelloWorld         any
683	    6       76         8  NestedLiteralArray         any
684	    6       76         9            goo         any
685	    6       76        10   generateFunc         any
686	    6       76        11            hoo         any
687	    6       76        12              b         any
688	    6       76        13  asyncArrowFunc         any
689	   40        5        16  NestedLiteralArray         any
690}
691
692# ====================
693# STRING
694
695.#*#add
696.#*#asyncArrowFunc
697.#*#asyncGenerateFunc
698.#*#foo
699.#*#generateFunc
700.#*#goo
701.#*#hoo
702.#~@0=#HelloWorld
703.#~@1=#Lit
704.#~@2=#NestedLiteralArray
705HelloWorld
706error
707hello
708inner catch
709masg
710max
711min
712msg
713null
714num
715outter catch
716print
717prototype
718str
719string
720toString
721use sendable
722varA
723x
724