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