Adding JMCR-Stable version
[Benchmarks_CSolver.git] / JMCR-Stable / real-world application / MyDerby-10.3 / java / engine / org / apache / derby / iapi / services / classfile / VMOpcode.java
diff --git a/JMCR-Stable/real-world application/MyDerby-10.3/java/engine/org/apache/derby/iapi/services/classfile/VMOpcode.java b/JMCR-Stable/real-world application/MyDerby-10.3/java/engine/org/apache/derby/iapi/services/classfile/VMOpcode.java
new file mode 100644 (file)
index 0000000..63f3b18
--- /dev/null
@@ -0,0 +1,268 @@
+/*\r
+\r
+   Derby - Class org.apache.derby.iapi.services.classfile.VMOpcode\r
+\r
+   Licensed to the Apache Software Foundation (ASF) under one or more\r
+   contributor license agreements.  See the NOTICE file distributed with\r
+   this work for additional information regarding copyright ownership.\r
+   The ASF licenses this file to you under the Apache License, Version 2.0\r
+   (the "License"); you may not use this file except in compliance with\r
+   the License.  You may obtain a copy of the License at\r
+\r
+      http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+   Unless required by applicable law or agreed to in writing, software\r
+   distributed under the License is distributed on an "AS IS" BASIS,\r
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+   See the License for the specific language governing permissions and\r
+   limitations under the License.\r
+\r
+ */\r
+\r
+package org.apache.derby.iapi.services.classfile;\r
+\r
+/**\r
+ * This contains all the opcodes for the JVM\r
+ * as defined in The Java Virtual Machine Specification.\r
+ *\r
+ * REMIND: might want a debugging version of this,\r
+ * that stored the stack depth and operand expectations.\r
+ */\r
+public interface VMOpcode {\r
+    short BAD = -999; // used in mapping arrays to say "don't do that"\r
+    short NOP = 0;\r
+    short ACONST_NULL = 1;\r
+    short ICONST_M1 = 2;\r
+    short ICONST_0 = 3;\r
+    short ICONST_1 = 4;\r
+    short ICONST_2 = 5;\r
+    short ICONST_3 = 6;\r
+    short ICONST_4 = 7;\r
+    short ICONST_5 = 8;\r
+    short LCONST_0 = 9;\r
+    short LCONST_1 = 10;\r
+    short FCONST_0 = 11;\r
+    short FCONST_1 = 12;\r
+    short FCONST_2 = 13;\r
+    short DCONST_0 = 14;\r
+    short DCONST_1 = 15;\r
+    short BIPUSH = 16;\r
+    short SIPUSH = 17;\r
+    short LDC = 18;\r
+    short LDC_W = 19;\r
+    short LDC2_W = 20;\r
+    short ILOAD = 21;\r
+    short LLOAD = 22;\r
+    short FLOAD = 23;\r
+    short DLOAD = 24;\r
+    short ALOAD = 25;\r
+    short ILOAD_0 = 26;\r
+    short ILOAD_1 = 27;\r
+    short ILOAD_2 = 28;\r
+    short ILOAD_3 = 29;\r
+    short LLOAD_0 = 30;\r
+    short LLOAD_1 = 31;\r
+    short LLOAD_2 = 32;\r
+    short LLOAD_3 = 33;\r
+    short FLOAD_0 = 34;\r
+    short FLOAD_1 = 35;\r
+    short FLOAD_2 = 36;\r
+    short FLOAD_3 = 37;\r
+    short DLOAD_0 = 38;\r
+    short DLOAD_1 = 39;\r
+    short DLOAD_2 = 40;\r
+    short DLOAD_3 = 41;\r
+    short ALOAD_0 = 42;\r
+    short ALOAD_1 = 43;\r
+    short ALOAD_2 = 44;\r
+    short ALOAD_3 = 45;\r
+    short IALOAD = 46;\r
+    short LALOAD = 47;\r
+    short FALOAD = 48;\r
+    short DALOAD = 49;\r
+    short AALOAD = 50;\r
+    short BALOAD = 51;\r
+    short CALOAD = 52;\r
+    short SALOAD = 53;\r
+    short ISTORE = 54;\r
+    short LSTORE = 55;\r
+    short FSTORE = 56;\r
+    short DSTORE = 57;\r
+    short ASTORE = 58;\r
+    short ISTORE_0 = 59;\r
+    short ISTORE_1 = 60;\r
+    short ISTORE_2 = 61;\r
+    short ISTORE_3 = 62;\r
+    short LSTORE_0 = 63;\r
+    short LSTORE_1 = 64;\r
+    short LSTORE_2 = 65;\r
+    short LSTORE_3 = 66;\r
+    short FSTORE_0 = 67;\r
+    short FSTORE_1 = 68;\r
+    short FSTORE_2 = 69;\r
+    short FSTORE_3 = 70;\r
+    short DSTORE_0 = 71;\r
+    short DSTORE_1 = 72;\r
+    short DSTORE_2 = 73;\r
+    short DSTORE_3 = 74;\r
+    short ASTORE_0 = 75;\r
+    short ASTORE_1 = 76;\r
+    short ASTORE_2 = 77;\r
+    short ASTORE_3 = 78;\r
+    short IASTORE = 79;\r
+    short LASTORE = 80;\r
+    short FASTORE = 81;\r
+    short DASTORE = 82;\r
+    short AASTORE = 83;\r
+    short BASTORE = 84;\r
+    short CASTORE = 85;\r
+    short SASTORE = 86;\r
+    short POP = 87;\r
+    short POP2 = 88;\r
+    short DUP = 89;\r
+    short DUP_X1 = 90;\r
+    short DUP_X2 = 91;\r
+    short DUP2 = 92;\r
+    short DUP2_X1 = 93;\r
+    short DUP2_X2 = 94;\r
+    short SWAP = 95;\r
+    short IADD = 96;\r
+    short LADD = 97;\r
+    short FADD = 98;\r
+    short DADD = 99;\r
+    short ISUB = 100;\r
+    short LSUB = 101;\r
+    short FSUB = 102;\r
+    short DSUB = 103;\r
+    short IMUL = 104;\r
+    short LMUL = 105;\r
+    short FMUL = 106;\r
+    short DMUL = 107;\r
+    short IDIV = 108;\r
+    short LDIV = 109;\r
+    short FDIV = 110;\r
+    short DDIV = 111;\r
+    short IREM = 112;\r
+    short LREM = 113;\r
+    short FREM = 114;\r
+    short DREM = 115;\r
+    short INEG = 116;\r
+    short LNEG = 117;\r
+    short FNEG = 118;\r
+    short DNEG = 119;\r
+    short ISHL = 120;\r
+    short LSHL = 121;\r
+    short ISHR = 122;\r
+    short LSHR = 123;\r
+    short IUSHR = 124;\r
+    short LUSHR = 125;\r
+    short IAND = 126;\r
+    short LAND = 127;\r
+    short IOR = 128;\r
+    short LOR = 129;\r
+    short IXOR = 130;\r
+    short LXOR = 131;\r
+    short IINC = 132;\r
+    short I2L = 133;\r
+    short I2F = 134;\r
+    short I2D = 135;\r
+    short L2I = 136;\r
+    short L2F = 137;\r
+    short L2D = 138;\r
+    short F2I = 139;\r
+    short F2L = 140;\r
+    short F2D = 141;\r
+    short D2I = 142;\r
+    short D2L = 143;\r
+    short D2F = 144;\r
+    short I2B = 145;\r
+    short I2C = 146;\r
+    short I2S = 147;\r
+    short LCMP = 148;\r
+    short FCMPL = 149;\r
+    short FCMPG = 150;\r
+    short DCMPL = 151;\r
+    short DCMPG = 152;\r
+    short IFEQ = 153;\r
+    short IFNE = 154;\r
+    short IFLT = 155;\r
+    short IFGE = 156;\r
+    short IFGT = 157;\r
+    short IFLE = 158;\r
+    short IF_ICMPEQ = 159;\r
+    short IF_ICMPNE = 160;\r
+    short IF_ICMPLT = 161;\r
+    short IF_ICMPGE = 162;\r
+    short IF_ICMPGT = 163;\r
+    short IF_ICMPLE = 164;\r
+    short IF_ACMPEQ = 165;\r
+    short IF_ACMPNE = 166;\r
+    short GOTO = 167;\r
+    short JSR = 168;\r
+    short RET = 169;\r
+    short TABLESWITCH = 170;\r
+    short LOOKUPSWITCH = 171;\r
+    short IRETURN = 172;\r
+    short LRETURN = 173;\r
+    short FRETURN = 174;\r
+    short DRETURN = 175;\r
+    short ARETURN = 176;\r
+    short RETURN = 177;\r
+    short GETSTATIC = 178;\r
+    short PUTSTATIC = 179;\r
+    short GETFIELD = 180;\r
+    short PUTFIELD = 181;\r
+    short INVOKEVIRTUAL = 182;\r
+    short INVOKESPECIAL = 183;\r
+    short INVOKESTATIC = 184;\r
+    short INVOKEINTERFACE = 185;\r
+    short XXXUNUSEDXXX = 186;\r
+    short NEW = 187;\r
+    short NEWARRAY = 188;\r
+    short ANEWARRAY = 189;\r
+    short ARRAYLENGTH = 190;\r
+    short ATHROW = 191;\r
+    short CHECKCAST = 192;\r
+    short INSTANCEOF = 193;\r
+    short MONITORENTER = 194;\r
+    short MONITOREXIT = 195;\r
+    short WIDE = 196;\r
+    short MULTIANEWARRAY = 197;\r
+    short IFNULL = 198;\r
+    short IFNONNULL = 199;\r
+    short GOTO_W = 200;\r
+    short JSR_W = 201;\r
+    short BREAKPOINT = 202;\r
+    \r
+    \r
+    /**\r
+     * Maximum code length in a single method.\r
+     * See section 4.10 of JVM spec version 1.\r
+     */\r
+    int MAX_CODE_LENGTH = 65535;\r
+    \r
+    /**\r
+     * Instruction length for IF (IFNULL, IFEQ) etc.\r
+     * Used in conditional handling.\r
+     */\r
+    int IF_INS_LENGTH = 3;\r
+    \r
+    /**\r
+     * Instruction length for GOTO etc.\r
+     * Used in conditional handling.\r
+     */\r
+    int GOTO_INS_LENGTH = 3;\r
+\r
+    /**\r
+     * Instruction length for GOTO_W.\r
+     * Used in conditional handling.\r
+    */\r
+    int GOTO_W_INS_LENGTH = 5;\r
+    \r
+    /**\r
+     * Maximum number of entries in the constant pool.\r
+     * See section 4.10 of JVM spec version 1.\r
+      */\r
+    int MAX_CONSTANT_POOL_ENTRIES = 65535;\r
+   \r
+}\r