Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/openj9
Path: blob/master/runtime/compiler/ilgen/J9ByteCode.hpp
6000 views
1
/*******************************************************************************
2
* Copyright (c) 2000, 2022 IBM Corp. and others
3
*
4
* This program and the accompanying materials are made available under
5
* the terms of the Eclipse Public License 2.0 which accompanies this
6
* distribution and is available at https://www.eclipse.org/legal/epl-2.0/
7
* or the Apache License, Version 2.0 which accompanies this distribution and
8
* is available at https://www.apache.org/licenses/LICENSE-2.0.
9
*
10
* This Source Code may also be made available under the following
11
* Secondary Licenses when the conditions for such availability set
12
* forth in the Eclipse Public License, v. 2.0 are satisfied: GNU
13
* General Public License, version 2 with the GNU Classpath
14
* Exception [1] and GNU General Public License, version 2 with the
15
* OpenJDK Assembly Exception [2].
16
*
17
* [1] https://www.gnu.org/software/classpath/license.html
18
* [2] http://openjdk.java.net/legal/assembly-exception.html
19
*
20
* SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception
21
*******************************************************************************/
22
23
#ifndef J9BYTECODEENUMS_INCL
24
#define J9BYTECODEENUMS_INCL
25
26
27
enum TR_J9ByteCode
28
{
29
J9BCnop,
30
J9BCaconstnull,
31
J9BCiconstm1,
32
J9BCiconst0, J9BCiconst1, J9BCiconst2, J9BCiconst3, J9BCiconst4, J9BCiconst5,
33
J9BClconst0, J9BClconst1,
34
J9BCfconst0, J9BCfconst1, J9BCfconst2,
35
J9BCdconst0, J9BCdconst1,
36
J9BCbipush, J9BCsipush,
37
J9BCldc, J9BCldcw, J9BCldc2lw, J9BCldc2dw,
38
J9BCiload, J9BClload, J9BCfload, J9BCdload, J9BCaload,
39
J9BCiload0, J9BCiload1, J9BCiload2, J9BCiload3,
40
J9BClload0, J9BClload1, J9BClload2, J9BClload3,
41
J9BCfload0, J9BCfload1, J9BCfload2, J9BCfload3,
42
J9BCdload0, J9BCdload1, J9BCdload2, J9BCdload3,
43
J9BCaload0, J9BCaload1, J9BCaload2, J9BCaload3,
44
J9BCiaload, J9BClaload, J9BCfaload, J9BCdaload, J9BCaaload, J9BCbaload, J9BCcaload, J9BCsaload,
45
J9BCiloadw, J9BClloadw, J9BCfloadw, J9BCdloadw, J9BCaloadw,
46
J9BCistore, J9BClstore, J9BCfstore, J9BCdstore, J9BCastore,
47
J9BCistorew, J9BClstorew, J9BCfstorew, J9BCdstorew, J9BCastorew,
48
J9BCistore0, J9BCistore1, J9BCistore2, J9BCistore3,
49
J9BClstore0, J9BClstore1, J9BClstore2, J9BClstore3,
50
J9BCfstore0, J9BCfstore1, J9BCfstore2, J9BCfstore3,
51
J9BCdstore0, J9BCdstore1, J9BCdstore2, J9BCdstore3,
52
J9BCastore0, J9BCastore1, J9BCastore2, J9BCastore3,
53
J9BCiastore, J9BClastore, J9BCfastore, J9BCdastore, J9BCaastore, J9BCbastore, J9BCcastore, J9BCsastore,
54
J9BCpop, J9BCpop2,
55
J9BCdup, J9BCdupx1, J9BCdupx2, J9BCdup2, J9BCdup2x1, J9BCdup2x2,
56
J9BCswap,
57
J9BCiadd, J9BCladd, J9BCfadd, J9BCdadd,
58
J9BCisub, J9BClsub, J9BCfsub, J9BCdsub,
59
J9BCimul, J9BClmul, J9BCfmul, J9BCdmul,
60
J9BCidiv, J9BCldiv, J9BCfdiv, J9BCddiv,
61
J9BCirem, J9BClrem, J9BCfrem, J9BCdrem,
62
J9BCineg, J9BClneg, J9BCfneg, J9BCdneg,
63
J9BCishl, J9BClshl, J9BCishr, J9BClshr, J9BCiushr, J9BClushr,
64
J9BCiand, J9BCland,
65
J9BCior, J9BClor,
66
J9BCixor, J9BClxor,
67
J9BCiinc, J9BCiincw,
68
J9BCi2l, J9BCi2f, J9BCi2d,
69
J9BCl2i, J9BCl2f, J9BCl2d, J9BCf2i, J9BCf2l, J9BCf2d,
70
J9BCd2i, J9BCd2l, J9BCd2f,
71
J9BCi2b, J9BCi2c, J9BCi2s,
72
J9BClcmp, J9BCfcmpl, J9BCfcmpg, J9BCdcmpl, J9BCdcmpg,
73
J9BCifeq, J9BCifne, J9BCiflt, J9BCifge, J9BCifgt, J9BCifle,
74
J9BCificmpeq, J9BCificmpne, J9BCificmplt, J9BCificmpge, J9BCificmpgt, J9BCificmple, J9BCifacmpeq, J9BCifacmpne,
75
J9BCifnull, J9BCifnonnull,
76
J9BCgoto,
77
J9BCgotow,
78
J9BCtableswitch, J9BClookupswitch,
79
J9BCgenericReturn,
80
J9BCgetstatic, J9BCputstatic,
81
J9BCgetfield, J9BCputfield,
82
J9BCinvokevirtual, J9BCinvokespecial, J9BCinvokestatic, J9BCinvokeinterface, J9BCinvokedynamic, J9BCinvokehandle, J9BCinvokehandlegeneric,J9BCinvokespecialsplit,
83
84
/** \brief
85
* Pops 1 int32_t argument off the stack and truncates to a uint16_t.
86
*/
87
J9BCReturnC,
88
89
/** \brief
90
* Pops 1 int32_t argument off the stack and truncates to a int16_t.
91
*/
92
J9BCReturnS,
93
94
/** \brief
95
* Pops 1 int32_t argument off the stack and truncates to a int8_t.
96
*/
97
J9BCReturnB,
98
99
/** \brief
100
* Pops 1 int32_t argument off the stack returns the single lowest order bit.
101
*/
102
J9BCReturnZ,
103
104
J9BCinvokestaticsplit, J9BCinvokeinterface2,
105
J9BCnew, J9BCnewarray, J9BCanewarray, J9BCmultianewarray,
106
J9BCarraylength,
107
J9BCathrow,
108
J9BCcheckcast,
109
J9BCinstanceof,
110
J9BCmonitorenter, J9BCmonitorexit,
111
J9BCwide,
112
J9BCasyncCheck,
113
J9BCaconst_init,
114
J9BCwithfield,
115
J9BCbreakpoint,
116
J9BCunknown
117
};
118
119
#endif
120
121