1reading small-class.txt...
2begin classfile
3magic: cafebabe
4minor_version: 0000
5major_version: 002e
6constant_pool_count: 0017
7
8constant_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}
29end constant_pool
30access_flags: public
31this_class: type{Small}
32super_class: type{java.lang.Object}
33interfaces_count: 0000
34fields_count: 0000
35methods_count: 0001
36
37methods[0]:
38  access_flags: public
39  name: blort
40  descriptor: ()V
41  attributes_count: 0001
42
43  attributes[0]:
44    name: Code
45    length: 000001db
46    max_stack: 0001
47    max_locals: 0001
48    code_length: 000001cf
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: new type{Small}
255    016b: newarray boolean
256    016d: newarray char
257    016f: newarray float
258    0171: newarray double
259    0173: newarray byte
260    0175: newarray short
261    0177: newarray int
262    0179: newarray long
263    017b: anewarray type{Small}
264    017e: arraylength
265    017f: athrow
266    0180: checkcast type{java.lang.Object}
267    0183: instanceof type{java.lang.Object}
268    0186: monitorenter
269    0187: monitorexit
270    0188: wide iload 0123
271    018c: wide lload 0124 // category-2
272    0190: wide fload 0125
273    0194: wide dload 0126 // category-2
274    0198: wide aload 0127
275    019c: wide istore 20f0
276    01a0: wide lstore 20f1 // category-2
277    01a4: wide fstore 20f2
278    01a8: wide dstore 20f3 // category-2
279    01ac: wide astore 20f4
280    01b0: wide ret ffff
281    01b4: wide iinc 0002, #+1000
282    01ba: multianewarray type{java.lang.Object}, 04
283    01be: ifnull ffff
284    01c1: ifnonnull 01c1
285    01c4: goto_w 700001c4
286    01c9: jsr_w 000001c4
287    01ce: unused_ca
288    exception_table_length: 0000
289    attributes_count: 0000
290  end attributes[0]
291end methods[0]
292attributes_count: 0000
293end classfile
294