• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022-2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef ECMASCRIPT_JSPANDAFILE_BYTECODE_INST_OLD_INSTRUCTION_ENUM_H
17 #define ECMASCRIPT_JSPANDAFILE_BYTECODE_INST_OLD_INSTRUCTION_ENUM_H
18 
19 enum class Format : uint8_t {
20     ID16,
21     ID32,
22     IMM16,
23     IMM16_V16,
24     IMM32,
25     IMM4_V4_V4_V4,
26     IMM4_V4_V4_V4_V4_V4,
27     IMM64,
28     IMM8,
29     NONE,
30     PREF_ID16_IMM16_IMM16_V8_V8,
31     PREF_ID16_IMM16_V8,
32     PREF_ID32,
33     PREF_ID32_IMM8,
34     PREF_ID32_V8,
35     PREF_IMM16,
36     PREF_IMM16_IMM16,
37     PREF_IMM16_IMM16_V8,
38     PREF_IMM16_V8,
39     PREF_IMM16_V8_V8,
40     PREF_IMM32,
41     PREF_IMM4_IMM4,
42     PREF_IMM4_IMM4_V8,
43     PREF_IMM8_IMM8,
44     PREF_IMM8_IMM8_V8,
45     PREF_NONE,
46     PREF_V4_V4,
47     PREF_V8,
48     PREF_V8_IMM32,
49     PREF_V8_V8,
50     PREF_V8_V8_V8,
51     PREF_V8_V8_V8_V8,
52     V16_V16,
53     V4_IMM4,
54     V4_IMM4_ID16,
55     V4_V4,
56     V4_V4_ID16,
57     V4_V4_V4_IMM4_ID16,
58     V4_V4_V4_V4_ID16,
59     V8,
60     V8_ID16,
61     V8_ID32,
62     V8_IMM16,
63     V8_IMM32,
64     V8_IMM64,
65     V8_IMM8,
66     V8_V8,
67 };
68 
69 enum class Opcode {
70     NOP = 0,
71     MOV_V4_V4 = 1,
72     MOV_V8_V8 = 2,
73     MOV_V16_V16 = 3,
74     MOV_64_V4_V4 = 4,
75     MOV_64_V16_V16 = 5,
76     MOV_OBJ_V4_V4 = 6,
77     MOV_OBJ_V8_V8 = 7,
78     MOV_OBJ_V16_V16 = 8,
79     MOVI_V4_IMM4 = 9,
80     MOVI_V8_IMM8 = 10,
81     MOVI_V8_IMM16 = 11,
82     MOVI_V8_IMM32 = 12,
83     MOVI_64_V8_IMM64 = 13,
84     FMOVI_64_V8_IMM64 = 14,
85     MOV_NULL_V8 = 15,
86     LDA_V8 = 16,
87     LDA_64_V8 = 17,
88     LDA_OBJ_V8 = 18,
89     LDAI_IMM8 = 19,
90     LDAI_IMM16 = 20,
91     LDAI_IMM32 = 21,
92     LDAI_64_IMM64 = 22,
93     FLDAI_64_IMM64 = 23,
94     LDA_STR_ID32 = 24,
95     LDA_CONST_V8_ID32 = 25,
96     LDA_TYPE_ID16 = 26,
97     LDA_NULL = 27,
98     STA_V8 = 28,
99     STA_64_V8 = 29,
100     STA_OBJ_V8 = 30,
101     CMP_64_V8 = 31,
102     FCMPL_64_V8 = 32,
103     FCMPG_64_V8 = 33,
104     JMP_IMM8 = 34,
105     JMP_IMM16 = 35,
106     JMP_IMM32 = 36,
107     JEQ_OBJ_V8_IMM8 = 37,
108     JEQ_OBJ_V8_IMM16 = 38,
109     JNE_OBJ_V8_IMM8 = 39,
110     JNE_OBJ_V8_IMM16 = 40,
111     JEQZ_OBJ_IMM8 = 41,
112     JEQZ_OBJ_IMM16 = 42,
113     JNEZ_OBJ_IMM8 = 43,
114     JNEZ_OBJ_IMM16 = 44,
115     JEQZ_IMM8 = 45,
116     JEQZ_IMM16 = 46,
117     JNEZ_IMM8 = 47,
118     JNEZ_IMM16 = 48,
119     JLTZ_IMM8 = 49,
120     JLTZ_IMM16 = 50,
121     JGTZ_IMM8 = 51,
122     JGTZ_IMM16 = 52,
123     JLEZ_IMM8 = 53,
124     JLEZ_IMM16 = 54,
125     JGEZ_IMM8 = 55,
126     JGEZ_IMM16 = 56,
127     JEQ_V8_IMM8 = 57,
128     JEQ_V8_IMM16 = 58,
129     JNE_V8_IMM8 = 59,
130     JNE_V8_IMM16 = 60,
131     JLT_V8_IMM8 = 61,
132     JLT_V8_IMM16 = 62,
133     JGT_V8_IMM8 = 63,
134     JGT_V8_IMM16 = 64,
135     JLE_V8_IMM8 = 65,
136     JLE_V8_IMM16 = 66,
137     JGE_V8_IMM8 = 67,
138     JGE_V8_IMM16 = 68,
139     FNEG_64 = 69,
140     NEG = 70,
141     NEG_64 = 71,
142     ADD2_V8 = 72,
143     ADD2_64_V8 = 73,
144     SUB2_V8 = 74,
145     SUB2_64_V8 = 75,
146     MUL2_V8 = 76,
147     MUL2_64_V8 = 77,
148     FADD2_64_V8 = 78,
149     FSUB2_64_V8 = 79,
150     FMUL2_64_V8 = 80,
151     FDIV2_64_V8 = 81,
152     FMOD2_64_V8 = 82,
153     DIV2_V8 = 83,
154     DIV2_64_V8 = 84,
155     MOD2_V8 = 85,
156     MOD2_64_V8 = 86,
157     ADDI_IMM8 = 87,
158     SUBI_IMM8 = 88,
159     MULI_IMM8 = 89,
160     ANDI_IMM32 = 90,
161     ORI_IMM32 = 91,
162     SHLI_IMM8 = 92,
163     SHRI_IMM8 = 93,
164     ASHRI_IMM8 = 94,
165     DIVI_IMM8 = 95,
166     MODI_IMM8 = 96,
167     ADD_V4_V4 = 97,
168     SUB_V4_V4 = 98,
169     MUL_V4_V4 = 99,
170     DIV_V4_V4 = 100,
171     MOD_V4_V4 = 101,
172     INCI_V4_IMM4 = 102,
173     LDARR_8_V8 = 103,
174     LDARRU_8_V8 = 104,
175     LDARR_16_V8 = 105,
176     LDARRU_16_V8 = 106,
177     LDARR_V8 = 107,
178     LDARR_64_V8 = 108,
179     FLDARR_32_V8 = 109,
180     FLDARR_64_V8 = 110,
181     LDARR_OBJ_V8 = 111,
182     STARR_8_V4_V4 = 112,
183     STARR_16_V4_V4 = 113,
184     STARR_V4_V4 = 114,
185     STARR_64_V4_V4 = 115,
186     FSTARR_32_V4_V4 = 116,
187     FSTARR_64_V4_V4 = 117,
188     STARR_OBJ_V4_V4 = 118,
189     LENARR_V8 = 119,
190     NEWARR_V4_V4_ID16 = 120,
191     NEWOBJ_V8_ID16 = 121,
192     INITOBJ_SHORT_V4_V4_ID16 = 122,
193     INITOBJ_V4_V4_V4_V4_ID16 = 123,
194     INITOBJ_RANGE_V8_ID16 = 124,
195     LDOBJ_V8_ID16 = 125,
196     LDOBJ_64_V8_ID16 = 126,
197     LDOBJ_OBJ_V8_ID16 = 127,
198     STOBJ_V8_ID16 = 128,
199     STOBJ_64_V8_ID16 = 129,
200     STOBJ_OBJ_V8_ID16 = 130,
201     LDOBJ_V_V4_V4_ID16 = 131,
202     LDOBJ_V_64_V4_V4_ID16 = 132,
203     LDOBJ_V_OBJ_V4_V4_ID16 = 133,
204     STOBJ_V_V4_V4_ID16 = 134,
205     STOBJ_V_64_V4_V4_ID16 = 135,
206     STOBJ_V_OBJ_V4_V4_ID16 = 136,
207     LDSTATIC_ID16 = 137,
208     LDSTATIC_64_ID16 = 138,
209     LDSTATIC_OBJ_ID16 = 139,
210     STSTATIC_ID16 = 140,
211     STSTATIC_64_ID16 = 141,
212     STSTATIC_OBJ_ID16 = 142,
213     RETURN = 143,
214     RETURN_64 = 144,
215     RETURN_OBJ = 145,
216     RETURN_VOID = 146,
217     THROW_V8 = 147,
218     CHECKCAST_ID16 = 148,
219     ISINSTANCE_ID16 = 149,
220     CALL_SHORT_V4_V4_ID16 = 150,
221     CALL_V4_V4_V4_V4_ID16 = 151,
222     CALL_RANGE_V8_ID16 = 152,
223     CALL_ACC_SHORT_V4_IMM4_ID16 = 153,
224     CALL_ACC_V4_V4_V4_IMM4_ID16 = 154,
225     CALL_VIRT_SHORT_V4_V4_ID16 = 155,
226     CALL_VIRT_V4_V4_V4_V4_ID16 = 156,
227     CALL_VIRT_RANGE_V8_ID16 = 157,
228     CALL_VIRT_ACC_SHORT_V4_IMM4_ID16 = 158,
229     CALL_VIRT_ACC_V4_V4_V4_IMM4_ID16 = 159,
230     MOV_DYN_V8_V8 = 160,
231     MOV_DYN_V16_V16 = 161,
232     LDA_DYN_V8 = 162,
233     STA_DYN_V8 = 163,
234     LDAI_DYN_IMM32 = 164,
235     FLDAI_DYN_IMM64 = 165,
236     RETURN_DYN = 166,
237     CALLI_DYN_SHORT_IMM4_V4_V4_V4 = 167,
238     CALLI_DYN_IMM4_V4_V4_V4_V4_V4 = 168,
239     CALLI_DYN_RANGE_IMM16_V16 = 169,
240     FMOVI_PREF_V8_IMM32 = 236,
241     I32TOF64_PREF_NONE = 237,
242     UCMP_PREF_V8 = 238,
243     NOT_PREF_NONE = 239,
244     ECMA_LDNAN_PREF_NONE = 255,
245     FLDAI_PREF_IMM32 = 492,
246     U32TOF64_PREF_NONE = 493,
247     UCMP_64_PREF_V8 = 494,
248     NOT_64_PREF_NONE = 495,
249     ECMA_LDINFINITY_PREF_NONE = 511,
250     FCMPL_PREF_V8 = 748,
251     I64TOF64_PREF_NONE = 749,
252     DIVU2_PREF_V8 = 750,
253     AND2_PREF_V8 = 751,
254     ECMA_LDGLOBALTHIS_PREF_NONE = 767,
255     FCMPG_PREF_V8 = 1004,
256     U64TOF64_PREF_NONE = 1005,
257     DIVU2_64_PREF_V8 = 1006,
258     AND2_64_PREF_V8 = 1007,
259     ECMA_LDUNDEFINED_PREF_NONE = 1023,
260     FNEG_PREF_NONE = 1260,
261     F64TOI32_PREF_NONE = 1261,
262     MODU2_PREF_V8 = 1262,
263     OR2_PREF_V8 = 1263,
264     ECMA_LDNULL_PREF_NONE = 1279,
265     FADD2_PREF_V8 = 1516,
266     F64TOI64_PREF_NONE = 1517,
267     MODU2_64_PREF_V8 = 1518,
268     OR2_64_PREF_V8 = 1519,
269     ECMA_LDSYMBOL_PREF_NONE = 1535,
270     FSUB2_PREF_V8 = 1772,
271     F64TOU32_PREF_NONE = 1773,
272     XOR2_PREF_V8 = 1775,
273     ECMA_LDGLOBAL_PREF_NONE = 1791,
274     FMUL2_PREF_V8 = 2028,
275     F64TOU64_PREF_NONE = 2029,
276     XOR2_64_PREF_V8 = 2031,
277     ECMA_LDTRUE_PREF_NONE = 2047,
278     FDIV2_PREF_V8 = 2284,
279     I32TOU1_PREF_NONE = 2285,
280     SHL2_PREF_V8 = 2287,
281     ECMA_LDFALSE_PREF_NONE = 2303,
282     FMOD2_PREF_V8 = 2540,
283     I64TOU1_PREF_NONE = 2541,
284     SHL2_64_PREF_V8 = 2543,
285     ECMA_THROWDYN_PREF_NONE = 2559,
286     I32TOF32_PREF_NONE = 2796,
287     U32TOU1_PREF_NONE = 2797,
288     SHR2_PREF_V8 = 2799,
289     ECMA_TYPEOFDYN_PREF_NONE = 2815,
290     U32TOF32_PREF_NONE = 3052,
291     U64TOU1_PREF_NONE = 3053,
292     SHR2_64_PREF_V8 = 3055,
293     ECMA_LDLEXENVDYN_PREF_NONE = 3071,
294     I64TOF32_PREF_NONE = 3308,
295     I32TOI64_PREF_NONE = 3309,
296     ASHR2_PREF_V8 = 3311,
297     ECMA_POPLEXENVDYN_PREF_NONE = 3327,
298     U64TOF32_PREF_NONE = 3564,
299     I32TOI16_PREF_NONE = 3565,
300     ASHR2_64_PREF_V8 = 3567,
301     ECMA_GETUNMAPPEDARGS_PREF_NONE = 3583,
302     F32TOF64_PREF_NONE = 3820,
303     I32TOU16_PREF_NONE = 3821,
304     XORI_PREF_IMM32 = 3823,
305     ECMA_GETPROPITERATOR_PREF_NONE = 3839,
306     F32TOI32_PREF_NONE = 4076,
307     I32TOI8_PREF_NONE = 4077,
308     AND_PREF_V4_V4 = 4079,
309     ECMA_ASYNCFUNCTIONENTER_PREF_NONE = 4095,
310     F32TOI64_PREF_NONE = 4332,
311     I32TOU8_PREF_NONE = 4333,
312     OR_PREF_V4_V4 = 4335,
313     ECMA_LDHOLE_PREF_NONE = 4351,
314     F32TOU32_PREF_NONE = 4588,
315     I64TOI32_PREF_NONE = 4589,
316     XOR_PREF_V4_V4 = 4591,
317     ECMA_RETURNUNDEFINED_PREF_NONE = 4607,
318     F32TOU64_PREF_NONE = 4844,
319     U32TOI64_PREF_NONE = 4845,
320     SHL_PREF_V4_V4 = 4847,
321     ECMA_CREATEEMPTYOBJECT_PREF_NONE = 4863,
322     F64TOF32_PREF_NONE = 5100,
323     U32TOI16_PREF_NONE = 5101,
324     SHR_PREF_V4_V4 = 5103,
325     ECMA_CREATEEMPTYARRAY_PREF_NONE = 5119,
326     U32TOU16_PREF_NONE = 5357,
327     ASHR_PREF_V4_V4 = 5359,
328     ECMA_GETITERATOR_PREF_NONE = 5375,
329     U32TOI8_PREF_NONE = 5613,
330     ECMA_THROWTHROWNOTEXISTS_PREF_NONE = 5631,
331     U32TOU8_PREF_NONE = 5869,
332     ECMA_THROWPATTERNNONCOERCIBLE_PREF_NONE = 5887,
333     U64TOI32_PREF_NONE = 6125,
334     ECMA_LDHOMEOBJECT_PREF_NONE = 6143,
335     U64TOU32_PREF_NONE = 6381,
336     ECMA_THROWDELETESUPERPROPERTY_PREF_NONE = 6399,
337     ECMA_DEBUGGER_PREF_NONE = 6655,
338     ECMA_ADD2DYN_PREF_V8 = 6911,
339     ECMA_SUB2DYN_PREF_V8 = 7167,
340     ECMA_MUL2DYN_PREF_V8 = 7423,
341     ECMA_DIV2DYN_PREF_V8 = 7679,
342     ECMA_MOD2DYN_PREF_V8 = 7935,
343     ECMA_EQDYN_PREF_V8 = 8191,
344     ECMA_NOTEQDYN_PREF_V8 = 8447,
345     ECMA_LESSDYN_PREF_V8 = 8703,
346     ECMA_LESSEQDYN_PREF_V8 = 8959,
347     ECMA_GREATERDYN_PREF_V8 = 9215,
348     ECMA_GREATEREQDYN_PREF_V8 = 9471,
349     ECMA_SHL2DYN_PREF_V8 = 9727,
350     ECMA_SHR2DYN_PREF_V8 = 9983,
351     ECMA_ASHR2DYN_PREF_V8 = 10239,
352     ECMA_AND2DYN_PREF_V8 = 10495,
353     ECMA_OR2DYN_PREF_V8 = 10751,
354     ECMA_XOR2DYN_PREF_V8 = 11007,
355     ECMA_TONUMBER_PREF_V8 = 11263,
356     ECMA_NEGDYN_PREF_V8 = 11519,
357     ECMA_NOTDYN_PREF_V8 = 11775,
358     ECMA_INCDYN_PREF_V8 = 12031,
359     ECMA_DECDYN_PREF_V8 = 12287,
360     ECMA_EXPDYN_PREF_V8 = 12543,
361     ECMA_ISINDYN_PREF_V8 = 12799,
362     ECMA_INSTANCEOFDYN_PREF_V8 = 13055,
363     ECMA_STRICTNOTEQDYN_PREF_V8 = 13311,
364     ECMA_STRICTEQDYN_PREF_V8 = 13567,
365     ECMA_RESUMEGENERATOR_PREF_V8 = 13823,
366     ECMA_GETRESUMEMODE_PREF_V8 = 14079,
367     ECMA_CREATEGENERATOROBJ_PREF_V8 = 14335,
368     ECMA_THROWCONSTASSIGNMENT_PREF_V8 = 14591,
369     ECMA_GETTEMPLATEOBJECT_PREF_V8 = 14847,
370     ECMA_GETNEXTPROPNAME_PREF_V8 = 15103,
371     ECMA_CALLARG0DYN_PREF_V8 = 15359,
372     ECMA_THROWIFNOTOBJECT_PREF_V8 = 15615,
373     ECMA_ITERNEXT_PREF_V8 = 15871,
374     ECMA_CLOSEITERATOR_PREF_V8 = 16127,
375     ECMA_COPYMODULE_PREF_V8 = 16383,
376     ECMA_SUPERCALLSPREAD_PREF_V8 = 16639,
377     ECMA_DELOBJPROP_PREF_V8_V8 = 16895,
378     ECMA_NEWOBJSPREADDYN_PREF_V8_V8 = 17151,
379     ECMA_CREATEITERRESULTOBJ_PREF_V8_V8 = 17407,
380     ECMA_SUSPENDGENERATOR_PREF_V8_V8 = 17663,
381     ECMA_ASYNCFUNCTIONAWAITUNCAUGHT_PREF_V8_V8 = 17919,
382     ECMA_THROWUNDEFINEDIFHOLE_PREF_V8_V8 = 18175,
383     ECMA_CALLARG1DYN_PREF_V8_V8 = 18431,
384     ECMA_COPYDATAPROPERTIES_PREF_V8_V8 = 18687,
385     ECMA_STARRAYSPREAD_PREF_V8_V8 = 18943,
386     ECMA_GETITERATORNEXT_PREF_V8_V8 = 19199,
387     ECMA_SETOBJECTWITHPROTO_PREF_V8_V8 = 19455,
388     ECMA_LDOBJBYVALUE_PREF_V8_V8 = 19711,
389     ECMA_STOBJBYVALUE_PREF_V8_V8 = 19967,
390     ECMA_STOWNBYVALUE_PREF_V8_V8 = 20223,
391     ECMA_LDSUPERBYVALUE_PREF_V8_V8 = 20479,
392     ECMA_STSUPERBYVALUE_PREF_V8_V8 = 20735,
393     ECMA_LDOBJBYINDEX_PREF_V8_IMM32 = 20991,
394     ECMA_STOBJBYINDEX_PREF_V8_IMM32 = 21247,
395     ECMA_STOWNBYINDEX_PREF_V8_IMM32 = 21503,
396     ECMA_CALLSPREADDYN_PREF_V8_V8_V8 = 21759,
397     ECMA_ASYNCFUNCTIONRESOLVE_PREF_V8_V8_V8 = 22015,
398     ECMA_ASYNCFUNCTIONREJECT_PREF_V8_V8_V8 = 22271,
399     ECMA_CALLARGS2DYN_PREF_V8_V8_V8 = 22527,
400     ECMA_CALLARGS3DYN_PREF_V8_V8_V8_V8 = 22783,
401     ECMA_DEFINEGETTERSETTERBYVALUE_PREF_V8_V8_V8_V8 = 23039,
402     ECMA_NEWOBJDYNRANGE_PREF_IMM16_V8 = 23295,
403     ECMA_CALLRANGEDYN_PREF_IMM16_V8 = 23551,
404     ECMA_CALLTHISRANGEDYN_PREF_IMM16_V8 = 23807,
405     ECMA_SUPERCALL_PREF_IMM16_V8 = 24063,
406     ECMA_CREATEOBJECTWITHEXCLUDEDKEYS_PREF_IMM16_V8_V8 = 24319,
407     ECMA_DEFINEFUNCDYN_PREF_ID16_IMM16_V8 = 24575,
408     ECMA_DEFINENCFUNCDYN_PREF_ID16_IMM16_V8 = 24831,
409     ECMA_DEFINEGENERATORFUNC_PREF_ID16_IMM16_V8 = 25087,
410     ECMA_DEFINEASYNCFUNC_PREF_ID16_IMM16_V8 = 25343,
411     ECMA_DEFINEMETHOD_PREF_ID16_IMM16_V8 = 25599,
412     ECMA_NEWLEXENVDYN_PREF_IMM16 = 25855,
413     ECMA_COPYRESTARGS_PREF_IMM16 = 26111,
414     ECMA_CREATEARRAYWITHBUFFER_PREF_IMM16 = 26367,
415     ECMA_CREATEOBJECTHAVINGMETHOD_PREF_IMM16 = 26623,
416     ECMA_THROWIFSUPERNOTCORRECTCALL_PREF_IMM16 = 26879,
417     ECMA_CREATEOBJECTWITHBUFFER_PREF_IMM16 = 27135,
418     ECMA_LDLEXVARDYN_PREF_IMM4_IMM4 = 27391,
419     ECMA_LDLEXVARDYN_PREF_IMM8_IMM8 = 27647,
420     ECMA_LDLEXVARDYN_PREF_IMM16_IMM16 = 27903,
421     ECMA_STLEXVARDYN_PREF_IMM4_IMM4_V8 = 28159,
422     ECMA_STLEXVARDYN_PREF_IMM8_IMM8_V8 = 28415,
423     ECMA_STLEXVARDYN_PREF_IMM16_IMM16_V8 = 28671,
424     ECMA_DEFINECLASSWITHBUFFER_PREF_ID16_IMM16_IMM16_V8_V8 = 28927,
425     ECMA_GETMODULENAMESPACE_PREF_ID32 = 29183,
426     ECMA_STMODULEVAR_PREF_ID32 = 29439,
427     ECMA_TRYLDGLOBALBYNAME_PREF_ID32 = 29695,
428     ECMA_TRYSTGLOBALBYNAME_PREF_ID32 = 29951,
429     ECMA_LDGLOBALVAR_PREF_ID32 = 30207,
430     ECMA_STGLOBALVAR_PREF_ID32 = 30463,
431     ECMA_LDOBJBYNAME_PREF_ID32_V8 = 30719,
432     ECMA_STOBJBYNAME_PREF_ID32_V8 = 30975,
433     ECMA_STOWNBYNAME_PREF_ID32_V8 = 31231,
434     ECMA_LDSUPERBYNAME_PREF_ID32_V8 = 31487,
435     ECMA_STSUPERBYNAME_PREF_ID32_V8 = 31743,
436     ECMA_LDMODULEVAR_PREF_ID32_IMM8 = 31999,
437     ECMA_CREATEREGEXPWITHLITERAL_PREF_ID32_IMM8 = 32255,
438     ECMA_ISTRUE_PREF_NONE = 32511,
439     ECMA_ISFALSE_PREF_NONE = 32767,
440     ECMA_STCONSTTOGLOBALRECORD_PREF_ID32 = 33023,
441     ECMA_STLETTOGLOBALRECORD_PREF_ID32 = 33279,
442     ECMA_STCLASSTOGLOBALRECORD_PREF_ID32 = 33535,
443     ECMA_STOWNBYVALUEWITHNAMESET_PREF_V8_V8 = 33791,
444     ECMA_STOWNBYNAMEWITHNAMESET_PREF_ID32_V8 = 34047,
445     ECMA_LDFUNCTION_PREF_NONE = 34303,
446     ECMA_NEWLEXENVWITHNAMEDYN_PREF_IMM16_IMM16 = 34559,
447     ECMA_LDBIGINT_PREF_ID32 = 34815,
448     ECMA_TONUMERIC_PREF_V8 = 35071,
449     ECMA_CREATEASYNCGENERATOROBJ_PREF_V8 = 35327,
450     ECMA_ASYNCGENERATORRESOLVE_PREF_V8_V8_V8 = 35583,
451     ECMA_DEFINEASYNCGENERATORFUNC_PREF_ID16_IMM16_V8 = 35839,
452     ECMA_DYNAMICIMPORT_PREF_V8 = 36095,
453     ECMA_LDPATCHVAR_PREF_IMM16 = 36351,
454     ECMA_STPATCHVAR_PREF_IMM16 = 36607,
455     ECMA_ASYNCGENERATORREJECT_PREF_V8_V8 = 36863,
456     LAST = ECMA_ASYNCGENERATORREJECT_PREF_V8_V8
457 };
458 
459 enum Flags : uint32_t {
460     TYPE_ID = 0x1,
461     METHOD_ID = 0x2,
462     STRING_ID = 0x4,
463     LITERALARRAY_ID = 0x8,
464     FIELD_ID = 0x10,
465     CALL = 0x20,
466     CALL_VIRT = 0x40,
467     RETURN = 0x80,
468     SUSPEND = 0x100,
469     JUMP = 0x200,
470     CONDITIONAL = 0x400,
471     FLOAT = 0x800,
472     DYNAMIC = 0x1000,
473     MAYBE_DYNAMIC = 0x2000,
474     LANGUAGE_TYPE = 0x4000,
475     INITIALIZE_TYPE = 0x8000,
476     ACC_NONE = 0x10000,
477     ACC_READ = 0x20000,
478     ACC_WRITE = 0x40000,
479 };
480 
481 #endif  // ECMASCRIPT_JSPANDAFILE_BYTECODE_INST_OLD_INSTRUCTION_ENUM_H
482