javap/src/main/java/org/apidesign/javap/RuntimeConstants.java
author Jaroslav Tulach <jaroslav.tulach@apidesign.org>
Tue, 05 Feb 2013 08:48:23 +0100
branchemul
changeset 667 5866e89ef568
parent 144 b06660b614db
permissions -rw-r--r--
Test can specify multiple HTTP resources
jtulach@144
     1
/*
jtulach@144
     2
 * Copyright (c) 2002, 2005, Oracle and/or its affiliates. All rights reserved.
jtulach@144
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
jtulach@144
     4
 *
jtulach@144
     5
 * This code is free software; you can redistribute it and/or modify it
jtulach@144
     6
 * under the terms of the GNU General Public License version 2 only, as
jtulach@144
     7
 * published by the Free Software Foundation.  Oracle designates this
jtulach@144
     8
 * particular file as subject to the "Classpath" exception as provided
jtulach@144
     9
 * by Oracle in the LICENSE file that accompanied this code.
jtulach@144
    10
 *
jtulach@144
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
jtulach@144
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
jtulach@144
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
jtulach@144
    14
 * version 2 for more details (a copy is included in the LICENSE file that
jtulach@144
    15
 * accompanied this code).
jtulach@144
    16
 *
jtulach@144
    17
 * You should have received a copy of the GNU General Public License version
jtulach@144
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
jtulach@144
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
jtulach@144
    20
 *
jtulach@144
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
jtulach@144
    22
 * or visit www.oracle.com if you need additional information or have any
jtulach@144
    23
 * questions.
jtulach@144
    24
 */
jtulach@144
    25
jtulach@144
    26
jtulach@167
    27
package org.apidesign.javap;
jtulach@144
    28
jtulach@144
    29
