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