blob: e1a2d6d51dcb8fe2ebb7dbcd76e80480430c196a [file] [log] [blame]
/*
* Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Sun designates this
* particular file as subject to the "Classpath" exception as provided
* by Sun in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
* CA 95054 USA or visit www.sun.com if you need additional information or
* have any questions.
*/
char const opcode_weight[256] = {
1, /* nop */
1, /* aconst_null */
1, /* iconst_m1 */
1, /* iconst_0 */
1, /* iconst_1 */
1, /* iconst_2 */
1, /* iconst_3 */
1, /* iconst_4 */
1, /* iconst_5 */
1, /* lconst_0 */
1, /* lconst_1 */
1, /* fconst_0 */
1, /* fconst_1 */
1, /* fconst_2 */
1, /* dconst_0 */
1, /* dconst_1 */
1, /* bipush */
1, /* sipush */
1, /* ldc */
1, /* ldc_w */
1, /* ldc2_w */
1, /* iload */
1, /* lload */
1, /* fload */
1, /* dload */
1, /* aload */
1, /* iload_0 */
1, /* iload_1 */
1, /* iload_2 */
1, /* iload_3 */
1, /* lload_0 */
1, /* lload_1 */
1, /* lload_2 */
1, /* lload_3 */
1, /* fload_0 */
1, /* fload_1 */
1, /* fload_2 */
1, /* fload_3 */
1, /* dload_0 */
1, /* dload_1 */
1, /* dload_2 */
1, /* dload_3 */
1, /* aload_0 */
1, /* aload_1 */
1, /* aload_2 */
1, /* aload_3 */
1, /* iaload */
1, /* laload */
1, /* faload */
1, /* daload */
1, /* aaload */
1, /* baload */
1, /* caload */
1, /* saload */
1, /* istore */
1, /* lstore */
1, /* fstore */
1, /* dstore */
1, /* astore */
1, /* istore_0 */
1, /* istore_1 */
1, /* istore_2 */
1, /* istore_3 */
1, /* lstore_0 */
1, /* lstore_1 */
1, /* lstore_2 */
1, /* lstore_3 */
1, /* fstore_0 */
1, /* fstore_1 */
1, /* fstore_2 */
1, /* fstore_3 */
1, /* dstore_0 */
1, /* dstore_1 */
1, /* dstore_2 */
1, /* dstore_3 */
1, /* astore_0 */
1, /* astore_1 */
1, /* astore_2 */
1, /* astore_3 */
1, /* iastore */
1, /* lastore */
1, /* fastore */
1, /* dastore */
1, /* aastore */
1, /* bastore */
1, /* castore */
1, /* sastore */
1, /* pop */
1, /* pop2 */
1, /* dup */
1, /* dup_x1 */
1, /* dup_x2 */
1, /* dup2 */
1, /* dup2_x1 */
1, /* dup2_x2 */
1, /* swap */
1, /* iadd */
1, /* ladd */
1, /* fadd */
1, /* dadd */
1, /* isub */
1, /* lsub */
1, /* fsub */
1, /* dsub */
1, /* imul */
1, /* lmul */
1, /* fmul */
1, /* dmul */
1, /* idiv */
1, /* ldiv */
1, /* fdiv */
1, /* ddiv */
1, /* irem */
1, /* lrem */
1, /* frem */
1, /* drem */
1, /* ineg */
1, /* lneg */
1, /* fneg */
1, /* dneg */
1, /* ishl */
1, /* lshl */
1, /* ishr */
1, /* lshr */
1, /* iushr */
1, /* lushr */
1, /* iand */
1, /* land */
1, /* ior */
1, /* lor */
1, /* ixor */
1, /* lxor */
1, /* iinc */
1, /* i2l */
1, /* i2f */
1, /* i2d */
1, /* l2i */
1, /* l2f */
1, /* l2d */
1, /* f2i */
1, /* f2l */
1, /* f2d */
1, /* d2i */
1, /* d2l */
1, /* d2f */
1, /* i2b */
1, /* i2c */
1, /* i2s */
1, /* lcmp */
1, /* fcmpl */
1, /* fcmpg */
1, /* dcmpl */
1, /* dcmpg */
1, /* ifeq */
1, /* ifne */
1, /* iflt */
1, /* ifge */
1, /* ifgt */
1, /* ifle */
1, /* if_icmpeq */
1, /* if_icmpne */
1, /* if_icmplt */
1, /* if_icmpge */
1, /* if_icmpgt */
1, /* if_icmple */
1, /* if_acmpeq */
1, /* if_acmpne */
1, /* goto */
1, /* jsr */
1, /* ret */
1, /* tableswitch */
1, /* lookupswitch */
1, /* ireturn */
1, /* lreturn */
1, /* freturn */
1, /* dreturn */
1, /* areturn */
1, /* return */
1, /* getstatic */
1, /* putstatic */
1, /* getfield */
1, /* putfield */
1, /* invokevirtual */
1, /* invokespecial */
1, /* invokestatic */
1, /* invokeinterface */
1, /* xxxunusedxxx */
1, /* new */
1, /* newarray */
1, /* anewarray */
1, /* arraylength */
1, /* athrow */
1, /* checkcast */
1, /* instanceof */
1, /* monitorenter */
1, /* monitorexit */
1, /* wide */
1, /* multianewarray */
1, /* ifnull */
1, /* ifnonnull */
1, /* goto_w */
1, /* jsr_w */
1, /* breakpoint */
1, /* ldc_quick */
1, /* ldc_w_quick */
1, /* ldc2_w_quick */
1, /* getfield_quick */
1, /* putfield_quick */
1, /* getfield2_quick */
1, /* putfield2_quick */
1, /* getstatic_quick */
1, /* putstatic_quick */
1, /* getstatic2_quick */
1, /* putstatic2_quick */
1, /* invokevirtual_quick */
1, /* invokenonvirtual_quick */
1, /* invokesuper_quick */
1, /* invokestatic_quick */
1, /* invokeinterface_quick */
1, /* invokevirtualobject_quick */
1, /* invokeignored_quick */
1, /* new_quick */
1, /* anewarray_quick */
1, /* multianewarray_quick */
1, /* checkcast_quick */
1, /* instanceof_quick */
1, /* invokevirtual_quick_w */
1, /* getfield_quick_w */
1, /* putfield_quick_w */
1, /* nonnull_quick */
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
};