View Javadoc
1   package mockit.asm.jvmConstants;
2   
3   /**
4    * Defines the JVM opcodes. This interface does not define all the JVM opcodes because some opcodes are automatically
5    * handled. For example, the xLOAD and xSTORE opcodes are automatically replaced by xLOAD_n and xSTORE_n opcodes when
6    * possible. The xLOAD_n and xSTORE_n opcodes are therefore not defined in this interface. Likewise for LDC,
7    * automatically replaced by LDC_W or LDC2_W when necessary, WIDE, GOTO_W and JSR_W.
8    */
9   public interface Opcodes {
10      // visitInsn
11      int NOP = 0;
12      int ACONST_NULL = 1;
13      int ICONST_M1 = 2;
14      int ICONST_0 = 3;
15      int ICONST_1 = 4;
16      int ICONST_2 = 5;
17      int ICONST_3 = 6;
18      int ICONST_4 = 7;
19      int ICONST_5 = 8;
20      int LCONST_0 = 9;
21      int LCONST_1 = 10;
22      int FCONST_0 = 11;
23      int FCONST_1 = 12;
24      int FCONST_2 = 13;
25      int DCONST_0 = 14;
26      int DCONST_1 = 15;
27      int IALOAD = 46;
28      int LALOAD = 47;
29      int FALOAD = 48;
30      int DALOAD = 49;
31      int AALOAD = 50;
32      int BALOAD = 51;
33      int CALOAD = 52;
34      int SALOAD = 53;
35      int IASTORE = 79;
36      int LASTORE = 80;
37      int FASTORE = 81;
38      int DASTORE = 82;
39      int AASTORE = 83;
40      int BASTORE = 84;
41      int CASTORE = 85;
42      int SASTORE = 86;
43      int POP = 87;
44      int POP2 = 88;
45      int DUP = 89;
46      int DUP_X1 = 90;
47      int DUP_X2 = 91;
48      int DUP2 = 92;
49      int DUP2_X1 = 93;
50      int DUP2_X2 = 94;
51      int SWAP = 95;
52      int IADD = 96;
53      int LADD = 97;
54      int FADD = 98;
55      int DADD = 99;
56      int ISUB = 100;
57      int LSUB = 101;
58      int FSUB = 102;
59      int DSUB = 103;
60      int IMUL = 104;
61      int LMUL = 105;
62      int FMUL = 106;
63      int DMUL = 107;
64      int IDIV = 108;
65      int LDIV = 109;
66      int FDIV = 110;
67      int DDIV = 111;
68      int IREM = 112;
69      int LREM = 113;
70      int FREM = 114;
71      int DREM = 115;
72      int INEG = 116;
73      int LNEG = 117;
74      int FNEG = 118;
75      int DNEG = 119;
76      int ISHL = 120;
77      int LSHL = 121;
78      int ISHR = 122;
79      int LSHR = 123;
80      int IUSHR = 124;
81      int LUSHR = 125;
82      int IAND = 126;
83      int LAND = 127;
84      int IOR = 128;
85      int LOR = 129;
86      int IXOR = 130;
87      int LXOR = 131;
88      int I2L = 133;
89      int I2F = 134;
90      int I2D = 135;
91      int L2I = 136;
92      int L2F = 137;
93      int L2D = 138;
94      int F2I = 139;
95      int F2L = 140;
96      int F2D = 141;
97      int D2I = 142;
98      int D2L = 143;
99      int D2F = 144;
100     int I2B = 145;
101     int I2C = 146;
102     int I2S = 147;
103     int LCMP = 148;
104     int FCMPL = 149;
105     int FCMPG = 150;
106     int DCMPL = 151;
107     int DCMPG = 152;
108     int IRETURN = 172;
109     int LRETURN = 173;
110     int FRETURN = 174;
111     int DRETURN = 175;
112     int ARETURN = 176;
113     int RETURN = 177;
114     int ARRAYLENGTH = 190;
115     int ATHROW = 191;
116     int MONITORENTER = 194;
117     int MONITOREXIT = 195;
118 
119     // visitIntInsn
120     // int BIPUSH = 16;
121     int SIPUSH = 17;
122     int NEWARRAY = 188;
123 
124     // visitLdcInsn
125     int LDC = 18;
126     int LDC_W = 19;
127     int LDC2_W = 20;
128 
129     // visitVarInsn
130     int ILOAD = 21;
131     int LLOAD = 22;
132     int FLOAD = 23;
133     int DLOAD = 24;
134     int ALOAD = 25;
135     int ILOAD_0 = 26;
136     // int ILOAD_1 = 27;
137     // int ILOAD_2 = 28;
138     // int ILOAD_3 = 29;
139     // int LLOAD_0 = 30;
140     // int LLOAD_1 = 31;
141     // int LLOAD_2 = 32;
142     // int LLOAD_3 = 33;
143     // int FLOAD_0 = 34;
144     // int FLOAD_1 = 35;
145     // int FLOAD_2 = 36;
146     // int FLOAD_3 = 37;
147     // int DLOAD_0 = 38;
148     // int DLOAD_1 = 39;
149     // int DLOAD_2 = 40;
150     // int DLOAD_3 = 41;
151     // int ALOAD_0 = 42;
152     // int ALOAD_1 = 43;
153     // int ALOAD_2 = 44;
154     // int ALOAD_3 = 45;
155     int ISTORE = 54;
156     int LSTORE = 55;
157     int FSTORE = 56;
158     int DSTORE = 57;
159     int ASTORE = 58;
160     int ISTORE_0 = 59;
161     // int ISTORE_1 = 60;
162     // int ISTORE_2 = 61;
163     // int ISTORE_3 = 62;
164     // int LSTORE_0 = 63;
165     // int LSTORE_1 = 64;
166     // int LSTORE_2 = 65;
167     // int LSTORE_3 = 66;
168     // int FSTORE_0 = 67;
169     // int FSTORE_1 = 68;
170     // int FSTORE_2 = 69;
171     // int FSTORE_3 = 70;
172     // int DSTORE_0 = 71;
173     // int DSTORE_1 = 72;
174     // int DSTORE_2 = 73;
175     // int DSTORE_3 = 74;
176     // int ASTORE_0 = 75;
177     // int ASTORE_1 = 76;
178     // int ASTORE_2 = 77;
179     // int ASTORE_3 = 78;
180     // int RET = 169;
181     int WIDE = 196; // NOT VISITED
182 
183     // visitIincInsn
184     int IINC = 132;
185 
186     // visitJumpInsn
187     int IFEQ = 153;
188     int IFNE = 154;
189     int IFLT = 155;
190     int IFGE = 156;
191     int IFGT = 157;
192     int IFLE = 158;
193     int IF_ICMPEQ = 159;
194     int IF_ICMPNE = 160;
195     int IF_ICMPLT = 161;
196     int IF_ICMPGE = 162;
197     int IF_ICMPGT = 163;
198     int IF_ICMPLE = 164;
199     int IF_ACMPEQ = 165;
200     int IF_ACMPNE = 166;
201     int GOTO = 167;
202     // int JSR = 168;
203     int IFNULL = 198;
204     int IFNONNULL = 199;
205     int GOTO_W = 200;
206     // int JSR_W = 201;
207 
208     // visitTableSwitchInsn, visitLookupSwitch
209     int TABLESWITCH = 170;
210     int LOOKUPSWITCH = 171;
211 
212     // visitFieldInsn
213     int GETSTATIC = 178;
214     int PUTSTATIC = 179;
215     int GETFIELD = 180;
216     int PUTFIELD = 181;
217 
218     // visitMethodInsn, visitInvokeDynamicInsn
219     int INVOKEVIRTUAL = 182;
220     int INVOKESPECIAL = 183;
221     int INVOKESTATIC = 184;
222     int INVOKEINTERFACE = 185;
223     int INVOKEDYNAMIC = 186;
224 
225     // visitTypeInsn
226     int NEW = 187;
227     int ANEWARRAY = 189;
228     int CHECKCAST = 192;
229     int INSTANCEOF = 193;
230 
231     // visitMultiANewArrayInsn
232     int MULTIANEWARRAY = 197;
233 }