• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2023-2025 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6# http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13#
14# This file describes compiler-to-runtime entrypoints.
15# Fields:
16#  * properties:
17#    - no_return: entrypoint doesn't jump back to the caller.
18#    - external: don't generate entrypoint and bridge declarations, initialize table's element by nullptr.
19#    - irtoc: entrypoint is generated by irtoc tool
20#    - intrinsic: this is call of intrinsic wrapped in entrypoint bridge
21#  * signature: signature of the entrypoint, the first element is the return value, the rest are arguments.
22#  * entrypoint: entrypoint function name.
23
24- name: CreateLaunchStaticCoroutine
25  entrypoint: CreateLaunchStaticCoroutineEntrypoint
26  bridge: entrypoint
27  properties: []
28  signature:
29  - void
30  - ark::Method*
31  - ark::ObjectHeader*
32  - uint64_t*
33
34- name: CreateLaunchVirtualCoroutine
35  entrypoint: CreateLaunchVirtualCoroutineEntrypoint
36  bridge: entrypoint
37  properties: []
38  signature:
39  - void
40  - ark::Method*
41  - ark::ObjectHeader*
42  - uint64_t*
43  - ark::ObjectHeader*
44
45- name: ArrayCopyTo1bSlowPath
46  entrypoint: StdCoreByteCopyTo
47  bridge: slow_path
48  properties: [intrinsic]
49  signature:
50      - void
51      - void*
52      - void*
53      - int32_t
54      - int32_t
55      - int32_t
56
57- name: ArrayCopyTo2bSlowPath
58  entrypoint: StdCoreShortCopyTo
59  bridge: slow_path
60  properties: [intrinsic]
61  signature:
62      - void
63      - void*
64      - void*
65      - int32_t
66      - int32_t
67      - int32_t
68
69- name: ArrayCopyTo4bSlowPath
70  entrypoint: StdCoreIntCopyTo
71  bridge: slow_path
72  properties: [intrinsic]
73  signature:
74      - void
75      - void*
76      - void*
77      - int32_t
78      - int32_t
79      - int32_t
80
81- name: ArrayCopyTo8bSlowPath
82  entrypoint: StdCoreLongCopyTo
83  bridge: slow_path
84  properties: [intrinsic]
85  signature:
86      - void
87      - void*
88      - void*
89      - int32_t
90      - int32_t
91      - int32_t
92
93- name: ArrayCopyTo1bOddSaved
94  entrypoint: StdCoreByteCopyTo
95  bridge: odd_saved
96  properties: [intrinsic]
97  signature:
98      - void
99      - void*
100      - void*
101      - int32_t
102      - int32_t
103      - int32_t
104
105- name: ArrayCopyTo2bOddSaved
106  entrypoint: StdCoreShortCopyTo
107  bridge: odd_saved
108  properties: [intrinsic]
109  signature:
110      - void
111      - void*
112      - void*
113      - int32_t
114      - int32_t
115      - int32_t
116
117- name: ArrayCopyTo4bOddSaved
118  entrypoint: StdCoreIntCopyTo
119  bridge: odd_saved
120  properties: [intrinsic]
121  signature:
122      - void
123      - void*
124      - void*
125      - int32_t
126      - int32_t
127      - int32_t
128
129- name: ArrayCopyTo8bOddSaved
130  entrypoint: StdCoreLongCopyTo
131  bridge: odd_saved
132  properties: [intrinsic]
133  signature:
134      - void
135      - void*
136      - void*
137      - int32_t
138      - int32_t
139      - int32_t
140
141- name: StringBuilderAppendLong
142  entrypoint: StringBuilderAppendLong
143  bridge: none
144  properties: [irtoc]
145  signature:
146    - ark::ObjectHeader*  # string builder (result)
147    - ark::ObjectHeader*  # string builder
148    - int64_t             # long value
149    - ark::Class*         # array class pointer
150
151- name: StringBuilderAppendLongSlowPath
152  entrypoint: StringBuilderAppendLongEntrypoint
153  bridge: slow_path
154  properties: []
155  signature:
156    - ark::ObjectHeader*  # string builder (result)
157    - ark::ObjectHeader*  # string builder
158    - int64_t             # long value
159
160- name: StringBuilderAppendLong3Arg
161  entrypoint: StringBuilderAppendLongEntrypoint
162  bridge: odd_saved3
163  properties: []
164  signature:
165    - ark::ObjectHeader*  # string builder (result)
166    - ark::ObjectHeader*  # string builder
167    - int64_t             # long value
168
169- name: StringBuilderAppendChar
170  entrypoint: StringBuilderAppendChar
171  bridge: none
172  properties: [irtoc]
173  signature:
174    - ark::ObjectHeader*  # string builder (result)
175    - ark::ObjectHeader*  # string builder
176    - uint16_t            # char
177    - ark::Class*         # array class pointer
178
179- name: StringBuilderAppendCharCompressed
180  entrypoint: StringBuilderAppendCharCompressed
181  bridge: none
182  properties: [irtoc]
183  signature:
184    - ark::ObjectHeader*  # string builder (result)
185    - ark::ObjectHeader*  # string builder
186    - uint16_t            # char
187    - ark::Class*         # array class pointer
188
189- name: StringBuilderAppendCharSlowPath
190  entrypoint: StringBuilderAppendCharEntrypoint
191  bridge: slow_path
192  properties: []
193  signature:
194    - ark::ObjectHeader*  # string builder (result)
195    - ark::ObjectHeader*  # string builder
196    - uint16_t            # char
197
198- name: StringBuilderAppendChar3Arg
199  entrypoint: StringBuilderAppendCharEntrypoint
200  bridge: odd_saved3
201  properties: []
202  signature:
203    - ark::ObjectHeader*  # string builder (result)
204    - ark::ObjectHeader*  # string builder
205    - uint16_t            # char
206
207- name: StringBuilderAppendBool
208  entrypoint: StringBuilderAppendBool
209  bridge: none
210  properties: [irtoc]
211  signature:
212    - ark::ObjectHeader*  # string builder (result)
213    - ark::ObjectHeader*  # string builder
214    - uint8_t             # boolean
215    - ark::Class*         # array class pointer
216
217- name: StringBuilderAppendBoolSlowPath
218  entrypoint: StringBuilderAppendBoolEntrypoint
219  bridge: slow_path
220  properties: []
221  signature:
222    - ark::ObjectHeader*  # string builder (result)
223    - ark::ObjectHeader*  # string builder
224    - uint8_t             # boolean
225
226- name: StringBuilderAppendBool3Arg
227  entrypoint: StringBuilderAppendBoolEntrypoint
228  bridge: odd_saved3
229  properties: []
230  signature:
231    - ark::ObjectHeader*  # string builder (result)
232    - ark::ObjectHeader*  # string builder
233    - uint8_t             # boolean
234
235- name: StringBuilderAppendString
236  entrypoint: StringBuilderAppendStringEntrypoint
237  bridge: entrypoint
238  properties: []
239  signature:
240    - ark::ObjectHeader*  # string builder (result)
241    - ark::ObjectHeader*  # string builder
242    - ark::ObjectHeader*  # string
243
244- name: StringBuilderAppendString2Sync
245  entrypoint: StringBuilderAppendString2Sync
246  bridge: none
247  properties: [irtoc]
248  signature:
249    - ark::ObjectHeader*  # string builder (result)
250    - ark::ObjectHeader*  # string builder
251    - ark::ObjectHeader*  # string
252    - ark::ObjectHeader*  # string
253
254- name: StringBuilderAppendString2Async
255  entrypoint: StringBuilderAppendString2Async
256  bridge: none
257  properties: [irtoc]
258  signature:
259    - ark::ObjectHeader*  # string builder (result)
260    - ark::ObjectHeader*  # string builder
261    - ark::ObjectHeader*  # string
262    - ark::ObjectHeader*  # string
263
264- name: StringBuilderAppendString2AsyncManual
265  entrypoint: StringBuilderAppendString2AsyncManual
266  bridge: none
267  properties: [irtoc]
268  signature:
269    - ark::ObjectHeader*  # string builder (result)
270    - ark::ObjectHeader*  # string builder
271    - ark::ObjectHeader*  # string
272    - ark::ObjectHeader*  # string
273
274- name: StringBuilderAppendString2SlowPath
275  entrypoint: StringBuilderAppendString2Entrypoint
276  bridge: slow_path
277  properties: []
278  signature:
279    - ark::ObjectHeader*  # string builder (result)
280    - ark::ObjectHeader*  # string builder
281    - ark::ObjectHeader*  # string
282    - ark::ObjectHeader*  # string
283
284- name: StringBuilderAppendString2OddSaved
285  entrypoint: StringBuilderAppendString2Entrypoint
286  bridge: odd_saved
287  properties: []
288  signature:
289    - ark::ObjectHeader*  # string builder (result)
290    - ark::ObjectHeader*  # string builder
291    - ark::ObjectHeader*  # string
292    - ark::ObjectHeader*  # string
293
294- name: StringBuilderAppendString3Sync
295  entrypoint: StringBuilderAppendString3Sync
296  bridge: none
297  properties: [irtoc]
298  signature:
299    - ark::ObjectHeader*  # string builder (result)
300    - ark::ObjectHeader*  # string builder
301    - ark::ObjectHeader*  # string
302    - ark::ObjectHeader*  # string
303    - ark::ObjectHeader*  # string
304
305- name: StringBuilderAppendString3Async
306  entrypoint: StringBuilderAppendString3Async
307  bridge: none
308  properties: [irtoc]
309  signature:
310    - ark::ObjectHeader*  # string builder (result)
311    - ark::ObjectHeader*  # string builder
312    - ark::ObjectHeader*  # string
313    - ark::ObjectHeader*  # string
314    - ark::ObjectHeader*  # string
315
316- name: StringBuilderAppendString3AsyncManual
317  entrypoint: StringBuilderAppendString3AsyncManual
318  bridge: none
319  properties: [irtoc]
320  signature:
321    - ark::ObjectHeader*  # string builder (result)
322    - ark::ObjectHeader*  # string builder
323    - ark::ObjectHeader*  # string
324    - ark::ObjectHeader*  # string
325    - ark::ObjectHeader*  # string
326
327- name: StringBuilderAppendString3SlowPath
328  entrypoint: StringBuilderAppendString3Entrypoint
329  bridge: slow_path
330  properties: []
331  signature:
332    - ark::ObjectHeader*  # string builder (result)
333    - ark::ObjectHeader*  # string builder
334    - ark::ObjectHeader*  # string
335    - ark::ObjectHeader*  # string
336    - ark::ObjectHeader*  # string
337
338- name: StringBuilderAppendString3Usual
339  entrypoint: StringBuilderAppendString3Entrypoint
340  bridge: entrypoint
341  properties: []
342  signature:
343    - ark::ObjectHeader*  # string builder (result)
344    - ark::ObjectHeader*  # string builder
345    - ark::ObjectHeader*  # string
346    - ark::ObjectHeader*  # string
347    - ark::ObjectHeader*  # string
348
349- name: StringBuilderAppendString4Sync
350  entrypoint: StringBuilderAppendString4Sync
351  bridge: none
352  properties: [irtoc]
353  signature:
354    - ark::ObjectHeader*  # string builder (result)
355    - ark::ObjectHeader*  # string builder
356    - ark::ObjectHeader*  # string
357    - ark::ObjectHeader*  # string
358    - ark::ObjectHeader*  # string
359    - ark::ObjectHeader*  # string
360
361- name: StringBuilderAppendString4Async
362  entrypoint: StringBuilderAppendString4Async
363  bridge: none
364  properties: [irtoc]
365  signature:
366    - ark::ObjectHeader*  # string builder (result)
367    - ark::ObjectHeader*  # string builder
368    - ark::ObjectHeader*  # string
369    - ark::ObjectHeader*  # string
370    - ark::ObjectHeader*  # string
371    - ark::ObjectHeader*  # string
372
373- name: StringBuilderAppendString4AsyncManual
374  entrypoint: StringBuilderAppendString4AsyncManual
375  bridge: none
376  properties: [irtoc]
377  signature:
378    - ark::ObjectHeader*  # string builder (result)
379    - ark::ObjectHeader*  # string builder
380    - ark::ObjectHeader*  # string
381    - ark::ObjectHeader*  # string
382    - ark::ObjectHeader*  # string
383    - ark::ObjectHeader*  # string
384
385- name: StringBuilderAppendString4SlowPath
386  entrypoint: StringBuilderAppendString4Entrypoint
387  bridge: slow_path
388  properties: []
389  signature:
390    - ark::ObjectHeader*  # string builder (result)
391    - ark::ObjectHeader*  # string builder
392    - ark::ObjectHeader*  # string
393    - ark::ObjectHeader*  # string
394    - ark::ObjectHeader*  # string
395    - ark::ObjectHeader*  # string
396
397- name: StringBuilderAppendString4OddSaved
398  entrypoint: StringBuilderAppendString4Entrypoint
399  bridge: odd_saved
400  properties: []
401  signature:
402    - ark::ObjectHeader*  # string builder (result)
403    - ark::ObjectHeader*  # string builder
404    - ark::ObjectHeader*  # string
405    - ark::ObjectHeader*  # string
406    - ark::ObjectHeader*  # string
407    - ark::ObjectHeader*  # string
408
409- name: StringBuilderAppendNullString
410  entrypoint: StringBuilderAppendNullStringEntrypoint
411  bridge: entrypoint
412  properties: []
413  signature:
414    - ark::ObjectHeader*  # string builder (result)
415    - ark::ObjectHeader*  # string builder
416
417- name: StringBuilderToString
418  entrypoint: StringBuilderToString
419  bridge: none
420  properties: [irtoc]
421  signature:
422    - ark::ObjectHeader*  # string (result)
423    - ark::ObjectHeader*  # string builder
424    - ark::Class*         # string class pointer
425
426- name: StringBuilderToStringSlowPath
427  entrypoint: StringBuilderToStringEntrypoint
428  bridge: slow_path
429  properties: []
430  signature:
431    - ark::ObjectHeader*  # string (result)
432    - ark::ObjectHeader*  # string builder
433
434- name: StringBuilderToString2Arg
435  entrypoint: StringBuilderToStringEntrypoint
436  bridge: odd_saved2
437  properties: []
438  signature:
439    - ark::ObjectHeader*  # string (result)
440    - ark::ObjectHeader*  # string builder
441
442- name: DoubleToStringDecimal
443  entrypoint: DoubleToStringDecimal
444  bridge: none
445  properties: [irtoc]
446  signature:
447    - ark::ObjectHeader*  # string (result)
448    - ark::ObjectHeader*  # cache
449    - uint64_t            # number
450    - uint64_t            # unused
451
452- name: DoubleToStringDecimalSlowPath
453  entrypoint: DoubleToStringDecimalEntrypoint
454  bridge: slow_path
455  properties: []
456  signature:
457    - ark::ObjectHeader*  # string (result)
458    - ark::ObjectHeader*  # cache
459    - uint64_t            # number
460
461- name: DoubleToStringDecimal3Arg
462  entrypoint: DoubleToStringDecimalEntrypoint
463  bridge: odd_saved3
464  properties: []
465  signature:
466    - ark::ObjectHeader*  # string (result)
467    - ark::ObjectHeader*  # cache
468    - uint64_t            # number
469
470- name: DoubleToStringDecimalStoreSlowPath
471  entrypoint: DoubleToStringDecimalStoreEntrypoint
472  bridge: slow_path
473  properties: []
474  signature:
475    - ark::ObjectHeader*  # string (result)
476    - ark::ObjectHeader*  # cache element
477    - uint64_t            # number
478    - uint64_t            # cache data
479
480- name: DoubleToStringDecimalStoreOddSaved
481  entrypoint: DoubleToStringDecimalStoreEntrypoint
482  bridge: odd_saved
483  properties: []
484  signature:
485    - ark::ObjectHeader*  # string (result)
486    - ark::ObjectHeader*  # cache element
487    - uint64_t            # number
488    - uint64_t            # cache data
489
490- name: DoubleToStringDecimalNoCacheSlowPath
491  entrypoint: DoubleToStringDecimalNoCacheEntrypoint
492  bridge: slow_path
493  properties: []
494  signature:
495    - ark::ObjectHeader*  # string (result)
496    - uint64_t            # number
497
498- name: DoubleToStringDecimalNoCache3Arg
499  entrypoint: DoubleToStringDecimalNoCacheEntrypoint
500  bridge: odd_saved3
501  properties: []
502  signature:
503    - ark::ObjectHeader*  # string (result)
504    - uint64_t            # number
505
506- name: StringEmpty
507  entrypoint: StringEmpty
508  bridge: none
509  properties: [irtoc]
510  signature:
511    - ark::ObjectHeader*  # string (result)
512    - ark::ObjectHeader*  # string (to obtain klass)
513
514- name: StringTrimLeft
515  entrypoint: StringTrimLeft
516  bridge: none
517  properties: [irtoc]
518  signature:
519    - ark::ObjectHeader*  # string (result)
520    - ark::ObjectHeader*  # string to trim
521    - int32_t             # unused
522    - int32_t             # unused
523
524- name: StringTrimLeftBase
525  entrypoint: StringTrimLeftBase
526  bridge: none
527  properties: [irtoc]
528  signature:
529    - ark::ObjectHeader*  # string (result)
530    - ark::ObjectHeader*  # string to trim
531    - int32_t             # unused
532    - int32_t             # unused
533
534- name: StringTrimRight
535  entrypoint: StringTrimRight
536  bridge: none
537  properties: [irtoc]
538  signature:
539    - ark::ObjectHeader*  # string (result)
540    - ark::ObjectHeader*  # string to trim
541    - int32_t             # unused
542    - int32_t             # unused
543
544- name: StringTrimRightBase
545  entrypoint: StringTrimRightBase
546  bridge: none
547  properties: [irtoc]
548  signature:
549    - ark::ObjectHeader*  # string (result)
550    - ark::ObjectHeader*  # string to trim
551    - int32_t             # unused
552    - int32_t             # unused
553
554- name: StringTrim
555  entrypoint: StringTrim
556  bridge: none
557  properties: [irtoc]
558  signature:
559    - ark::ObjectHeader*  # string (result)
560    - ark::ObjectHeader*  # string to trim
561    - int32_t             # unused
562    - int32_t             # unused
563
564- name: StringTrimBase
565  entrypoint: StringTrimBase
566  bridge: none
567  properties: [irtoc]
568  signature:
569    - ark::ObjectHeader*  # string (result)
570    - ark::ObjectHeader*  # string to trim
571    - int32_t             # unused
572    - int32_t             # unused
573
574- name: CharIsWhiteSpace
575  entrypoint: CharIsWhiteSpace
576  bridge: none
577  properties: [irtoc]
578  signature:
579    - uint8_t   # result (true/false)
580    - uint16_t  # char to test
581
582- name: StringStartsWith
583  entrypoint: StringStartsWith
584  bridge: none
585  properties: [irtoc]
586  signature:
587    - uint8_t             # boolean (result)
588    - ark::ObjectHeader*  # string to check
589    - ark::ObjectHeader*  # prefix to check
590    - int32_t             # index to start from
591
592- name: StringStartsWithBase
593  entrypoint: StringStartsWithBase
594  bridge: none
595  properties: [irtoc]
596  signature:
597    - uint8_t             # boolean (result)
598    - ark::ObjectHeader*  # string to check
599    - ark::ObjectHeader*  # prefix to check
600    - int32_t             # index to start from
601
602- name: StringEndsWith
603  entrypoint: StringEndsWith
604  bridge: none
605  properties: [irtoc]
606  signature:
607    - uint8_t             # boolean (result)
608    - ark::ObjectHeader*  # string to check
609    - ark::ObjectHeader*  # suffix to check
610    - int32_t             # index of char to stop at
611
612- name: StringEndsWithBase
613  entrypoint: StringEndsWithBase
614  bridge: none
615  properties: [irtoc]
616  signature:
617    - uint8_t             # boolean (result)
618    - ark::ObjectHeader*  # string to check
619    - ark::ObjectHeader*  # suffix to check
620    - int32_t             # index of char to stop at
621
622- name: StringGetBytesTlab
623  entrypoint: StringGetBytesTlab
624  bridge: none
625  properties: [irtoc]
626  signature:
627    - ark::coretypes::Array*   # resulting array of uint8
628    - ark::ObjectHeader*       # src string
629    - int32_t                  # begin index
630    - int32_t                  # end index
631    - ark::Class*              # Array u16 class pointer
632
633- name: StringGetBytes4Arg
634  entrypoint: StdCoreStringGetBytes
635  bridge: odd_saved4
636  properties: [intrinsic]
637  signature:
638    - ark::coretypes::Array*   # resulting array of utf16 chars
639    - ark::ObjectHeader*       # src string
640    - int32_t                  # begin index
641    - int32_t                  # end index
642
643- name: StringGetBytesSlowPath
644  entrypoint: StdCoreStringGetBytes
645  bridge: slow_path
646  properties: [intrinsic]
647  signature:
648    - ark::coretypes::Array*   # resulting array of int8
649    - ark::ObjectHeader*       # src string
650    - int32_t                  # begin index
651    - int32_t                  # end index
652
653- name: StringIndexOf
654  entrypoint: StringIndexOf
655  bridge: none
656  properties: [irtoc]
657  signature:
658    - int32_t             # index of char in the string if any (result)
659    - ark::ObjectHeader*  # string
660    - uint16_t            # char to look up
661    - int32_t             # unused (always zero)
662
663- name: StringIndexOfAfter
664  entrypoint: StringIndexOfAfter
665  bridge: none
666  properties: [irtoc]
667  signature:
668    - int32_t             # index of char in the string if any (result)
669    - ark::ObjectHeader*  # string
670    - uint16_t            # char to look up
671    - int32_t             # index of char to start from
672
673- name: StringIndexOfCompressedSmall
674  entrypoint: StringIndexOfCompressedSmall
675  bridge: none
676  properties: [irtoc]
677  signature:
678    - int32_t             # index of char in the string if any (result)
679    - void*               # u8 string data ptr
680    - uint32_t            # string data size
681    - uint8_t             # char to look up
682
683- name: StringIndexOfCompressedMedium
684  entrypoint: StringIndexOfCompressedMedium
685  bridge: none
686  properties: [irtoc]
687  signature:
688    - int32_t             # index of char in the string if any (result)
689    - void*               # u8 string data ptr
690    - uint32_t            # string data size
691    - uint8_t             # char to look up
692
693- name: StringIndexOfCompressedLarge
694  entrypoint: StringIndexOfCompressedLarge
695  bridge: none
696  properties: [irtoc]
697  signature:
698    - int32_t             # index of char in the string if any (result)
699    - void*               # u8 string data ptr
700    - uint32_t            # string data size
701    - uint8_t             # char to look up
702
703- name: StringIndexOfCompressed
704  entrypoint: StringIndexOfCompressed
705  bridge: none
706  properties: [irtoc]
707  signature:
708    - int32_t             # index of char in the string if any (result)
709    - void*               # u8 string data ptr
710    - uint32_t            # string data size
711    - uint8_t             # char to look up
712
713- name: StringIndexOfUncompressedSmall
714  entrypoint: StringIndexOfUncompressedSmall
715  bridge: none
716  properties: [irtoc]
717  signature:
718    - int32_t             # index of char in the string if any (result)
719    - void*               # u16 string data ptr
720    - uint32_t            # string data size
721    - uint16_t            # char to look up
722
723- name: StringIndexOfUncompressedMedium
724  entrypoint: StringIndexOfUncompressedMedium
725  bridge: none
726  properties: [irtoc]
727  signature:
728    - int32_t             # index of char in the string if any (result)
729    - void*               # u16 string data ptr
730    - uint32_t            # string data size
731    - uint16_t            # char to look up
732
733- name: StringIndexOfUncompressed
734  entrypoint: StringIndexOfUncompressed
735  bridge: none
736  properties: [irtoc]
737  signature:
738    - int32_t             # index of char in the string if any (result)
739    - void*               # u16 string data ptr
740    - uint32_t            # string data size
741    - uint16_t            # char to look up
742
743- name: CreateStringFromCharCodeTlab
744  entrypoint: CreateStringFromCharCodeTlab
745  bridge: none
746  properties: [irtoc]
747  signature:
748    - ark::ObjectHeader*  # string (result)
749    - ark::ObjectHeader*  # array of numbers (f64)
750    - ark::Class*         # string class pointer
751
752- name: CreateStringFromCharCodeTlabCompressed
753  entrypoint: CreateStringFromCharCodeTlabCompressed
754  bridge: none
755  properties: [irtoc]
756  signature:
757    - ark::ObjectHeader*  # string (result)
758    - ark::ObjectHeader*  # array of numbers (f64)
759    - ark::Class*         # string class pointer
760
761- name: CreateStringFromCharCodeSlowPath
762  entrypoint: CreateStringFromCharCodeEntrypoint
763  bridge: slow_path
764  properties: []
765  signature:
766    - ark::coretypes::String*  # resulting string
767    - ark::ObjectHeader*       # array of numbers (f64)
768
769- name: CreateStringFromCharCode2Arg
770  entrypoint: CreateStringFromCharCodeEntrypoint
771  bridge: odd_saved2
772  properties: []
773  signature:
774    - ark::coretypes::String*  # resulting string
775    - ark::ObjectHeader*       # array of numbers (f64)
776
777- name: CreateStringFromCharCodeSingleTlab
778  entrypoint: CreateStringFromCharCodeSingleTlab
779  bridge: none
780  properties: [irtoc]
781  signature:
782    - ark::coretypes::String*  # resulting string
783    - uint64_t                 # number (double after a bitcast to uin64_t), char code
784    - ark::Class*              # string class pointer
785
786- name: CreateStringFromCharCodeSingleTlabCompressed
787  entrypoint: CreateStringFromCharCodeSingleTlabCompressed
788  bridge: none
789  properties: [irtoc]
790  signature:
791    - ark::coretypes::String*  # resulting string
792    - uint64_t                 # number (double after a bitcast to uin64_t), char code
793    - ark::Class*              # string class pointer
794
795- name: CreateStringFromCharCodeSingleSlowPath
796  entrypoint: CreateStringFromCharCodeSingleEntrypoint
797  bridge: slow_path
798  properties: []
799  signature:
800    - ark::coretypes::String*  # resulting string
801    - uint64_t                 # number (double after a bitcast to uin64_t), char code
802
803- name: CreateStringFromCharCodeSingle2Arg
804  entrypoint: CreateStringFromCharCodeSingleEntrypoint
805  bridge: odd_saved2
806  properties: []
807  signature:
808    - ark::coretypes::String*  # resulting string
809    - uint64_t                 # number (double after a bitcast to uin64_t), char code
810
811- name: StringRepeat
812  entrypoint: StringRepeatTlab
813  bridge: none
814  properties: [irtoc]
815  signature:
816    - ark::ObjectHeader*  # resulting array of uint8
817    - ark::ObjectHeader*       # src string
818    - int32_t                  # count
819
820- name: StringRepeatUsual
821  entrypoint: StdCoreStringRepeat
822  bridge: entrypoint
823  properties: [intrinsic]
824  signature:
825    - ark::ObjectHeader*  # resulting array of uint8
826    - ark::ObjectHeader*       # src string
827    - int32_t                  # count
828
829- name: StringRepeatSlowPath
830  entrypoint: StdCoreStringRepeat
831  bridge: slow_path
832  properties: [intrinsic]
833  signature:
834    - ark::ObjectHeader*  # resulting array of uint8
835    - ark::ObjectHeader*       # src string
836    - int32_t                  # count
837
838- name: Int8ArrayToReversed
839  entrypoint: Int8ArrayToReversedTlab
840  bridge: none
841  properties: [irtoc]
842  signature:
843    - ark::ObjectHeader*       # ret
844    - ark::ObjectHeader*       # obj
845
846- name: Int8ArrayToReversedOddSaved
847  entrypoint: EtsEscompatInt8ArrayToReversed
848  bridge: odd_saved
849  properties: [intrinsic]
850  signature:
851    - ark::ObjectHeader*       # ret
852    - ark::ObjectHeader*       # obj
853
854- name: Int8ArrayToReversedSlowPath
855  entrypoint: EtsEscompatInt8ArrayToReversed
856  bridge: slow_path
857  properties: [intrinsic]
858  signature:
859    - ark::ObjectHeader*       # ret
860    - ark::ObjectHeader*       # obj
861
862- name: Int16ArrayToReversed
863  entrypoint: Int16ArrayToReversedTlab
864  bridge: none
865  properties: [irtoc]
866  signature:
867    - ark::ObjectHeader*       # ret
868    - ark::ObjectHeader*       # obj
869
870- name: Int16ArrayToReversedOddSaved
871  entrypoint: EtsEscompatInt16ArrayToReversed
872  bridge: odd_saved
873  properties: [intrinsic]
874  signature:
875    - ark::ObjectHeader*       # ret
876    - ark::ObjectHeader*       # obj
877
878- name: Int16ArrayToReversedSlowPath
879  entrypoint: EtsEscompatInt16ArrayToReversed
880  bridge: slow_path
881  properties: [intrinsic]
882  signature:
883    - ark::ObjectHeader*       # ret
884    - ark::ObjectHeader*       # obj
885
886- name: Int32ArrayToReversed
887  entrypoint: Int32ArrayToReversedTlab
888  bridge: none
889  properties: [irtoc]
890  signature:
891    - ark::ObjectHeader*       # ret
892    - ark::ObjectHeader*       # obj
893
894- name: Int32ArrayToReversedOddSaved
895  entrypoint: EtsEscompatInt32ArrayToReversed
896  bridge: odd_saved
897  properties: [intrinsic]
898  signature:
899    - ark::ObjectHeader*       # ret
900    - ark::ObjectHeader*       # obj
901
902- name: Int32ArrayToReversedSlowPath
903  entrypoint: EtsEscompatInt32ArrayToReversed
904  bridge: slow_path
905  properties: [intrinsic]
906  signature:
907    - ark::ObjectHeader*       # ret
908    - ark::ObjectHeader*       # obj
909
910- name: BigInt64ArrayToReversed
911  entrypoint: BigInt64ArrayToReversedTlab
912  bridge: none
913  properties: [irtoc]
914  signature:
915    - ark::ObjectHeader*       # ret
916    - ark::ObjectHeader*       # obj
917
918- name: BigInt64ArrayToReversedOddSaved
919  entrypoint: EtsEscompatBigInt64ArrayToReversed
920  bridge: odd_saved
921  properties: [intrinsic]
922  signature:
923    - ark::ObjectHeader*       # ret
924    - ark::ObjectHeader*       # obj
925
926- name: BigInt64ArrayToReversedSlowPath
927  entrypoint: EtsEscompatBigInt64ArrayToReversed
928  bridge: slow_path
929  properties: [intrinsic]
930  signature:
931    - ark::ObjectHeader*       # ret
932    - ark::ObjectHeader*       # obj
933
934- name: Float32ArrayToReversed
935  entrypoint: Float32ArrayToReversedTlab
936  bridge: none
937  properties: [irtoc]
938  signature:
939    - ark::ObjectHeader*       # ret
940    - ark::ObjectHeader*       # obj
941
942- name: Float32ArrayToReversedOddSaved
943  entrypoint: EtsEscompatFloat32ArrayToReversed
944  bridge: odd_saved
945  properties: [intrinsic]
946  signature:
947    - ark::ObjectHeader*       # ret
948    - ark::ObjectHeader*       # obj
949
950- name: Float32ArrayToReversedSlowPath
951  entrypoint: EtsEscompatFloat32ArrayToReversed
952  bridge: slow_path
953  properties: [intrinsic]
954  signature:
955    - ark::ObjectHeader*       # ret
956    - ark::ObjectHeader*       # obj
957
958- name: Float64ArrayToReversed
959  entrypoint: Float64ArrayToReversedTlab
960  bridge: none
961  properties: [irtoc]
962  signature:
963    - ark::ObjectHeader*       # ret
964    - ark::ObjectHeader*       # obj
965
966- name: Float64ArrayToReversedOddSaved
967  entrypoint: EtsEscompatFloat64ArrayToReversed
968  bridge: odd_saved
969  properties: [intrinsic]
970  signature:
971    - ark::ObjectHeader*       # ret
972    - ark::ObjectHeader*       # obj
973
974- name: Float64ArrayToReversedSlowPath
975  entrypoint: EtsEscompatFloat64ArrayToReversed
976  bridge: slow_path
977  properties: [intrinsic]
978  signature:
979    - ark::ObjectHeader*       # ret
980    - ark::ObjectHeader*       # obj
981
982- name: Uint8ArrayToReversed
983  entrypoint: Uint8ArrayToReversedTlab
984  bridge: none
985  properties: [irtoc]
986  signature:
987    - ark::ObjectHeader*       # ret
988    - ark::ObjectHeader*       # obj
989
990- name: Uint8ArrayToReversedOddSaved
991  entrypoint: EtsEscompatUInt8ArrayToReversed
992  bridge: odd_saved
993  properties: [intrinsic]
994  signature:
995    - ark::ObjectHeader*       # ret
996    - ark::ObjectHeader*       # obj
997
998- name: Uint8ArrayToReversedSlowPath
999  entrypoint: EtsEscompatUInt8ArrayToReversed
1000  bridge: slow_path
1001  properties: [intrinsic]
1002  signature:
1003    - ark::ObjectHeader*       # ret
1004    - ark::ObjectHeader*       # obj
1005
1006- name: Uint16ArrayToReversed
1007  entrypoint: Uint16ArrayToReversedTlab
1008  bridge: none
1009  properties: [irtoc]
1010  signature:
1011    - ark::ObjectHeader*       # ret
1012    - ark::ObjectHeader*       # obj
1013
1014- name: Uint16ArrayToReversedOddSaved
1015  entrypoint: EtsEscompatUInt16ArrayToReversed
1016  bridge: odd_saved
1017  properties: [intrinsic]
1018  signature:
1019    - ark::ObjectHeader*       # ret
1020    - ark::ObjectHeader*       # obj
1021
1022- name: Uint16ArrayToReversedSlowPath
1023  entrypoint: EtsEscompatUInt16ArrayToReversed
1024  bridge: slow_path
1025  properties: [intrinsic]
1026  signature:
1027    - ark::ObjectHeader*       # ret
1028    - ark::ObjectHeader*       # obj
1029
1030- name: Uint32ArrayToReversed
1031  entrypoint: Uint32ArrayToReversedTlab
1032  bridge: none
1033  properties: [irtoc]
1034  signature:
1035    - ark::ObjectHeader*       # ret
1036    - ark::ObjectHeader*       # obj
1037
1038- name: Uint32ArrayToReversedOddSaved
1039  entrypoint: EtsEscompatUInt32ArrayToReversed
1040  bridge: odd_saved
1041  properties: [intrinsic]
1042  signature:
1043    - ark::ObjectHeader*       # ret
1044    - ark::ObjectHeader*       # obj
1045
1046- name: Uint32ArrayToReversedSlowPath
1047  entrypoint: EtsEscompatUInt32ArrayToReversed
1048  bridge: slow_path
1049  properties: [intrinsic]
1050  signature:
1051    - ark::ObjectHeader*       # ret
1052    - ark::ObjectHeader*       # obj
1053
1054- name: BigUint64ArrayToReversed
1055  entrypoint: BigUint64ArrayToReversedTlab
1056  bridge: none
1057  properties: [irtoc]
1058  signature:
1059    - ark::ObjectHeader*       # ret
1060    - ark::ObjectHeader*       # obj
1061
1062- name: BigUint64ArrayToReversedOddSaved
1063  entrypoint: EtsEscompatBigUInt64ArrayToReversed
1064  bridge: odd_saved
1065  properties: [intrinsic]
1066  signature:
1067    - ark::ObjectHeader*       # ret
1068    - ark::ObjectHeader*       # obj
1069
1070- name: BigUint64ArrayToReversedSlowPath
1071  entrypoint: EtsEscompatBigUInt64ArrayToReversed
1072  bridge: slow_path
1073  properties: [intrinsic]
1074  signature:
1075    - ark::ObjectHeader*       # ret
1076    - ark::ObjectHeader*       # obj
1077
1078- name: BeginGeneralNativeMethod
1079  entrypoint: BeginGeneralNativeMethod
1080  bridge: none
1081  properties: []
1082  signature:
1083    - void
1084
1085- name: EndGeneralNativeMethodPrim
1086  entrypoint: EndGeneralNativeMethodPrim
1087  bridge: none
1088  properties: []
1089  signature:
1090    - void
1091
1092- name: EndGeneralNativeMethodObj
1093  entrypoint: EndGeneralNativeMethodObj
1094  bridge: none
1095  properties: []
1096  signature:
1097    - ark::ObjectHeader*
1098    - ark::mem::Reference*
1099
1100- name: BeginQuickNativeMethod
1101  entrypoint: BeginQuickNativeMethod
1102  bridge: none
1103  properties: []
1104  signature:
1105    - void
1106
1107- name: EndQuickNativeMethodPrim
1108  entrypoint: EndQuickNativeMethodPrim
1109  bridge: none
1110  properties: []
1111  signature:
1112    - void
1113
1114- name: EndQuickNativeMethodObj
1115  entrypoint: EndQuickNativeMethodObj
1116  bridge: none
1117  properties: []
1118  signature:
1119    - ark::ObjectHeader*
1120    - ark::mem::Reference*
1121
1122- name: ResolveCallByName
1123  entrypoint: ResolveCallByNameEntrypoint
1124  bridge: entrypoint
1125  properties: []
1126  signature:
1127  - uintptr_t
1128  - const ark::Method*
1129  - ark::ObjectHeader*
1130  - size_t
1131
1132- name: Int8ArrayFillInternalFastPath
1133  entrypoint: Int8ArrayFillInternalFastPath
1134  bridge: none
1135  properties: [irtoc]
1136  signature:
1137    - void
1138    - ark::ObjectHeader*
1139    - int8_t
1140    - int32_t
1141    - int32_t
1142
1143- name: Int8ArrayFillInternalUsual
1144  entrypoint: EtsEscompatInt8ArrayFillInternal
1145  bridge: slow_path
1146  properties: [intrinsic]
1147  signature:
1148    - void
1149    - ark::ObjectHeader*
1150    - int8_t
1151    - int32_t
1152    - int32_t
1153
1154- name: Int16ArrayFillInternalFastPath
1155  entrypoint: Int16ArrayFillInternalFastPath
1156  bridge: none
1157  properties: [irtoc]
1158  signature:
1159    - void
1160    - ark::ObjectHeader*
1161    - int16_t
1162    - int32_t
1163    - int32_t
1164
1165- name: Int16ArrayFillInternalUsual
1166  entrypoint: EtsEscompatInt16ArrayFillInternal
1167  bridge: slow_path
1168  properties: [intrinsic]
1169  signature:
1170    - void
1171    - ark::ObjectHeader*
1172    - int16_t
1173    - int32_t
1174    - int32_t
1175
1176- name: Int32ArrayFillInternalFastPath
1177  entrypoint: Int32ArrayFillInternalFastPath
1178  bridge: none
1179  properties: [irtoc]
1180  signature:
1181    - void
1182    - ark::ObjectHeader*
1183    - int32_t
1184    - int32_t
1185    - int32_t
1186
1187- name: Int32ArrayFillInternalUsual
1188  entrypoint: EtsEscompatInt32ArrayFillInternal
1189  bridge: slow_path
1190  properties: [intrinsic]
1191  signature:
1192    - void
1193    - ark::ObjectHeader*
1194    - int32_t
1195    - int32_t
1196    - int32_t
1197
1198- name: BigInt64ArrayFillInternalFastPath
1199  entrypoint: BigInt64ArrayFillInternalFastPath
1200  bridge: none
1201  properties: [irtoc]
1202  signature:
1203    - void
1204    - ark::ObjectHeader*
1205    - int64_t
1206    - int32_t
1207    - int32_t
1208
1209- name: BigInt64ArrayFillInternalUsual
1210  entrypoint: EtsEscompatBigInt64ArrayFillInternal
1211  bridge: slow_path
1212  properties: [intrinsic]
1213  signature:
1214    - void
1215    - ark::ObjectHeader*
1216    - int64_t
1217    - int32_t
1218    - int32_t
1219
1220- name: Float32ArrayFillInternalFastPath
1221  entrypoint: Float32ArrayFillInternalFastPath
1222  bridge: none
1223  properties: [irtoc]
1224  signature:
1225    - void
1226    - ark::ObjectHeader*
1227    - int32_t
1228    - int32_t
1229    - int32_t
1230
1231- name: Float32ArrayFillInternalUsual
1232  entrypoint: EtsEscompatFloat32ArrayFillInternalInt
1233  bridge: slow_path
1234  properties: [intrinsic]
1235  signature:
1236    - void
1237    - ark::ObjectHeader*
1238    - int32_t
1239    - int32_t
1240    - int32_t
1241
1242- name: Float64ArrayFillInternalFastPath
1243  entrypoint: Float64ArrayFillInternalFastPath
1244  bridge: none
1245  properties: [irtoc]
1246  signature:
1247    - void
1248    - ark::ObjectHeader*
1249    - int64_t
1250    - int32_t
1251    - int32_t
1252
1253- name: Float64ArrayFillInternalUsual
1254  entrypoint: EtsEscompatFloat64ArrayFillInternalInt
1255  bridge: slow_path
1256  properties: [intrinsic]
1257  signature:
1258    - void
1259    - ark::ObjectHeader*
1260    - int64_t
1261    - int32_t
1262    - int32_t
1263
1264- name: UInt8ClampedArrayFillInternalFastPath
1265  entrypoint: UInt8ClampedArrayFillInternalFastPath
1266  bridge: none
1267  properties: [irtoc]
1268  signature:
1269    - void
1270    - ark::ObjectHeader*
1271    - int32_t
1272    - int32_t
1273    - int32_t
1274
1275- name: UInt8ClampedArrayFillInternalUsual
1276  entrypoint: EtsEscompatUInt8ClampedArrayFillInternal
1277  bridge: slow_path
1278  properties: [intrinsic]
1279  signature:
1280    - void
1281    - ark::ObjectHeader*
1282    - int32_t
1283    - int32_t
1284    - int32_t
1285
1286- name: UInt8ArrayFillInternalFastPath
1287  entrypoint: UInt8ArrayFillInternalFastPath
1288  bridge: none
1289  properties: [irtoc]
1290  signature:
1291    - void
1292    - ark::ObjectHeader*
1293    - int32_t
1294    - int32_t
1295    - int32_t
1296
1297- name: UInt8ArrayFillInternalUsual
1298  entrypoint: EtsEscompatUInt8ArrayFillInternal
1299  bridge: slow_path
1300  properties: [intrinsic]
1301  signature:
1302    - void
1303    - ark::ObjectHeader*
1304    - int32_t
1305    - int32_t
1306    - int32_t
1307
1308- name: UInt16ArrayFillInternalFastPath
1309  entrypoint: UInt16ArrayFillInternalFastPath
1310  bridge: none
1311  properties: [irtoc]
1312  signature:
1313    - void
1314    - ark::ObjectHeader*
1315    - int32_t
1316    - int32_t
1317    - int32_t
1318
1319- name: UInt16ArrayFillInternalUsual
1320  entrypoint: EtsEscompatUInt16ArrayFillInternal
1321  bridge: slow_path
1322  properties: [intrinsic]
1323  signature:
1324    - void
1325    - ark::ObjectHeader*
1326    - int32_t
1327    - int32_t
1328    - int32_t
1329
1330- name: UInt32ArrayFillInternalFastPath
1331  entrypoint: UInt32ArrayFillInternalFastPath
1332  bridge: none
1333  properties: [irtoc]
1334  signature:
1335    - void
1336    - ark::ObjectHeader*
1337    - int64_t
1338    - int32_t
1339    - int32_t
1340
1341- name: UInt32ArrayFillInternalUsual
1342  entrypoint: EtsEscompatUInt32ArrayFillInternal
1343  bridge: slow_path
1344  properties: [intrinsic]
1345  signature:
1346    - void
1347    - ark::ObjectHeader*
1348    - int64_t
1349    - int32_t
1350    - int32_t
1351
1352- name: BigUInt64ArrayFillInternalFastPath
1353  entrypoint: BigUInt64ArrayFillInternalFastPath
1354  bridge: none
1355  properties: [irtoc]
1356  signature:
1357    - void
1358    - ark::ObjectHeader*
1359    - int64_t
1360    - int32_t
1361    - int32_t
1362
1363- name: BigUInt64ArrayFillInternalUsual
1364  entrypoint: EtsEscompatBigUInt64ArrayFillInternal
1365  bridge: slow_path
1366  properties: [intrinsic]
1367  signature:
1368    - void
1369    - ark::ObjectHeader*
1370    - int64_t
1371    - int32_t
1372    - int32_t
1373
1374- name: WriteStringToMem
1375  entrypoint: WriteStringToMem
1376  bridge: none
1377  properties: [irtoc]
1378  signature:
1379      - int32_t             # bytes written
1380      - int64_t             # serialization buffer
1381      - ark::ObjectHeader*  # string to serialize
1382
1383- name: CreateStringFromMem
1384  entrypoint: CreateStringFromMem
1385  bridge: none
1386  properties: [irtoc]
1387  signature:
1388      - ark::ObjectHeader*  # deserialized string
1389      - int64_t             # serialization buffer
1390      - int32_t             # buffer length
1391      - void*               # String class object
1392
1393- name: CreateStringFromMemSlowPath
1394  entrypoint: UnsafeMemoryReadString
1395  bridge: slow_path
1396  properties: [intrinsic]
1397  signature:
1398      - ark::ObjectHeader*  # deserialized string
1399      - void*               # serialization buffer
1400      - int32_t             # buffer length
1401
1402- name: CreateStringFromMem3Arg
1403  entrypoint: UnsafeMemoryReadString
1404  bridge: odd_saved3
1405  properties: [intrinsic]
1406  signature:
1407      - ark::ObjectHeader*  # deserialized string
1408      - void*               # serialization buffer
1409      - int32_t             # buffer length
1410