• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.language ECMAScript
2
3slotNum = 0xe
4.function any .#*#test2(any a0, any a1, any a2) {
5	mov v0, a0
6	mov v1, a1
7	mov v2, a2
8	callruntime.ldsendablevar 0x0, 0x0
9	throw.undefinedifholewithname SendableA
10	sta v6
11	newobjrange 0x0, 0x1, v6
12	sta v4
13	callruntime.ldsendablevar 0x0, 0x1
14	throw.undefinedifholewithname SendableB
15	sta v6
16	newobjrange 0x2, 0x1, v6
17	sta v3
18	tryldglobalbyname 0x4, print
19	sta v6
20	callruntime.ldsendablevar 0x0, 0x0
21	throw.undefinedifholewithname SendableA
22	sta v7
23	lda v7
24	ldobjbyname 0x5, propA
25	sta v7
26	lda v6
27	callarg1 0x7, v7
28	tryldglobalbyname 0x9, print
29	sta v6
30	callruntime.ldsendablevar 0x0, 0x1
31	throw.undefinedifholewithname SendableB
32	sta v7
33	lda v7
34	ldobjbyname 0xa, propB
35	sta v7
36	lda v6
37	callarg1 0xc, v7
38	ldai 0x29a
39	sta v6
40	ldlexvar 0x0, 0x0
41	throw.undefinedifholewithname moduleA
42	lda v6
43	sta v6
44	lda v6
45	stlexvar 0x0, 0x0
46	lda.str 456
47	sta v6
48	ldlexvar 0x0, 0x1
49	throw.undefinedifholewithname closureStr
50	lda v6
51	sta v6
52	lda v6
53	stlexvar 0x0, 0x1
54	ldai 0x1c8
55	sta v6
56	ldlexvar 0x0, 0x2
57	throw.undefinedifholewithname closureNum
58	lda v6
59	sta v6
60	lda v6
61	stlexvar 0x0, 0x2
62	lda.str test
63	return
64}
65
66slotNum = 0x2
67.function any .#~@0=#SendableA(any a0, any a1, any a2) {
68	mov v0, a0
69	mov v1, a1
70	mov v2, a2
71	lda.str use sendable
72	lda v2
73	sta v4
74	lda.str a
75	stobjbyname 0x0, propA, v4
76	lda v2
77	return
78}
79
80slotNum = 0x2
81.function any .#~@0>#static_initializer(any a0, any a1, any a2) {
82	mov v0, a0
83	mov v1, a1
84	mov v2, a2
85	lda v2
86	sta v4
87	lda.str ArkCompilerTestA
88	definepropertybyname 0x0, propA, v4
89	ldundefined
90	returnundefined
91}
92
93slotNum = 0x2
94.function any .#~@1=#SendableB(any a0, any a1, any a2) {
95	mov v0, a0
96	mov v1, a1
97	mov v2, a2
98	lda.str use sendable
99	lda v2
100	sta v4
101	lda.str b
102	stobjbyname 0x0, propA, v4
103	lda v2
104	return
105}
106
107slotNum = 0x2
108.function any .#~@1>#static_initializer(any a0, any a1, any a2) {
109	mov v0, a0
110	mov v1, a1
111	mov v2, a2
112	lda v2
113	sta v4
114	lda.str ArkCompilerTestB
115	definepropertybyname 0x0, propB, v4
116	ldundefined
117	returnundefined
118}
119
120slotNum = 0x9
121.function any .func_main_0(any a0, any a1, any a2) {
122	newlexenvwithname 0x3, _6
123	callruntime.newsendableenv 0x2
124	mov v0, a0
125	mov v1, a1
126	mov v2, a2
127	definefunc 0x0, .#*#test2, 0x0
128	stmodulevar 0x0
129	ldai 0x3e7
130	sta v4
131	lda v4
132	stlexvar 0x0, 0x0
133	lda.str 1234
134	sta v4
135	lda v4
136	stlexvar 0x0, 0x1
137	ldhole
138	sta v6
139	callruntime.definesendableclass 0x1, .#~@0=#SendableA, _3, 0x0, v6
140	sta v4
141	sta v5
142	definemethod 0x2, .#~@0>#static_initializer, 0x0
143	sta v7
144	mov v8, v4
145	lda v7
146	callthis0 0x3, v8
147	lda v4
148	callruntime.stsendablevar 0x0, 0x0
149	ldai 0x11d3
150	sta v4
151	lda v4
152	stlexvar 0x0, 0x2
153	ldhole
154	sta v6
155	callruntime.definesendableclass 0x5, .#~@1=#SendableB, _5, 0x0, v6
156	sta v4
157	sta v5
158	definemethod 0x6, .#~@1>#static_initializer, 0x0
159	sta v7
160	mov v8, v4
161	lda v7
162	callthis0 0x7, v8
163	lda v4
164	callruntime.stsendablevar 0x0, 0x1
165	ldundefined
166	returnundefined
167}
168
169
170======> literal array buffer <======
171------------------------------------
172slot _0
173{
174  index: 0
175    tag: 0
176    val: 5
177},
178{
179  index: 1
180    tag: 5
181    val: SendableA
182},
183{
184  index: 2
185    tag: 0
186    val: 5
187},
188{
189  index: 3
190    tag: 5
191    val: SendableB
192},
193------------------------------------
194slot _1
195{
196  index: 0
197    tag: 2
198    val: 0
199},
200{
201  index: 1
202    tag: 2
203    val: 0
204},
205{
206  index: 2
207    tag: 2
208    val: 0
209},
210{
211  index: 3
212    tag: 2
213    val: 1
214},
215{
216  index: 4
217    tag: 5
218    val: test2
219},
220{
221  index: 5
222    tag: 5
223    val: test2
224},
225{
226  index: 6
227    tag: 2
228    val: 0
229},
230{
231  index: 7
232    tag: 2
233    val: 0
234},
235------------------------------------
236slot _2
237{
238  index: 0
239    tag: 0
240    val: 5
241},
242{
243  index: 1
244    tag: 5
245    val: propA
246},
247{
248  index: 2
249    tag: 0
250    val: 2
251},
252{
253  index: 3
254    tag: 2
255    val: 2
256},
257{
258  index: 4
259    tag: 0
260    val: 5
261},
262{
263  index: 5
264    tag: 5
265    val: propA
266},
267{
268  index: 6
269    tag: 0
270    val: 2
271},
272{
273  index: 7
274    tag: 2
275    val: 2
276},
277{
278  index: 8
279    tag: 0
280    val: 2
281},
282{
283  index: 9
284    tag: 2
285    val: 1
286},
287------------------------------------
288slot _3
289{
290  index: 0
291    tag: 0
292    val: 2
293},
294{
295  index: 1
296    tag: 2
297    val: 0
298},
299{
300  index: 2
301    tag: 0
302    val: 24
303},
304{
305  index: 3
306    tag: 24
307    val: _2
308},
309------------------------------------
310slot _4
311{
312  index: 0
313    tag: 0
314    val: 5
315},
316{
317  index: 1
318    tag: 5
319    val: propA
320},
321{
322  index: 2
323    tag: 0
324    val: 2
325},
326{
327  index: 3
328    tag: 2
329    val: 2
330},
331{
332  index: 4
333    tag: 0
334    val: 5
335},
336{
337  index: 5
338    tag: 5
339    val: propB
340},
341{
342  index: 6
343    tag: 0
344    val: 2
345},
346{
347  index: 7
348    tag: 2
349    val: 2
350},
351{
352  index: 8
353    tag: 0
354    val: 2
355},
356{
357  index: 9
358    tag: 2
359    val: 1
360},
361------------------------------------
362slot _5
363{
364  index: 0
365    tag: 0
366    val: 2
367},
368{
369  index: 1
370    tag: 2
371    val: 0
372},
373{
374  index: 2
375    tag: 0
376    val: 24
377},
378{
379  index: 3
380    tag: 24
381    val: _4
382},
383------------------------------------
384slot _6
385{
386  index: 0
387    tag: 0
388    val: 2
389},
390{
391  index: 1
392    tag: 2
393    val: 3
394},
395{
396  index: 2
397    tag: 0
398    val: 5
399},
400{
401  index: 3
402    tag: 5
403    val: moduleA
404},
405{
406  index: 4
407    tag: 0
408    val: 2
409},
410{
411  index: 5
412    tag: 2
413    val: 0
414},
415{
416  index: 6
417    tag: 0
418    val: 5
419},
420{
421  index: 7
422    tag: 5
423    val: closureStr
424},
425{
426  index: 8
427    tag: 0
428    val: 2
429},
430{
431  index: 9
432    tag: 2
433    val: 1
434},
435{
436  index: 10
437    tag: 0
438    val: 5
439},
440{
441  index: 11
442    tag: 5
443    val: closureNum
444},
445{
446  index: 12
447    tag: 0
448    val: 2
449},
450{
451  index: 13
452    tag: 2
453    val: 2
454},
455