Home | History | Annotate | Download | only in 024-code-bytecode
      1 reading small-class.txt...
      2 begin classfile
      3 magic: cafebabe
      4 minor_version: 0000
      5 major_version: 002e
      6 constant_pool_count: 0017
      7 
      8 constant_pool:
      9   0001: type{Small}
     10   0002: type{java.lang.Object}
     11   0003: utf8{"Small"}
     12   0004: utf8{"java/lang/Object"}
     13   0005: utf8{"blort"}
     14   0006: utf8{"()V"}
     15   0007: utf8{"Code"}
     16   0008: string{"Small"}
     17   0009: int{0x12345678 / 305419896}
     18   000a: float{0x42f6e666 / 123.45}
     19   000b: long{0x123456789abcdef0 / 1311768467463790320}
     20   000d: double{0x411958955f8a0903 / 415269.3433}
     21   000f: utf8{"blort"}
     22   0010: utf8{"x/y/Zzz"}
     23   0011: utf8{"()V"}
     24   0012: nat{blort:x/y/Zzz}
     25   0013: nat{blort:()V}
     26   0014: field{Small.blort:x/y/Zzz}
     27   0015: method{Small.blort:()V}
     28   0016: ifaceMethod{Small.blort:()V}
     29 end constant_pool
     30 access_flags: public
     31 this_class: type{Small}
     32 super_class: type{java.lang.Object}
     33 interfaces_count: 0000
     34 fields_count: 0000
     35 methods_count: 0001
     36 
     37 methods[0]:
     38   access_flags: public
     39   name: blort
     40   descriptor: ()V
     41   attributes_count: 0001
     42   
     43   attributes[0]:
     44     name: Code
     45     length: 000001dc
     46     max_stack: 0001
     47     max_locals: 0001
     48     code_length: 000001d0
     49     0000: nop
     50     0001: aconst_null
     51     0002: iconst_m1 // #-01
     52     0003: iconst_0 // #+00
     53     0004: iconst_1 // #+01
     54     0005: iconst_2 // #+02
     55     0006: iconst_3 // #+03
     56     0007: iconst_4 // #+04
     57     0008: iconst_5 // #+05
     58     0009: lconst_0 // +00
     59     000a: lconst_1 // +01
     60     000b: fconst_0 // 0.0
     61     000c: fconst_1 // 1.0
     62     000d: fconst_2 // 2.0
     63     000e: dconst_0 // 0.0
     64     000f: dconst_1 // 1.0
     65     0010: bipush #+45
     66     0012: sipush #+5432
     67     0015: ldc string{"Small"}
     68     0017: ldc #+12345678
     69     0019: ldc #42f6e666 // 123.45
     70     001b: ldc_w string{"Small"}
     71     001e: ldc_w #+12345678
     72     0021: ldc_w #42f6e666 // 123.45
     73     0024: ldc2_w #+123456789abcdef0
     74     0027: ldc2_w #411958955f8a0903 // 415269.3433
     75     002a: iload 01
     76     002c: lload 02 // category-2
     77     002e: fload 03
     78     0030: dload 04 // category-2
     79     0032: aload 05
     80     0034: iload_0 // 00
     81     0035: iload_1 // 01
     82     0036: iload_2 // 02
     83     0037: iload_3 // 03
     84     0038: lload_0 // 00, category-2
     85     0039: lload_1 // 01, category-2
     86     003a: lload_2 // 02, category-2
     87     003b: lload_3 // 03, category-2
     88     003c: fload_0 // 00
     89     003d: fload_1 // 01
     90     003e: fload_2 // 02
     91     003f: fload_3 // 03
     92     0040: dload_0 // 00, category-2
     93     0041: dload_1 // 01, category-2
     94     0042: dload_2 // 02, category-2
     95     0043: dload_3 // 03, category-2
     96     0044: aload_0 // 00
     97     0045: aload_1 // 01
     98     0046: aload_2 // 02
     99     0047: aload_3 // 03
    100     0048: iaload
    101     0049: laload
    102     004a: faload
    103     004b: daload
    104     004c: aaload
    105     004d: baload
    106     004e: caload
    107     004f: saload
    108     0050: istore 41
    109     0052: lstore 42 // category-2
    110     0054: fstore 43
    111     0056: dstore 44 // category-2
    112     0058: astore 45
    113     005a: istore_0 // 00
    114     005b: istore_1 // 01
    115     005c: istore_2 // 02
    116     005d: istore_3 // 03
    117     005e: lstore_0 // 00, category-2
    118     005f: lstore_1 // 01, category-2
    119     0060: lstore_2 // 02, category-2
    120     0061: lstore_3 // 03, category-2
    121     0062: fstore_0 // 00
    122     0063: fstore_1 // 01
    123     0064: fstore_2 // 02
    124     0065: fstore_3 // 03
    125     0066: dstore_0 // 00, category-2
    126     0067: dstore_1 // 01, category-2
    127     0068: dstore_2 // 02, category-2
    128     0069: dstore_3 // 03, category-2
    129     006a: astore_0 // 00
    130     006b: astore_1 // 01
    131     006c: astore_2 // 02
    132     006d: astore_3 // 03
    133     006e: iastore
    134     006f: lastore
    135     0070: fastore
    136     0071: dastore
    137     0072: aastore
    138     0073: bastore
    139     0074: castore
    140     0075: sastore
    141     0076: pop
    142     0077: pop2
    143     0078: dup
    144     0079: dup_x1
    145     007a: dup_x2
    146     007b: dup2
    147     007c: dup2_x1
    148     007d: dup2_x2
    149     007e: swap
    150     007f: iadd
    151     0080: ladd
    152     0081: fadd
    153     0082: dadd
    154     0083: isub
    155     0084: lsub
    156     0085: fsub
    157     0086: dsub
    158     0087: imul
    159     0088: lmul
    160     0089: fmul
    161     008a: dmul
    162     008b: idiv
    163     008c: ldiv
    164     008d: fdiv
    165     008e: ddiv
    166     008f: irem
    167     0090: lrem
    168     0091: frem
    169     0092: drem
    170     0093: ineg
    171     0094: lneg
    172     0095: fneg
    173     0096: dneg
    174     0097: ishl
    175     0098: lshl
    176     0099: ishr
    177     009a: lshr
    178     009b: iushr
    179     009c: lushr
    180     009d: iand
    181     009e: land
    182     009f: ior
    183     00a0: lor
    184     00a1: ixor
    185     00a2: lxor
    186     00a3: iinc 05, #-01
    187     00a6: i2l
    188     00a7: i2f
    189     00a8: i2d
    190     00a9: l2i
    191     00aa: l2f
    192     00ab: l2d
    193     00ac: f2i
    194     00ad: f2l
    195     00ae: f2d
    196     00af: d2i
    197     00b0: d2l
    198     00b1: d2f
    199     00b2: i2b
    200     00b3: i2c
    201     00b4: i2s
    202     00b5: lcmp
    203     00b6: fcmpl
    204     00b7: fcmpg
    205     00b8: dcmpl
    206     00b9: dcmpg
    207     00ba: ifeq 00ba
    208     00bd: ifne 00ba
    209     00c0: iflt 00ba
    210     00c3: ifge 00ba
    211     00c6: ifgt 00ba
    212     00c9: ifle 00ba
    213     00cc: if_icmpeq 00db
    214     00cf: if_icmpne 00db
    215     00d2: if_icmplt 00db
    216     00d5: if_icmpge 00db
    217     00d8: if_icmpgt 00db
    218     00db: if_icmple 00db
    219     00de: if_acmpeq 00de
    220     00e1: if_acmpne 00e1
    221     00e4: goto 0000
    222     00e7: jsr 00e7
    223     00ea: ret 2f
    224     00ec: tableswitch
    225       +12340000: 0000
    226       +12340001: 0001
    227       +12340002: 0002
    228       +12340003: 0003
    229       +12340004: 0004
    230       +12340005: 0005
    231       +12340006: 0007
    232       +12340007: 0009
    233       default: 00ea
    234     011c: lookupswitch
    235       -7689edcc: 0148
    236       +00001000: 0149
    237       +03333333: 0149
    238       +79787776: 014b
    239       default: 00ec
    240     0148: ireturn
    241     0149: lreturn
    242     014a: freturn
    243     014b: dreturn
    244     014c: areturn
    245     014d: return
    246     014e: getstatic field{Small.blort:x/y/Zzz}
    247     0151: putstatic field{Small.blort:x/y/Zzz}
    248     0154: getfield field{Small.blort:x/y/Zzz}
    249     0157: putfield field{Small.blort:x/y/Zzz}
    250     015a: invokevirtual method{Small.blort:()V}
    251     015d: invokespecial method{Small.blort:()V}
    252     0160: invokestatic method{Small.blort:()V}
    253     0163: invokeinterface ifaceMethod{Small.blort:()V}, 0001
    254     0168: unused_ba
    255     0169: new type{Small}
    256     016c: newarray boolean
    257     016e: newarray char
    258     0170: newarray float
    259     0172: newarray double
    260     0174: newarray byte
    261     0176: newarray short
    262     0178: newarray int
    263     017a: newarray long
    264     017c: anewarray type{Small}
    265     017f: arraylength
    266     0180: athrow
    267     0181: checkcast type{java.lang.Object}
    268     0184: instanceof type{java.lang.Object}
    269     0187: monitorenter
    270     0188: monitorexit
    271     0189: wide iload 0123
    272     018d: wide lload 0124 // category-2
    273     0191: wide fload 0125
    274     0195: wide dload 0126 // category-2
    275     0199: wide aload 0127
    276     019d: wide istore 20f0
    277     01a1: wide lstore 20f1 // category-2
    278     01a5: wide fstore 20f2
    279     01a9: wide dstore 20f3 // category-2
    280     01ad: wide astore 20f4
    281     01b1: wide ret ffff
    282     01b5: wide iinc 0002, #+1000
    283     01bb: multianewarray type{java.lang.Object}, 04
    284     01bf: ifnull 0000
    285     01c2: ifnonnull 01c2
    286     01c5: goto_w 700001c5
    287     01ca: jsr_w 000001c5
    288     01cf: unused_ca
    289     exception_table_length: 0000
    290     attributes_count: 0000
    291   end attributes[0]
    292 end methods[0]
    293 attributes_count: 0000
    294 end classfile
    295