jdisa/main.c
author Markus Bröker <mbroeker@largo.dyndns.tv>
Thu, 28 May 2009 16:51:26 +0200
changeset 95 d2a071bd1a60
permissions -rw-r--r--
java disassembler jdisa disassembles a given java class file and shows the bytecode instructions. it does not currently output the same as javap -c <file>... committer: Markus Bröker <mbroeker@largo.homelinux.org>
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
95
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     1
/**
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     2
 * jdisa
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     3
 *
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     4
 * ByteCode Disassembler
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     5
 * See http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     6
 */
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     7
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     8
#include <stdio.h>
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
     9
#include <stdlib.h>
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    10
#include <ctype.h>
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    11
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    12
#define BUF_SIZE 1023
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    13
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    14
typedef unsigned char uchar_t;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    15
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    16
typedef uchar_t u1[1];
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    17
typedef uchar_t u2[2];
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    18
typedef uchar_t u4[4];
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    19
typedef uchar_t u8[8];
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    20
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    21
struct Header {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    22
    u4 magic;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    23
    u2 minor_version;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    24
    u2 major_version;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    25
    u2 constant_pool_count;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    26
};
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    27
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    28
typedef struct Header Header;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    29
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    30
int main (int argc, char **argv)
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    31
{
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    32
    FILE *f;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    33
    uchar_t buffer[BUF_SIZE];
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    34
    int i;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    35
    size_t num;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    36
    int OPCODE;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    37
    Header *cf;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    38
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    39
    if (argc != 2) {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    40
        fprintf (stderr, "Usage: %s <FILE>\n", argv[0]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    41
        return EXIT_FAILURE;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    42
    }
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    43
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    44
    if ((f = fopen (argv[1], "r")) == NULL) {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    45
        perror ("FOPEN");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    46
        return EXIT_FAILURE;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    47
    }
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    48
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    49
    if ((cf = malloc (sizeof (Header))) == NULL)
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    50
        return EXIT_FAILURE;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    51
    if ((num = fread (cf, 1, sizeof (Header), f)) < 1)
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    52
        return EXIT_FAILURE;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    53
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    54
    printf ("  MAGIC: %2X%2X%2X%2X\n", cf->magic[0], cf->magic[1], cf->magic[2], cf->magic[3]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    55
    printf ("VERSION: %02d.%02d\n", cf->major_version[1], cf->major_version[0]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    56
    printf ("POOLCTN: %2d:%2d\n", cf->constant_pool_count[1], cf->constant_pool_count[0]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    57
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    58
    if (cf != NULL)
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    59
        free (cf);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    60
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    61
    OPCODE = 1;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    62
    while (!feof (f)) {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    63
        num = fread (buffer, 1, sizeof (buffer), f);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    64
        for (i = 0; i < num; i++) {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    65
            if (OPCODE) {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    66
                switch (buffer[i]) {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    67
                case 50:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    68
                    printf ("aaload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    69
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    70
                case 83:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    71
                    printf ("aastore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    72
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    73
                case 1:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    74
                    printf ("aconst_null ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    75
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    76
                case 25:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    77
                    printf ("aload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    78
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    79
                case 42:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    80
                    printf ("aload_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    81
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    82
                case 43:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    83
                    printf ("aload_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    84
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    85
                case 44:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    86
                    printf ("aload_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    87
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    88
                case 45:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    89
                    printf ("aload_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    90
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    91
                case 189:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    92
                    printf ("anewarray ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    93
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    94
                case 176:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    95
                    printf ("areturn ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    96
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    97
                case 190:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    98
                    printf ("arraylength ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
    99
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   100
                case 58:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   101
                    printf ("astore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   102
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   103
                case 75:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   104
                    printf ("astore_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   105
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   106
                case 76:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   107
                    printf ("astore_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   108
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   109
                case 77:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   110
                    printf ("astore_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   111
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   112
                case 78:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   113
                    printf ("astore_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   114
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   115
                case 191:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   116
                    printf ("athrow ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   117
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   118
                case 51:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   119
                    printf ("baload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   120
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   121
                case 84:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   122
                    printf ("bastore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   123
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   124
                case 16:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   125
                    printf ("bipush ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   126
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   127
                case 52:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   128
                    printf ("caload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   129
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   130
                case 85:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   131
                    printf ("castore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   132
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   133
                case 192:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   134
                    printf ("checkcast ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   135
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   136
                case 144:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   137
                    printf ("d2f ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   138
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   139
                case 142:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   140
                    printf ("d2i ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   141
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   142
                case 143:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   143
                    printf ("d2l ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   144
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   145
                case 99:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   146
                    printf ("dadd ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   147
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   148
                case 49:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   149
                    printf ("daload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   150
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   151
                case 82:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   152
                    printf ("dastore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   153
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   154
                case 152:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   155
                    printf ("dcmp ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   156
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   157
                case 14:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   158
                    printf ("dconst_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   159
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   160
                case 15:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   161
                    printf ("dconst_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   162
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   163
                case 111:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   164
                    printf ("ddiv ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   165
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   166
                case 24:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   167
                    printf ("dload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   168
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   169
                case 38:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   170
                    printf ("dload_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   171
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   172
                case 39:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   173
                    printf ("dload_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   174
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   175
                case 40:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   176
                    printf ("dload_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   177
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   178
                case 41:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   179
                    printf ("dload_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   180
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   181
                case 107:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   182
                    printf ("dmul ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   183
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   184
                case 119:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   185
                    printf ("dneg ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   186
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   187
                case 115:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   188
                    printf ("drem ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   189
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   190
                case 175:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   191
                    printf ("dreturn ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   192
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   193
                case 57:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   194
                    printf ("dstore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   195
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   196
                case 71:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   197
                    printf ("dstore_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   198
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   199
                case 72:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   200
                    printf ("dstore_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   201
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   202
                case 73:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   203
                    printf ("dstore_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   204
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   205
                case 74:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   206
                    printf ("dstore_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   207
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   208
                case 103:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   209
                    printf ("dsub ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   210
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   211
                case 89:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   212
                    printf ("dup ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   213
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   214
                case 90:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   215
                    printf ("dup_x1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   216
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   217
                case 91:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   218
                    printf ("dup_x2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   219
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   220
                case 92:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   221
                    printf ("dup2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   222
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   223
                case 93:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   224
                    printf ("dup2_x1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   225
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   226
                case 94:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   227
                    printf ("dup2_x2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   228
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   229
                case 141:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   230
                    printf ("f2d ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   231
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   232
                case 139:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   233
                    printf ("f2i ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   234
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   235
                case 140:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   236
                    printf ("f2l ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   237
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   238
                case 98:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   239
                    printf ("fadd ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   240
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   241
                case 48:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   242
                    printf ("faload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   243
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   244
                case 81:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   245
                    printf ("fastore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   246
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   247
                case 150:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   248
                    printf ("fcmpg ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   249
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   250
                case 149:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   251
                    printf ("fcmpl ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   252
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   253
                case 11:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   254
                    printf ("fconst_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   255
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   256
                case 12:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   257
                    printf ("fconst_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   258
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   259
                case 13:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   260
                    printf ("fconst_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   261
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   262
                case 110:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   263
                    printf ("fdiv ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   264
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   265
                case 23:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   266
                    printf ("fload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   267
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   268
                case 34:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   269
                    printf ("fload_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   270
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   271
                case 35:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   272
                    printf ("fload_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   273
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   274
                case 36:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   275
                    printf ("fload_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   276
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   277
                case 37:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   278
                    printf ("fload_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   279
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   280
                case 106:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   281
                    printf ("fmul ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   282
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   283
                case 118:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   284
                    printf ("fneg ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   285
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   286
                case 114:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   287
                    printf ("frem ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   288
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   289
                case 174:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   290
                    printf ("freturn ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   291
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   292
                case 56:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   293
                    printf ("fstore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   294
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   295
                case 67:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   296
                    printf ("fstore_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   297
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   298
                case 68:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   299
                    printf ("fstore_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   300
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   301
                case 69:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   302
                    printf ("fstore_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   303
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   304
                case 70:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   305
                    printf ("fstore_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   306
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   307
                case 102:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   308
                    printf ("fsub ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   309
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   310
                case 180:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   311
                    printf ("getfield ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   312
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   313
                case 178:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   314
                    printf ("getstatic ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   315
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   316
                case 167:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   317
                    printf ("goto ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   318
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   319
                case 200:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   320
                    printf ("goto_w ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   321
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   322
                case 145:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   323
                    printf ("i2b ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   324
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   325
                case 146:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   326
                    printf ("i2c ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   327
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   328
                case 135:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   329
                    printf ("i2d ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   330
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   331
                case 134:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   332
                    printf ("i2f ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   333
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   334
                case 133:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   335
                    printf ("i2l ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   336
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   337
                case 147:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   338
                    printf ("i2s ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   339
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   340
                case 96:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   341
                    printf ("iadd ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   342
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   343
                case 46:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   344
                    printf ("iaload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   345
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   346
                case 126:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   347
                    printf ("iand ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   348
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   349
                case 79:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   350
                    printf ("iastore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   351
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   352
                case 2:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   353
                    printf ("iconst_m1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   354
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   355
                case 3:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   356
                    printf ("iconst_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   357
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   358
                case 4:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   359
                    printf ("iconst_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   360
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   361
                case 5:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   362
                    printf ("iconst_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   363
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   364
                case 6:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   365
                    printf ("iconst_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   366
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   367
                case 7:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   368
                    printf ("iconst_4 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   369
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   370
                case 8:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   371
                    printf ("iconst_5 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   372
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   373
                case 108:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   374
                    printf ("idiv ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   375
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   376
                case 165:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   377
                    printf ("if_acmpeq ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   378
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   379
                case 166:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   380
                    printf ("if_acmpne ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   381
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   382
                case 159:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   383
                    printf ("if_icmpeq ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   384
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   385
                case 160:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   386
                    printf ("if_icmpne ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   387
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   388
                case 161:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   389
                    printf ("if_icmplt ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   390
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   391
                case 162:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   392
                    printf ("if_icmpge ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   393
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   394
                case 163:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   395
                    printf ("if_icmpgt ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   396
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   397
                case 164:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   398
                    printf ("if_icmple ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   399
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   400
                case 153:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   401
                    printf ("ifeq ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   402
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   403
                case 154:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   404
                    printf ("ifne ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   405
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   406
                case 155:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   407
                    printf ("iflt ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   408
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   409
                case 156:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   410
                    printf ("ifge ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   411
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   412
                case 157:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   413
                    printf ("ifgt ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   414
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   415
                case 158:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   416
                    printf ("ifle ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   417
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   418
                case 199:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   419
                    printf ("ifnonnull ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   420
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   421
                case 198:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   422
                    printf ("ifnull ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   423
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   424
                case 132:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   425
                    printf ("iinc %d %d\n", buffer[i + 1], buffer[i + 2]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   426
                    i += 2;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   427
                    continue;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   428
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   429
                case 21:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   430
                    printf ("iload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   431
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   432
                case 26:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   433
                    printf ("iload_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   434
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   435
                case 27:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   436
                    printf ("iload_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   437
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   438
                case 28:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   439
                    printf ("iload_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   440
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   441
                case 29:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   442
                    printf ("iload_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   443
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   444
                case 104:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   445
                    printf ("imul ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   446
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   447
                case 116:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   448
                    printf ("ineg ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   449
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   450
                case 193:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   451
                    printf ("instanceof ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   452
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   453
                case 185:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   454
                    printf ("invokeinterface ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   455
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   456
                case 183:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   457
                    printf ("invokespecial ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   458
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   459
                case 184:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   460
                    printf ("invokestatic ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   461
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   462
                case 182:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   463
                    printf ("invokevirtual ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   464
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   465
                case 128:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   466
                    printf ("ior ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   467
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   468
                case 112:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   469
                    printf ("irem ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   470
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   471
                case 172:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   472
                    printf ("ireturn ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   473
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   474
                case 120:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   475
                    printf ("ishl ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   476
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   477
                case 122:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   478
                    printf ("ishr ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   479
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   480
                case 54:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   481
                    printf ("istore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   482
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   483
                case 59:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   484
                    printf ("istore_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   485
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   486
                case 60:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   487
                    printf ("istore_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   488
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   489
                case 61:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   490
                    printf ("istore_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   491
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   492
                case 62:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   493
                    printf ("istore_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   494
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   495
                case 100:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   496
                    printf ("isub ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   497
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   498
                case 124:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   499
                    printf ("iushr ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   500
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   501
                case 130:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   502
                    printf ("ixor ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   503
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   504
                case 168:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   505
                    printf ("jsr ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   506
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   507
                case 201:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   508
                    printf ("jsr_w ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   509
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   510
                case 138:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   511
                    printf ("l2d ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   512
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   513
                case 137:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   514
                    printf ("l2f ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   515
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   516
                case 136:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   517
                    printf ("l2i ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   518
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   519
                case 97:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   520
                    printf ("ladd ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   521
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   522
                case 47:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   523
                    printf ("laload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   524
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   525
                case 127:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   526
                    printf ("land ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   527
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   528
                case 80:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   529
                    printf ("lastore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   530
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   531
                case 148:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   532
                    printf ("lcmd ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   533
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   534
                case 9:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   535
                    printf ("lconst_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   536
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   537
                case 10:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   538
                    printf ("lconst_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   539
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   540
                case 18:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   541
                    printf ("ldc ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   542
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   543
                case 19:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   544
                    printf ("ldc_w ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   545
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   546
                case 20:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   547
                    printf ("ldc2_w ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   548
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   549
                case 109:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   550
                    printf ("ldiv ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   551
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   552
                case 22:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   553
                    printf ("lload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   554
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   555
                case 30:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   556
                    printf ("lload_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   557
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   558
                case 31:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   559
                    printf ("lload_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   560
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   561
                case 32:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   562
                    printf ("lload_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   563
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   564
                case 33:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   565
                    printf ("lload_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   566
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   567
                case 105:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   568
                    printf ("lmul ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   569
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   570
                case 117:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   571
                    printf ("lneg ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   572
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   573
                case 171:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   574
                    printf ("lookupswitch ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   575
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   576
                case 129:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   577
                    printf ("lor ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   578
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   579
                case 113:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   580
                    printf ("lrem ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   581
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   582
                case 173:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   583
                    printf ("lreturn ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   584
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   585
                case 121:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   586
                    printf ("lshl ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   587
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   588
                case 123:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   589
                    printf ("lshr ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   590
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   591
                case 55:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   592
                    printf ("lstore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   593
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   594
                case 63:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   595
                    printf ("lstore_0 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   596
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   597
                case 64:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   598
                    printf ("lstore_1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   599
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   600
                case 65:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   601
                    printf ("lstore_2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   602
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   603
                case 66:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   604
                    printf ("lstore_3 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   605
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   606
                case 101:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   607
                    printf ("lsub ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   608
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   609
                case 125:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   610
                    printf ("lushr ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   611
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   612
                case 131:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   613
                    printf ("lxor ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   614
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   615
                case 194:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   616
                    printf ("monitorenter ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   617
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   618
                case 195:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   619
                    printf ("monitorexit ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   620
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   621
                case 197:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   622
                    printf ("multianewarray ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   623
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   624
                case 187:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   625
                    printf ("new ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   626
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   627
                case 188:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   628
                    printf ("newarray ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   629
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   630
                case 0:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   631
                    printf ("nop ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   632
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   633
                case 87:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   634
                    printf ("pop ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   635
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   636
                case 88:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   637
                    printf ("pop2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   638
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   639
                case 181:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   640
                    printf ("putfield ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   641
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   642
                case 179:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   643
                    printf ("putstatic ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   644
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   645
                case 169:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   646
                    printf ("ret ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   647
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   648
                case 177:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   649
                    printf ("return ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   650
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   651
                case 53:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   652
                    printf ("saload ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   653
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   654
                case 86:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   655
                    printf ("sastore ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   656
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   657
                case 17:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   658
                    printf ("sipush ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   659
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   660
                case 95:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   661
                    printf ("swap ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   662
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   663
                case 170:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   664
                    printf ("tableswitch ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   665
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   666
                case 196:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   667
                    printf ("wide ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   668
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   669
                case 202:      /* reserved item */
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   670
                    printf ("breakpoint ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   671
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   672
                case 254:      /* reserved item */
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   673
                    printf ("impdep1 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   674
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   675
                case 255:      /* reserved item */
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   676
                    printf ("impdep2 ");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   677
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   678
                default:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   679
                    printf ("OPCODE %02X(%d) ", buffer[i], buffer[i]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   680
                }
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   681
                OPCODE = 0;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   682
            } else
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   683
                switch (buffer[i]) {
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   684
                case '\0':
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   685
                case '>':
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   686
                case '<':
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   687
                    printf ("\n");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   688
                    OPCODE = 1;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   689
                    break;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   690
                default:
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   691
                    if (isprint (buffer[i]))
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   692
                        printf ("%c", buffer[i]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   693
                    else
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   694
                        printf ("%02X ", buffer[i]);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   695
                }
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   696
        }
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   697
    }
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   698
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   699
    printf ("\n");
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   700
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   701
    if (f != NULL)
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   702
        fclose (f);
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   703
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   704
    return EXIT_SUCCESS;
d2a071bd1a60 java disassembler
Markus Bröker <mbroeker@largo.dyndns.tv>
parents:
diff changeset
   705
}