public interface RuntimeConstants {
jtulach@144
    30
jtulach@144
    31
    /* Signature Characters */
jtulach@144
    32
    public static final char   SIGC_VOID                  = 'V';
jtulach@144
    33
    public static final String SIG_VOID                   = "V";
jtulach@144
    34
    public static final char   SIGC_BOOLEAN               = 'Z';
jtulach@144
    35
    public static final String SIG_BOOLEAN                = "Z";
jtulach@144
    36
    public static final char   SIGC_BYTE                  = 'B';
jtulach@144
    37
    public static final String SIG_BYTE                   = "B";
jtulach@144
    38
    public static final char   SIGC_CHAR                  = 'C';
jtulach@144
    39
    public static final String SIG_CHAR                   = "C";
jtulach@144
    40
    public static final char   SIGC_SHORT                 = 'S';
jtulach@144
    41
    public static final String SIG_SHORT                  = "S";
jtulach@144
    42
    public static final char   SIGC_INT                   = 'I';
jtulach@144
    43
    public static final String SIG_INT                    = "I";
jtulach@144
    44
    public static final char   SIGC_LONG                  = 'J';
jtulach@144
    45
    public static final String SIG_LONG                   = "J";
jtulach@144
    46
    public static final char   SIGC_FLOAT                 = 'F';
jtulach@144
    47
    public static final String SIG_FLOAT                  = "F";
jtulach@144
    48
    public static final char   SIGC_DOUBLE                = 'D';
jtulach@144
    49
    public static final String SIG_DOUBLE                 = "D";
jtulach@144
    50
    public static final char   SIGC_ARRAY                 = '[';
jtulach@144
    51
    public static final String SIG_ARRAY                  = "[";
jtulach@144
    52
    public static final char   SIGC_CLASS                 = 'L';
jtulach@144
    53
    public static final String SIG_CLASS                  = "L";
jtulach@144
    54
    public static final char   SIGC_METHOD                = '(';
jtulach@144
    55
    public static final String SIG_METHOD                 = "(";
jtulach@144
    56
    public static final char   SIGC_ENDCLASS              = ';';
jtulach@144
    57
    public static final String SIG_ENDCLASS               = ";";
jtulach@144
    58
    public static final char   SIGC_ENDMETHOD             = ')';
jtulach@144
    59
    public static final String SIG_ENDMETHOD              = ")";
jtulach@144
    60
    public static final char   SIGC_PACKAGE               = '/';
jtulach@144
    61
    public static final String SIG_PACKAGE                = "/";
jtulach@144
    62
jtulach@144
    63
    /* Class File Constants */
jtulach@144
    64
    public static final int JAVA_MAGIC                   = 0xcafebabe;
jtulach@144
    65
    public static final int JAVA_VERSION                 = 45;
jtulach@144
    66
    public static final int JAVA_MINOR_VERSION           = 3;
jtulach@144
    67
jtulach@144
    68
    /* Constant table */
jtulach@144
    69
    public static final int CONSTANT_UTF8                = 1;
jtulach@144
    70
    public static final int CONSTANT_UNICODE             = 2;
jtulach@144
    71
    public static final int CONSTANT_INTEGER             = 3;
jtulach@144
    72
    public static final int CONSTANT_FLOAT               = 4;
jtulach@144
    73
    public static final int CONSTANT_LONG                = 5;
jtulach@144
    74
    public static final int CONSTANT_DOUBLE              = 6;
jtulach@144
    75
    public static final int CONSTANT_CLASS               = 7;
jtulach@144
    76
    public static final int CONSTANT_STRING              = 8;
jtulach@144
    77
    public static final int CONSTANT_FIELD               = 9;
jtulach@144
    78
    public static final int CONSTANT_METHOD              = 10;
jtulach@144
    79
    public static final int CONSTANT_INTERFACEMETHOD     = 11;
jtulach@144
    80
    public static final int CONSTANT_NAMEANDTYPE         = 12;
jtulach@144
    81
jtulach@144
    82
    /* Access Flags */
jtulach@144
    83
    public static final int ACC_PUBLIC                   = 0x00000001;
jtulach@144
    84
    public static final int ACC_PRIVATE                  = 0x00000002;
jtulach@144
    85
    public static final int ACC_PROTECTED                = 0x00000004;
jtulach@144
    86
    public static final int ACC_STATIC                   = 0x00000008;
jtulach@144
    87
    public static final int ACC_FINAL                    = 0x00000010;
jtulach@144
    88
    public static final int ACC_SYNCHRONIZED             = 0x00000020;
jtulach@144
    89
    public static final int ACC_SUPER                        = 0x00000020;
jtulach@144
    90
    public static final int ACC_VOLATILE                 = 0x00000040;
jtulach@144
    91
    public static final int ACC_TRANSIENT                = 0x00000080;
jtulach@144
    92
    public static final int ACC_NATIVE                   = 0x00000100;
jtulach@144
    93
    public static final int ACC_INTERFACE                = 0x00000200;
jtulach@144
    94
    public static final int ACC_ABSTRACT                 = 0x00000400;
jtulach@144
    95
    public static final int ACC_STRICT                   = 0x00000800;
jtulach@144
    96
    public static final int ACC_EXPLICIT                 = 0x00001000;
jtulach@144
    97
    public static final int ACC_SYNTHETIC                = 0x00010000; // actually, this is an attribute
jtulach@144
    98
jtulach@144
    99
    /* Type codes */
jtulach@144
   100
    public static final int T_CLASS                      = 0x00000002;
jtulach@144
   101
    public static final int T_BOOLEAN                    = 0x00000004;
jtulach@144
   102
    public static final int T_CHAR                       = 0x00000005;
jtulach@144
   103
    public static final int T_FLOAT                      = 0x00000006;
jtulach@144
   104
    public static final int T_DOUBLE                     = 0x00000007;
jtulach@144
   105
    public static final int T_BYTE                       = 0x00000008;
jtulach@144
   106
    public static final int T_SHORT                      = 0x00000009;
jtulach@144
   107
    public static final int T_INT                        = 0x0000000a;
jtulach@144
   108
    public static final int T_LONG                       = 0x0000000b;
jtulach@144
   109
jtulach@144
   110
    /* Type codes for StackMap attribute */
jtulach@144
   111
    public static final int ITEM_Bogus      =0; // an unknown or uninitialized value
jtulach@144
   112
    public static final int ITEM_Integer    =1; // a 32-bit integer
jtulach@144
   113
    public static final int ITEM_Float      =2; // not used
jtulach@144
   114
    public static final int ITEM_Double     =3; // not used
jtulach@144
   115
    public static final int ITEM_Long       =4; // a 64-bit integer
jtulach@144
   116
    public static final int ITEM_Null       =5; // the type of null
jtulach@144
   117
    public static final int ITEM_InitObject =6; // "this" in constructor
jtulach@144
   118
    public static final int ITEM_Object     =7; // followed by 2-byte index of class name
jtulach@144
   119
    public static final int ITEM_NewObject  =8; // followed by 2-byte ref to "new"
jtulach@144
   120
jtulach@144
   121
    /* Constants used in StackMapTable attribute */
jtulach@144
   122
    public static final int SAME_FRAME_BOUND                  = 64;
jtulach@144
   123
    public static final int SAME_LOCALS_1_STACK_ITEM_BOUND    = 128;
jtulach@144
   124
    public static final int SAME_LOCALS_1_STACK_ITEM_EXTENDED = 247;
jtulach@144
   125
    public static final int SAME_FRAME_EXTENDED               = 251;
jtulach@144
   126
    public static final int FULL_FRAME                        = 255;
jtulach@144
   127
jtulach@144
   128
    /* Opcodes */
jtulach@144
   129
    public static final int opc_dead                     = -2;
jtulach@144
   130
    public static final int opc_label                    = -1;
jtulach@144
   131
    public static final int opc_nop                      = 0;
jtulach@144
   132
    public static final int opc_aconst_null              = 1;
jtulach@144
   133
    public static final int opc_iconst_m1                = 2;
jtulach@144
   134
    public static final int opc_iconst_0                 = 3;
jtulach@144
   135
    public static final int opc_iconst_1                 = 4;
jtulach@144
   136
    public static final int opc_iconst_2                 = 5;
jtulach@144
   137
    public static final int opc_iconst_3                 = 6;
jtulach@144
   138
    public static final int opc_iconst_4                 = 7;
jtulach@144
   139
    public static final int opc_iconst_5                 = 8;
jtulach@144
   140
    public static final int opc_lconst_0                 = 9;
jtulach@144
   141
    public static final int opc_lconst_1                 = 10;
jtulach@144
   142
    public static final int opc_fconst_0                 = 11;
jtulach@144
   143
    public static final int opc_fconst_1                 = 12;
jtulach@144
   144
    public static final int opc_fconst_2                 = 13;
jtulach@144
   145
    public static final int opc_dconst_0                 = 14;
jtulach@144
   146
    public static final int opc_dconst_1                 = 15;
jtulach@144
   147
    public static final int opc_bipush                   = 16;
jtulach@144
   148
    public static final int opc_sipush                   = 17;
jtulach@144
   149
    public static final int opc_ldc                      = 18;
jtulach@144
   150
    public static final int opc_ldc_w                    = 19;
jtulach@144
   151
    public static final int opc_ldc2_w                   = 20;
jtulach@144
   152
    public static final int opc_iload                    = 21;
jtulach@144
   153
    public static final int opc_lload                    = 22;
jtulach@144
   154
    public static final int opc_fload                    = 23;
jtulach@144
   155
    public static final int opc_dload                    = 24;
jtulach@144
   156
    public static final int opc_aload                    = 25;
jtulach@144
   157
    public static final int opc_iload_0                  = 26;
jtulach@144
   158
    public static final int opc_iload_1                  = 27;
jtulach@144
   159
    public static final int opc_iload_2                  = 28;
jtulach@144
   160
    public static final int opc_iload_3                  = 29;
jtulach@144
   161
    public static final int opc_lload_0                  = 30;
jtulach@144
   162
    public static final int opc_lload_1                  = 31;
jtulach@144
   163
    public static final int opc_lload_2                  = 32;
jtulach@144
   164
    public static final int opc_lload_3                  = 33;
jtulach@144
   165
    public static final int opc_fload_0                  = 34;
jtulach@144
   166
    public static final int opc_fload_1                  = 35;
jtulach@144
   167
    public static final int opc_fload_2                  = 36;
jtulach@144
   168
    public static final int opc_fload_3                  = 37;
jtulach@144
   169
    public static final int opc_dload_0                  = 38;
jtulach@144
   170
    public static final int opc_dload_1                  = 39;
jtulach@144
   171
    public static final int opc_dload_2                  = 40;
jtulach@144
   172
    public static final int opc_dload_3                  = 41;
jtulach@144
   173
    public static final int opc_aload_0                  = 42;
jtulach@144
   174
    public static final int opc_aload_1                  = 43;
jtulach@144
   175
    public static final int opc_aload_2                  = 44;
jtulach@144
   176
    public static final int opc_aload_3                  = 45;
jtulach@144
   177
    public static final int opc_iaload                   = 46;
jtulach@144
   178
    public static final int opc_laload                   = 47;
jtulach@144
   179
    public static final int opc_faload                   = 48;
jtulach@144
   180
    public static final int opc_daload                   = 49;
jtulach@144
   181
    public static final int opc_aaload                   = 50;
jtulach@144
   182
    public static final int opc_baload                   = 51;
jtulach@144
   183
    public static final int opc_caload                   = 52;
jtulach@144
   184
    public static final int opc_saload                   = 53;
jtulach@144
   185
    public static final int opc_istore                   = 54;
jtulach@144
   186
    public static final int opc_lstore                   = 55;
jtulach@144
   187
    public static final int opc_fstore                   = 56;
jtulach@144
   188
    public static final int opc_dstore                   = 57;
jtulach@144
   189
    public static final int opc_astore                   = 58;
jtulach@144
   190
    public static final int opc_istore_0                 = 59;
jtulach@144
   191
    public static final int opc_istore_1                 = 60;
jtulach@144
   192
    public static final int opc_istore_2                 = 61;
jtulach@144
   193
    public static final int opc_istore_3                 = 62;
jtulach@144
   194
    public static final int opc_lstore_0                 = 63;
jtulach@144
   195
    public static final int opc_lstore_1                 = 64;
jtulach@144
   196
    public static final int opc_lstore_2                 = 65;
jtulach@144
   197
    public static final int opc_lstore_3                 = 66;
jtulach@144
   198
    public static final int opc_fstore_0                 = 67;
jtulach@144
   199
    public static final int opc_fstore_1                 = 68;
jtulach@144
   200
    public static final int opc_fstore_2                 = 69;
jtulach@144
   201
    public static final int opc_fstore_3                 = 70;
jtulach@144
   202
    public static final int opc_dstore_0                 = 71;
jtulach@144
   203
    public static final int opc_dstore_1                 = 72;
jtulach@144
   204
    public static final int opc_dstore_2                 = 73;
jtulach@144
   205
    public static final int opc_dstore_3                 = 74;
jtulach@144
   206
    public static final int opc_astore_0                 = 75;
jtulach@144
   207
    public static final int opc_astore_1                 = 76;
jtulach@144
   208
    public static final int opc_astore_2                 = 77;
jtulach@144
   209
    public static final int opc_astore_3                 = 78;
jtulach@144
   210
    public static final int opc_iastore                  = 79;
jtulach@144
   211
    public static final int opc_lastore                  = 80;
jtulach@144
   212
    public static final int opc_fastore                  = 81;
jtulach@144
   213
    public static final int opc_dastore                  = 82;
jtulach@144
   214
    public static final int opc_aastore                  = 83;
jtulach@144
   215
    public static final int opc_bastore                  = 84;
jtulach@144
   216
    public static final int opc_castore                  = 85;
jtulach@144
   217
    public static final int opc_sastore                  = 86;
jtulach@144
   218
    public static final int opc_pop                      = 87;
jtulach@144
   219
    public static final int opc_pop2                     = 88;
jtulach@144
   220
    public static final int opc_dup                      = 89;
jtulach@144
   221
    public static final int opc_dup_x1                   = 90;
jtulach@144
   222
    public static final int opc_dup_x2                   = 91;
jtulach@144
   223
    public static final int opc_dup2                     = 92;
jtulach@144
   224
    public static final int opc_dup2_x1                  = 93;
jtulach@144
   225
    public static final int opc_dup2_x2                  = 94;
jtulach@144
   226
    public static final int opc_swap                     = 95;
jtulach@144
   227
    public static final int opc_iadd                     = 96;
jtulach@144
   228
    public static final int opc_ladd                     = 97;
jtulach@144
   229
    public static final int opc_fadd                     = 98;
jtulach@144
   230
    public static final int opc_dadd                     = 99;
jtulach@144
   231
    public static final int opc_isub                     = 100;
jtulach@144
   232
    public static final int opc_lsub                     = 101;
jtulach@144
   233
    public static final int opc_fsub                     = 102;
jtulach@144
   234
    public static final int opc_dsub                     = 103;
jtulach@144
   235
    public static final int opc_imul                     = 104;
jtulach@144
   236
    public static final int opc_lmul                     = 105;
jtulach@144
   237
    public static final int opc_fmul                     = 106;
jtulach@144
   238
    public static final int opc_dmul                     = 107;
jtulach@144
   239
    public static final int opc_idiv                     = 108;
jtulach@144
   240
    public static final int opc_ldiv                     = 109;
jtulach@144
   241
    public static final int opc_fdiv                     = 110;
jtulach@144
   242
    public static final int opc_ddiv                     = 111;
jtulach@144
   243
    public static final int opc_irem                     = 112;
jtulach@144
   244
    public static final int opc_lrem                     = 113;
jtulach@144
   245
    public static final int opc_frem                     = 114;
jtulach@144
   246
    public static final int opc_drem                     = 115;
jtulach@144
   247
    public static final int opc_ineg                     = 116;
jtulach@144
   248
    public static final int opc_lneg                     = 117;
jtulach@144
   249
    public static final int opc_fneg                     = 118;
jtulach@144
   250
    public static final int opc_dneg                     = 119;
jtulach@144
   251
    public static final int opc_ishl                     = 120;
jtulach@144
   252
    public static final int opc_lshl                     = 121;
jtulach@144
   253
    public static final int opc_ishr                     = 122;
jtulach@144
   254
    public static final int opc_lshr                     = 123;
jtulach@144
   255
    public static final int opc_iushr                    = 124;
jtulach@144
   256
    public static final int opc_lushr                    = 125;
jtulach@144
   257
    public static final int opc_iand                     = 126;
jtulach@144
   258
    public static final int opc_land                     = 127;
jtulach@144
   259
    public static final int opc_ior                      = 128;
jtulach@144
   260
    public static final int opc_lor                      = 129;
jtulach@144
   261
    public static final int opc_ixor                     = 130;
jtulach@144
   262
    public static final int opc_lxor                     = 131;
jtulach@144
   263
    public static final int opc_iinc                     = 132;
jtulach@144
   264
    public static final int opc_i2l                      = 133;
jtulach@144
   265
    public static final int opc_i2f                      = 134;
jtulach@144
   266
    public static final int opc_i2d                      = 135;
jtulach@144
   267
    public static final int opc_l2i                      = 136;
jtulach@144
   268
    public static final int opc_l2f                      = 137;
jtulach@144
   269
    public static final int opc_l2d                      = 138;
jtulach@144
   270
    public static final int opc_f2i                      = 139;
jtulach@144
   271
    public static final int opc_f2l                      = 140;
jtulach@144
   272
    public static final int opc_f2d                      = 141;
jtulach@144
   273
    public static final int opc_d2i                      = 142;
jtulach@144
   274
    public static final int opc_d2l                      = 143;
jtulach@144
   275
    public static final int opc_d2f                      = 144;
jtulach@144
   276
    public static final int opc_i2b                      = 145;
jtulach@144
   277
    public static final int opc_int2byte                 = 145;
jtulach@144
   278
    public static final int opc_i2c                      = 146;
jtulach@144
   279
    public static final int opc_int2char                 = 146;
jtulach@144
   280
    public static final int opc_i2s                      = 147;
jtulach@144
   281
    public static final int opc_int2short                = 147;
jtulach@144
   282
    public static final int opc_lcmp                     = 148;
jtulach@144
   283
    public static final int opc_fcmpl                    = 149;
jtulach@144
   284
    public static final int opc_fcmpg                    = 150;
jtulach@144
   285
    public static final int opc_dcmpl                    = 151;
jtulach@144
   286
    public static final int opc_dcmpg                    = 152;
jtulach@144
   287
    public static final int opc_ifeq                     = 153;
jtulach@144
   288
    public static final int opc_ifne                     = 154;
jtulach@144
   289
    public static final int opc_iflt                     = 155;
jtulach@144
   290
    public static final int opc_ifge                     = 156;
jtulach@144
   291
    public static final int opc_ifgt                     = 157;
jtulach@144
   292
    public static final int opc_ifle                     = 158;
jtulach@144
   293
    public static final int opc_if_icmpeq                = 159;
jtulach@144
   294
    public static final int opc_if_icmpne                = 160;
jtulach@144
   295
    public static final int opc_if_icmplt                = 161;
jtulach@144
   296
    public static final int opc_if_icmpge                = 162;
jtulach@144
   297
    public static final int opc_if_icmpgt                = 163;
jtulach@144
   298
    public static final int opc_if_icmple                = 164;
jtulach@144
   299
    public static final int opc_if_acmpeq                = 165;
jtulach@144
   300
    public static final int opc_if_acmpne                = 166;
jtulach@144
   301
    public static final int opc_goto                     = 167;
jtulach@144
   302
    public static final int opc_jsr                      = 168;
jtulach@144
   303
    public static final int opc_ret                      = 169;
jtulach@144
   304
    public static final int opc_tableswitch              = 170;
jtulach@144
   305
    public static final int opc_lookupswitch             = 171;
jtulach@144
   306
    public static final int opc_ireturn                  = 172;
jtulach@144
   307
    public static final int opc_lreturn                  = 173;
jtulach@144
   308
    public static final int opc_freturn                  = 174;
jtulach@144
   309
    public static final int opc_dreturn                  = 175;
jtulach@144
   310
    public static final int opc_areturn                  = 176;
jtulach@144
   311
    public static final int opc_return                   = 177;
jtulach@144
   312
    public static final int opc_getstatic                = 178;
jtulach@144
   313
    public static final int opc_putstatic                = 179;
jtulach@144
   314
    public static final int opc_getfield                 = 180;
jtulach@144
   315
    public static final int opc_putfield                 = 181;
jtulach@144
   316
    public static final int opc_invokevirtual            = 182;
jtulach@144
   317
    public static final int opc_invokenonvirtual         = 183;
jtulach@144
   318
    public static final int opc_invokespecial            = 183;
jtulach@144
   319
    public static final int opc_invokestatic             = 184;
jtulach@144
   320
    public static final int opc_invokeinterface          = 185;
jtulach@144
   321
//    public static final int opc_xxxunusedxxx             = 186;
jtulach@144
   322
    public static final int opc_new                      = 187;
jtulach@144
   323
    public static final int opc_newarray                 = 188;
jtulach@144
   324
    public static final int opc_anewarray                = 189;
jtulach@144
   325
    public static final int opc_arraylength              = 190;
jtulach@144
   326
    public static final int opc_athrow                   = 191;
jtulach@144
   327
    public static final int opc_checkcast                = 192;
jtulach@144
   328
    public static final int opc_instanceof               = 193;
jtulach@144
   329
    public static final int opc_monitorenter             = 194;
jtulach@144
   330
    public static final int opc_monitorexit              = 195;
jtulach@144
   331
    public static final int opc_wide                     = 196;
jtulach@144
   332
    public static final int opc_multianewarray           = 197;
jtulach@144
   333
    public static final int opc_ifnull                   = 198;
jtulach@144
   334
    public static final int opc_ifnonnull                = 199;
jtulach@144
   335
    public static final int opc_goto_w                   = 200;
jtulach@144
   336
    public static final int opc_jsr_w                    = 201;
jtulach@144
   337
        /* Pseudo-instructions */
jtulach@144
   338
    public static final int opc_bytecode                 = 203;
jtulach@144
   339
    public static final int opc_try                      = 204;
jtulach@144
   340
    public static final int opc_endtry                   = 205;
jtulach@144
   341
    public static final int opc_catch                    = 206;
jtulach@144
   342
    public static final int opc_var                      = 207;
jtulach@144
   343
    public static final int opc_endvar                   = 208;
jtulach@144
   344
    public static final int opc_localsmap                = 209;
jtulach@144
   345
    public static final int opc_stackmap                 = 210;
jtulach@144
   346
        /* PicoJava prefixes */
jtulach@144
   347
    public static final int opc_nonpriv                  = 254;
jtulach@144
   348
    public static final int opc_priv                     = 255;
jtulach@144
   349
jtulach@144
   350
        /* Wide instructions */
jtulach@144
   351
    public static final int opc_iload_w         = (opc_wide<<8)|opc_iload;
jtulach@144
   352
    public static final int opc_lload_w         = (opc_wide<<8)|opc_lload;
jtulach@144
   353
    public static final int opc_fload_w         = (opc_wide<<8)|opc_fload;
jtulach@144
   354
    public static final int opc_dload_w         = (opc_wide<<8)|opc_dload;
jtulach@144
   355
    public static final int opc_aload_w         = (opc_wide<<8)|opc_aload;
jtulach@144
   356
    public static final int opc_istore_w        = (opc_wide<<8)|opc_istore;
jtulach@144
   357
    public static final int opc_lstore_w        = (opc_wide<<8)|opc_lstore;
jtulach@144
   358
    public static final int opc_fstore_w        = (opc_wide<<8)|opc_fstore;
jtulach@144
   359
    public static final int opc_dstore_w        = (opc_wide<<8)|opc_dstore;
jtulach@144
   360
    public static final int opc_astore_w        = (opc_wide<<8)|opc_astore;
jtulach@144
   361
    public static final int opc_ret_w           = (opc_wide<<8)|opc_ret;
jtulach@144
   362
    public static final int opc_iinc_w          = (opc_wide<<8)|opc_iinc;
jtulach@144
   363
jtulach@144
   364
    /* Opcode Names */
jtulach@144
   365
  public static final String opcNamesTab[] = {
jtulach@144
   366
        "nop",
jtulach@144
   367
        "aconst_null",
jtulach@144
   368
        "iconst_m1",
jtulach@144
   369
        "iconst_0",
jtulach@144
   370
        "iconst_1",
jtulach@144
   371
        "iconst_2",
jtulach@144
   372
        "iconst_3",
jtulach@144
   373
        "iconst_4",
jtulach@144
   374
        "iconst_5",
jtulach@144
   375
        "lconst_0",
jtulach@144
   376
        "lconst_1",
jtulach@144
   377
        "fconst_0",
jtulach@144
   378
        "fconst_1",
jtulach@144
   379
        "fconst_2",
jtulach@144
   380
        "dconst_0",
jtulach@144
   381
        "dconst_1",
jtulach@144
   382
        "bipush",
jtulach@144
   383
        "sipush",
jtulach@144
   384
        "ldc",
jtulach@144
   385
        "ldc_w",
jtulach@144
   386
        "ldc2_w",
jtulach@144
   387
        "iload",
jtulach@144
   388
        "lload",
jtulach@144
   389
        "fload",
jtulach@144
   390
        "dload",
jtulach@144
   391
        "aload",
jtulach@144
   392
        "iload_0",
jtulach@144
   393
        "iload_1",
jtulach@144
   394
        "iload_2",
jtulach@144
   395
        "iload_3",
jtulach@144
   396
        "lload_0",
jtulach@144
   397
        "lload_1",
jtulach@144
   398
        "lload_2",
jtulach@144
   399
        "lload_3",
jtulach@144
   400
        "fload_0",
jtulach@144
   401
        "fload_1",
jtulach@144
   402
        "fload_2",
jtulach@144
   403
        "fload_3",
jtulach@144
   404
        "dload_0",
jtulach@144
   405
        "dload_1",
jtulach@144
   406
        "dload_2",
jtulach@144
   407
        "dload_3",
jtulach@144
   408
        "aload_0",
jtulach@144
   409
        "aload_1",
jtulach@144
   410
        "aload_2",
jtulach@144
   411
        "aload_3",
jtulach@144
   412
        "iaload",
jtulach@144
   413
        "laload",
jtulach@144
   414
        "faload",
jtulach@144
   415
        "daload",
jtulach@144
   416
        "aaload",
jtulach@144
   417
        "baload",
jtulach@144
   418
        "caload",
jtulach@144
   419
        "saload",
jtulach@144
   420
        "istore",
jtulach@144
   421
        "lstore",
jtulach@144
   422
        "fstore",
jtulach@144
   423
        "dstore",
jtulach@144
   424
        "astore",
jtulach@144
   425
        "istore_0",
jtulach@144
   426
        "istore_1",
jtulach@144
   427
        "istore_2",
jtulach@144
   428
        "istore_3",
jtulach@144
   429
        "lstore_0",
jtulach@144
   430
        "lstore_1",
jtulach@144
   431
        "lstore_2",
jtulach@144
   432
        "lstore_3",
jtulach@144
   433
        "fstore_0",
jtulach@144
   434
        "fstore_1",
jtulach@144
   435
        "fstore_2",
jtulach@144
   436
        "fstore_3",
jtulach@144
   437
        "dstore_0",
jtulach@144
   438
        "dstore_1",
jtulach@144
   439
        "dstore_2",
jtulach@144
   440
        "dstore_3",
jtulach@144
   441
        "astore_0",
jtulach@144
   442
        "astore_1",
jtulach@144
   443
        "astore_2",
jtulach@144
   444
        "astore_3",
jtulach@144
   445
        "iastore",
jtulach@144
   446
        "lastore",
jtulach@144
   447
        "fastore",
jtulach@144
   448
        "dastore",
jtulach@144
   449
        "aastore",
jtulach@144
   450
        "bastore",
jtulach@144
   451
        "castore",
jtulach@144
   452
        "sastore",
jtulach@144
   453
        "pop",
jtulach@144
   454
        "pop2",
jtulach@144
   455
        "dup",
jtulach@144
   456
        "dup_x1",
jtulach@144
   457
        "dup_x2",
jtulach@144
   458
        "dup2",
jtulach@144
   459
        "dup2_x1",
jtulach@144
   460
        "dup2_x2",
jtulach@144
   461
        "swap",
jtulach@144
   462
        "iadd",
jtulach@144
   463
        "ladd",
jtulach@144
   464
        "fadd",
jtulach@144
   465
        "dadd",
jtulach@144
   466
        "isub",
jtulach@144
   467
        "lsub",
jtulach@144
   468
        "fsub",
jtulach@144
   469
        "dsub",
jtulach@144
   470
        "imul",
jtulach@144
   471
        "lmul",
jtulach@144
   472
        "fmul",
jtulach@144
   473
        "dmul",
jtulach@144
   474
        "idiv",
jtulach@144
   475
        "ldiv",
jtulach@144
   476
        "fdiv",
jtulach@144
   477
        "ddiv",
jtulach@144
   478
        "irem",
jtulach@144
   479
        "lrem",
jtulach@144
   480
        "frem",
jtulach@144
   481
        "drem",
jtulach@144
   482
        "ineg",
jtulach@144
   483
        "lneg",
jtulach@144
   484
        "fneg",
jtulach@144
   485
        "dneg",
jtulach@144
   486
        "ishl",
jtulach@144
   487
        "lshl",
jtulach@144
   488
        "ishr",
jtulach@144
   489
        "lshr",
jtulach@144
   490
        "iushr",
jtulach@144
   491
        "lushr",
jtulach@144
   492
        "iand",
jtulach@144
   493
        "land",
jtulach@144
   494
        "ior",
jtulach@144
   495
        "lor",
jtulach@144
   496
        "ixor",
jtulach@144
   497
        "lxor",
jtulach@144
   498
        "iinc",
jtulach@144
   499
        "i2l",
jtulach@144
   500
        "i2f",
jtulach@144
   501
        "i2d",
jtulach@144
   502
        "l2i",
jtulach@144
   503
        "l2f",
jtulach@144
   504
        "l2d",
jtulach@144
   505
        "f2i",
jtulach@144
   506
        "f2l",
jtulach@144
   507
        "f2d",
jtulach@144
   508
        "d2i",
jtulach@144
   509
        "d2l",
jtulach@144
   510
        "d2f",
jtulach@144
   511
        "i2b",
jtulach@144
   512
        "i2c",
jtulach@144
   513
        "i2s",
jtulach@144
   514
        "lcmp",
jtulach@144
   515
        "fcmpl",
jtulach@144
   516
        "fcmpg",
jtulach@144
   517
        "dcmpl",
jtulach@144
   518
        "dcmpg",
jtulach@144
   519
        "ifeq",
jtulach@144
   520
        "ifne",
jtulach@144
   521
        "iflt",
jtulach@144
   522
        "ifge",
jtulach@144
   523
        "ifgt",
jtulach@144
   524
        "ifle",
jtulach@144
   525
        "if_icmpeq",
jtulach@144
   526
        "if_icmpne",
jtulach@144
   527
        "if_icmplt",
jtulach@144
   528
        "if_icmpge",
jtulach@144
   529
        "if_icmpgt",
jtulach@144
   530
        "if_icmple",
jtulach@144
   531
        "if_acmpeq",
jtulach@144
   532
        "if_acmpne",
jtulach@144
   533
        "goto",
jtulach@144
   534
        "jsr",
jtulach@144
   535
        "ret",
jtulach@144
   536
        "tableswitch",
jtulach@144
   537
        "lookupswitch",
jtulach@144
   538
        "ireturn",
jtulach@144
   539
        "lreturn",
jtulach@144
   540
        "freturn",
jtulach@144
   541
        "dreturn",
jtulach@144
   542
        "areturn",
jtulach@144
   543
        "return",
jtulach@144
   544
        "getstatic",
jtulach@144
   545
        "putstatic",
jtulach@144
   546
        "getfield",
jtulach@144
   547
        "putfield",
jtulach@144
   548
        "invokevirtual",
jtulach@144
   549
        "invokespecial", //     was "invokenonvirtual",
jtulach@144
   550
        "invokestatic",
jtulach@144
   551
        "invokeinterface",
jtulach@144
   552
        "bytecode 186", //"xxxunusedxxx",
jtulach@144
   553
        "new",
jtulach@144
   554
        "newarray",
jtulach@144
   555
        "anewarray",
jtulach@144
   556
        "arraylength",
jtulach@144
   557
        "athrow",
jtulach@144
   558
        "checkcast",
jtulach@144
   559
        "instanceof",
jtulach@144
   560
        "monitorenter",
jtulach@144
   561
        "monitorexit",
jtulach@144
   562
         null, // "wide",
jtulach@144
   563
        "multianewarray",
jtulach@144
   564
        "ifnull",
jtulach@144
   565
        "ifnonnull",
jtulach@144
   566
        "goto_w",
jtulach@144
   567
        "jsr_w",
jtulach@144
   568
        "bytecode 202", // "breakpoint",
jtulach@144
   569
        "bytecode",
jtulach@144
   570
        "try",
jtulach@144
   571
        "endtry",
jtulach@144
   572
        "catch",
jtulach@144
   573
        "var",
jtulach@144
   574
        "endvar",
jtulach@144
   575
        "locals_map",
jtulach@144
   576
        "stack_map"
jtulach@144
   577
  };
jtulach@144
   578
jtulach@144
   579
    /* Opcode Lengths */
jtulach@144
   580
  public static final int opcLengthsTab[] = {
jtulach@144
   581
        1,
jtulach@144
   582
        1,
jtulach@144
   583
        1,
jtulach@144
   584
        1,
jtulach@144
   585
        1,
jtulach@144
   586
        1,
jtulach@144
   587
        1,
jtulach@144
   588
        1,
jtulach@144
   589
        1,
jtulach@144
   590
        1,
jtulach@144
   591
        1,
jtulach@144
   592
        1,
jtulach@144
   593
        1,
jtulach@144
   594
        1,
jtulach@144
   595
        1,
jtulach@144
   596
        1,
jtulach@144
   597
        2,
jtulach@144
   598
        3,
jtulach@144
   599
        2,
jtulach@144
   600
        3,
jtulach@144
   601
        3,
jtulach@144
   602
        2,
jtulach@144
   603
        2,
jtulach@144
   604
        2,
jtulach@144
   605
        2,
jtulach@144
   606
        2,
jtulach@144
   607
        1,
jtulach@144
   608
        1,
jtulach@144
   609
        1,
jtulach@144
   610
        1,
jtulach@144
   611
        1,
jtulach@144
   612
        1,
jtulach@144
   613
        1,
jtulach@144
   614
        1,
jtulach@144
   615
        1,
jtulach@144
   616
        1,
jtulach@144
   617
        1,
jtulach@144
   618
        1,
jtulach@144
   619
        1,
jtulach@144
   620
        1,
jtulach@144
   621
        1,
jtulach@144
   622
        1,
jtulach@144
   623
        1,
jtulach@144
   624
        1,
jtulach@144
   625
        1,
jtulach@144
   626
        1,
jtulach@144
   627
        1,
jtulach@144
   628
        1,
jtulach@144
   629
        1,
jtulach@144
   630
        1,
jtulach@144
   631
        1,
jtulach@144
   632
        1,
jtulach@144
   633
        1,
jtulach@144
   634
        1,
jtulach@144
   635
        2,
jtulach@144
   636
        2,
jtulach@144
   637
        2,
jtulach@144
   638
        2,
jtulach@144
   639
        2,
jtulach@144
   640
        1,
jtulach@144
   641
        1,
jtulach@144
   642
        1,
jtulach@144
   643
        1,
jtulach@144
   644
        1,
jtulach@144
   645
        1,
jtulach@144
   646
        1,
jtulach@144
   647
        1,
jtulach@144
   648
        1,
jtulach@144
   649
        1,
jtulach@144
   650
        1,
jtulach@144
   651
        1,
jtulach@144
   652
        1,
jtulach@144
   653
        1,
jtulach@144
   654
        1,
jtulach@144
   655
        1,
jtulach@144
   656
        1,
jtulach@144
   657
        1,
jtulach@144
   658
        1,
jtulach@144
   659
        1,
jtulach@144
   660
        1,
jtulach@144
   661
        1,
jtulach@144
   662
        1,
jtulach@144
   663
        1,
jtulach@144
   664
        1,
jtulach@144
   665
        1,
jtulach@144
   666
        1,
jtulach@144
   667
        1,
jtulach@144
   668
        1,
jtulach@144
   669
        1,
jtulach@144
   670
        1,
jtulach@144
   671
        1,
jtulach@144
   672
        1,
jtulach@144
   673
        1,
jtulach@144
   674
        1,
jtulach@144
   675
        1,
jtulach@144
   676
        1,
jtulach@144
   677
        1,
jtulach@144
   678
        1,
jtulach@144
   679
        1,
jtulach@144
   680
        1,
jtulach@144
   681
        1,
jtulach@144
   682
        1,
jtulach@144
   683
        1,
jtulach@144
   684
        1,
jtulach@144
   685
        1,
jtulach@144
   686
        1,
jtulach@144
   687
        1,
jtulach@144
   688
        1,
jtulach@144
   689
        1,
jtulach@144
   690
        1,
jtulach@144
   691
        1,
jtulach@144
   692
        1,
jtulach@144
   693
        1,
jtulach@144
   694
        1,
jtulach@144
   695
        1,
jtulach@144
   696
        1,
jtulach@144
   697
        1,
jtulach@144
   698
        1,
jtulach@144
   699
        1,
jtulach@144
   700
        1,
jtulach@144
   701
        1,
jtulach@144
   702
        1,
jtulach@144
   703
        1,
jtulach@144
   704
        1,
jtulach@144
   705
        1,
jtulach@144
   706
        1,
jtulach@144
   707
        1,
jtulach@144
   708
        1,
jtulach@144
   709
        1,
jtulach@144
   710
        1,
jtulach@144
   711
        1,
jtulach@144
   712
        1,
jtulach@144
   713
        3,
jtulach@144
   714
        1,
jtulach@144
   715
        1,
jtulach@144
   716
        1,
jtulach@144
   717
        1,
jtulach@144
   718
        1,
jtulach@144
   719
        1,
jtulach@144
   720
        1,
jtulach@144
   721
        1,
jtulach@144
   722
        1,
jtulach@144
   723
        1,
jtulach@144
   724
        1,
jtulach@144
   725
        1,
jtulach@144
   726
        1,
jtulach@144
   727
        1,
jtulach@144
   728
        1,
jtulach@144
   729
        1,
jtulach@144
   730
        1,
jtulach@144
   731
        1,
jtulach@144
   732
        1,
jtulach@144
   733
        1,
jtulach@144
   734
        3,
jtulach@144
   735
        3,
jtulach@144
   736
        3,
jtulach@144
   737
        3,
jtulach@144
   738
        3,
jtulach@144
   739
        3,
jtulach@144
   740
        3,
jtulach@144
   741
        3,
jtulach@144
   742
        3,
jtulach@144
   743
        3,
jtulach@144
   744
        3,
jtulach@144
   745
        3,
jtulach@144
   746
        3,
jtulach@144
   747
        3,
jtulach@144
   748
        3,
jtulach@144
   749
        3,
jtulach@144
   750
        2,
jtulach@144
   751
        99,
jtulach@144
   752
        99,
jtulach@144
   753
        1,
jtulach@144
   754
        1,
jtulach@144
   755
        1,
jtulach@144
   756
        1,
jtulach@144
   757
        1,
jtulach@144
   758
        1,
jtulach@144
   759
        3,
jtulach@144
   760
        3,
jtulach@144
   761
        3,
jtulach@144
   762
        3,
jtulach@144
   763
        3,
jtulach@144
   764
        3,
jtulach@144
   765
        3,
jtulach@144
   766
        5,
jtulach@144
   767
        0,
jtulach@144
   768
        3,
jtulach@144
   769
        2,
jtulach@144
   770
        3,
jtulach@144
   771
        1,
jtulach@144
   772
        1,
jtulach@144
   773
        3,
jtulach@144
   774
        3,
jtulach@144
   775
        1,
jtulach@144
   776
        1,
jtulach@144
   777
        0, // wide
jtulach@144
   778
        4,
jtulach@144
   779
        3,
jtulach@144
   780
        3,
jtulach@144
   781
        5,
jtulach@144
   782
        5,
jtulach@144
   783
        1,
jtulach@144
   784
        1, 0, 0, 0, 0, 0 // pseudo
jtulach@144
   785
  };
jtulach@144
   786
jtulach@144
   787
}