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