1
2method Base.<init>():void
3{
4............................. begin block 1 .............................
5	.src "entryHooks.java"
6	.line 27
7	.prologue_end
8	.line 27
9	    0| move-object v0, v2
10	.local v0, "this", Base
11	    1| move-object v1, v0
12	    2| invoke-direct {v1}, java.lang.Object.<init>():void
13.............................. end block 1 ..............................
14............................. begin block 2 .............................
15	    5| return-void
16.............................. end block 2 ..............................
17}
18
19method Base.foo(int, java.lang.String):int
20{
21............................. begin block 1 .............................
22	.params "?", "?"
23	.src "entryHooks.java"
24	.line 31
25	.prologue_end
26	.line 31
27	    0| move-object v0, v10
28	.local v0, "this", Base
29	    1| move v1, v11
30	.local v1, "x", int
31	    2| move-object v2, v12
32	.local v2, "msg", java.lang.String
33	    3| sget-object v3, java.lang.System.out
34.............................. end block 1 ..............................
35............................. begin block 2 .............................
36	    5| const-string v4, "Base.foo(%d, '%s')\n"
37.............................. end block 2 ..............................
38............................. begin block 3 .............................
39	    7| const/4 v5, #+2 (0x00000002 | 2.80260e-45)
40	    8| new-array v5, v5, java.lang.Object[]
41.............................. end block 3 ..............................
42............................. begin block 4 .............................
43	   10| move-object v9, v5
44	   11| move-object v5, v9
45	   12| move-object v6, v9
46	   13| const/4 v7, #+0 (0x00000000 | 0.00000)
47	   14| move v8, v1
48	   15| invoke-static {v8}, java.lang.Integer.valueOf(int):java.lang.Integer
49.............................. end block 4 ..............................
50............................. begin block 5 .............................
51	   18| move-result-object v8
52	   19| aput-object v8, v6, v7
53.............................. end block 5 ..............................
54............................. begin block 6 .............................
55	   21| move-object v9, v5
56	   22| move-object v5, v9
57	   23| move-object v6, v9
58	   24| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
59	   25| move-object v8, v2
60	   26| aput-object v8, v6, v7
61.............................. end block 6 ..............................
62............................. begin block 7 .............................
63	   28| invoke-virtual {v3,v4,v5}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
64.............................. end block 7 ..............................
65............................. begin block 8 .............................
66	   31| move-result-object v3
67	.line 32
68	   32| move v3, v1
69	   33| move v0, v3
70	.end_local v0
71	   34| return v0
72.............................. end block 8 ..............................
73}
74
75method Derived.<init>():void
76{
77............................. begin block 1 .............................
78	.src "entryHooks.java"
79	.line 36
80	.prologue_end
81	.line 36
82	    0| move-object v0, v2
83	.local v0, "this", Derived
84	    1| move-object v1, v0
85	    2| invoke-direct {v1}, Base.<init>():void
86.............................. end block 1 ..............................
87............................. begin block 2 .............................
88	    5| return-void
89.............................. end block 2 ..............................
90}
91
92method Derived.foo(int, java.lang.String):int
93{
94............................. begin block 1 .............................
95	.params "?", "?"
96	.src "entryHooks.java"
97	.line 40
98	.prologue_end
99	.line 40
100	    0| move-object v0, v10
101	.local v0, "this", Derived
102	    1| move v1, v11
103	.local v1, "x", int
104	    2| move-object v2, v12
105	.local v2, "msg", java.lang.String
106	    3| sget-object v3, java.lang.System.out
107.............................. end block 1 ..............................
108............................. begin block 2 .............................
109	    5| const-string v4, "Derived.foo(%d, '%s')\n"
110.............................. end block 2 ..............................
111............................. begin block 3 .............................
112	    7| const/4 v5, #+2 (0x00000002 | 2.80260e-45)
113	    8| new-array v5, v5, java.lang.Object[]
114.............................. end block 3 ..............................
115............................. begin block 4 .............................
116	   10| move-object v9, v5
117	   11| move-object v5, v9
118	   12| move-object v6, v9
119	   13| const/4 v7, #+0 (0x00000000 | 0.00000)
120	   14| move v8, v1
121	   15| invoke-static {v8}, java.lang.Integer.valueOf(int):java.lang.Integer
122.............................. end block 4 ..............................
123............................. begin block 5 .............................
124	   18| move-result-object v8
125	   19| aput-object v8, v6, v7
126.............................. end block 5 ..............................
127............................. begin block 6 .............................
128	   21| move-object v9, v5
129	   22| move-object v5, v9
130	   23| move-object v6, v9
131	   24| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
132	   25| move-object v8, v2
133	   26| aput-object v8, v6, v7
134.............................. end block 6 ..............................
135............................. begin block 7 .............................
136	   28| invoke-virtual {v3,v4,v5}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
137.............................. end block 7 ..............................
138............................. begin block 8 .............................
139	   31| move-result-object v3
140	.line 41
141	   32| move v3, v1
142	   33| const/4 v4, #+2 (0x00000002 | 2.80260e-45)
143	   34| mul-int/lit8 v3, v3, #+2 (0x00000002 | 2.80260e-45)
144	   36| move v0, v3
145	.end_local v0
146	   37| return v0
147.............................. end block 8 ..............................
148}
149
150method Target.<init>():void
151{
152............................. begin block 1 .............................
153	.src "entryHooks.java"
154	.line 45
155	.prologue_end
156	.line 45
157	    0| move-object v0, v2
158	.local v0, "this", Target
159	    1| move-object v1, v0
160	    2| invoke-direct {v1}, java.lang.Object.<init>():void
161.............................. end block 1 ..............................
162............................. begin block 2 .............................
163	    5| return-void
164.............................. end block 2 ..............................
165}
166
167method Target.main(java.lang.String[]):void
168{
169............................. begin block 1 .............................
170	.params "?"
171	.src "entryHooks.java"
172	.line 51
173	.prologue_end
174	.line 51
175	    0| move-object v0, v8
176	.local v0, "args", java.lang.String[]
177	    1| sget-object v1, java.lang.System.out
178.............................. end block 1 ..............................
179............................. begin block 2 .............................
180	    3| const-string v2, "Hello, world!"
181.............................. end block 2 ..............................
182............................. begin block 3 .............................
183	    5| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void
184.............................. end block 3 ..............................
185............................. begin block 4 .............................
186	.line 52
187	    8| sget-object v1, java.lang.System.out
188.............................. end block 4 ..............................
189............................. begin block 5 .............................
190	   10| const-string v2, "final = %d\n"
191.............................. end block 5 ..............................
192............................. begin block 6 .............................
193	   12| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
194	   13| new-array v3, v3, java.lang.Object[]
195.............................. end block 6 ..............................
196............................. begin block 7 .............................
197	   15| move-object v7, v3
198	   16| move-object v3, v7
199	   17| move-object v4, v7
200	   18| const/4 v5, #+0 (0x00000000 | 0.00000)
201	   19| invoke-static {}, Target.test():int
202.............................. end block 7 ..............................
203............................. begin block 8 .............................
204	   22| move-result v6
205	   23| invoke-static {v6}, java.lang.Integer.valueOf(int):java.lang.Integer
206.............................. end block 8 ..............................
207............................. begin block 9 .............................
208	   26| move-result-object v6
209	   27| aput-object v6, v4, v5
210.............................. end block 9 ..............................
211............................. begin block 10 .............................
212	   29| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
213.............................. end block 10 ..............................
214............................. begin block 11 .............................
215	   32| move-result-object v1
216	.line 53
217	   33| sget-object v1, java.lang.System.out
218.............................. end block 11 ..............................
219............................. begin block 12 .............................
220	   35| const-string v2, "Good bye!"
221.............................. end block 12 ..............................
222............................. begin block 13 .............................
223	   37| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void
224.............................. end block 13 ..............................
225............................. begin block 14 .............................
226	.line 54
227	   40| return-void
228.............................. end block 14 ..............................
229}
230
231method Target.test():int
232{
233............................. begin block 1 .............................
234	.src "entryHooks.java"
235	.line 58
236	.prologue_end
237	.line 58
238	    0| new-instance v1, Target
239.............................. end block 1 ..............................
240............................. begin block 2 .............................
241	    2| move-object v4, v1
242	    3| move-object v1, v4
243	    4| move-object v2, v4
244	    5| invoke-direct {v2}, Target.<init>():void
245.............................. end block 2 ..............................
246............................. begin block 3 .............................
247	    8| move-object v0, v1
248	.line 59
249	.local v0, "obj", Target
250	    9| move-object v1, v0
251	   10| new-instance v2, Derived
252.............................. end block 3 ..............................
253............................. begin block 4 .............................
254	   12| move-object v4, v2
255	   13| move-object v2, v4
256	   14| move-object v3, v4
257	   15| invoke-direct {v3}, Derived.<init>():void
258.............................. end block 4 ..............................
259............................. begin block 5 .............................
260	   18| iput-object v2, v1, Target.test
261.............................. end block 5 ..............................
262............................. begin block 6 .............................
263	.line 60
264	   20| move-object v1, v0
265	   21| const/4 v2, #+3 (0x00000003 | 4.20390e-45)
266	   22| const-string v3, "Testing..."
267.............................. end block 6 ..............................
268............................. begin block 7 .............................
269	   24| invoke-virtual {v1,v2,v3}, Target.foo(int, java.lang.String):int
270.............................. end block 7 ..............................
271............................. begin block 8 .............................
272	   27| move-result v1
273	   28| move v0, v1
274	.end_local v0
275	   29| return v0
276.............................. end block 8 ..............................
277}
278
279method Target.foo(int):int
280{
281............................. begin block 1 .............................
282	.params "?"
283	.src "entryHooks.java"
284	.line 74
285	.prologue_end
286	.line 74
287	    0| move-object v0, v3
288	.local v0, "this", Target
289	    1| move v1, v4
290	.local v1, "x", int
291	    2| const/4 v2, #+1 (0x00000001 | 1.40130e-45)
292	    3| move v0, v2
293	.end_local v0
294	    4| return v0
295.............................. end block 1 ..............................
296}
297
298method Target.foo(int, int):int
299{
300............................. begin block 1 .............................
301	.params "?", "?"
302	.src "entryHooks.java"
303	.line 75
304	.prologue_end
305	.line 75
306	    0| move-object v0, v4
307	.local v0, "this", Target
308	    1| move v1, v5
309	.local v1, "x", int
310	    2| move v2, v6
311	.local v2, "y", int
312	    3| const/4 v3, #+2 (0x00000002 | 2.80260e-45)
313	    4| move v0, v3
314	.end_local v0
315	    5| return v0
316.............................. end block 1 ..............................
317}
318
319method Target.foo(int, java.lang.String):int
320{
321............................. begin block 1 .............................
322	.params "?", "?"
323	.src "entryHooks.java"
324	.line 65
325	.prologue_end
326	.line 65
327	    0| move-object v0, v9
328	.local v0, "this", Target
329	    1| move v1, v10
330	.local v1, "x", int
331	    2| move-object v2, v11
332	.local v2, "msg", java.lang.String
333	    3| const/4 v5, #+0 (0x00000000 | 0.00000)
334	    4| move v3, v5
335	.line 66
336	.local v3, "sum", int
337	    5| const/4 v5, #+0 (0x00000000 | 0.00000)
338	    6| move v4, v5
339.............................. end block 1 ..............................
340............................. begin block 2 .............................
341Label_1:
342	.local v4, "i", int
343	    7| move v5, v4
344	    8| move v6, v1
345	    9| if-ge v5, v6, Label_2
346.............................. end block 2 ..............................
347............................. begin block 3 .............................
348	.line 68
349	   11| move v5, v3
350	   12| move-object v6, v0
351	   13| iget-object v6, v6, Target.test
352.............................. end block 3 ..............................
353............................. begin block 4 .............................
354	   15| move v7, v4
355	   16| move-object v8, v2
356	   17| invoke-virtual {v6,v7,v8}, Base.foo(int, java.lang.String):int
357.............................. end block 4 ..............................
358............................. begin block 5 .............................
359	   20| move-result v6
360	   21| add-int/2addr v5, v6
361	   22| move v3, v5
362	.line 66
363	   23| add-int/lit8 v4, v4, #+1 (0x00000001 | 1.40130e-45)
364	   25| goto Label_1
365.............................. end block 5 ..............................
366............................. begin block 6 .............................
367Label_2:
368	.line 70
369	   26| move v5, v3
370	   27| move v0, v5
371	.end_local v0
372	   28| return v0
373.............................. end block 6 ..............................
374}
375
376method Target.foo(int, java.lang.String, java.lang.String):int
377{
378............................. begin block 1 .............................
379	.params "?", "?", "?"
380	.src "entryHooks.java"
381	.line 76
382	.prologue_end
383	.line 76
384	    0| move-object v0, v5
385	.local v0, "this", Target
386	    1| move v1, v6
387	.local v1, "x", int
388	    2| move-object v2, v7
389	.local v2, "msg", java.lang.String
390	    3| move-object v3, v8
391	.local v3, "msg2", java.lang.String
392	    4| const/4 v4, #+3 (0x00000003 | 4.20390e-45)
393	    5| move v0, v4
394	.end_local v0
395	    6| return v0
396.............................. end block 1 ..............................
397}
398
399method Target.foo(int, java.lang.String[]):int
400{
401............................. begin block 1 .............................
402	.params "?", "?"
403	.src "entryHooks.java"
404	.line 77
405	.prologue_end
406	.line 77
407	    0| move-object v0, v4
408	.local v0, "this", Target
409	    1| move v1, v5
410	.local v1, "x", int
411	    2| move-object v2, v6
412	.local v2, "msgs", java.lang.String[]
413	    3| const/4 v3, #+4 (0x00000004 | 5.60519e-45)
414	    4| move v0, v3
415	.end_local v0
416	    5| return v0
417.............................. end block 1 ..............................
418}
419
420method Target.foo(int, java.lang.String[][]):java.lang.Integer
421{
422............................. begin block 1 .............................
423	.params "?", "?"
424	.src "entryHooks.java"
425	.line 78
426	.prologue_end
427	.line 78
428	    0| move-object v0, v4
429	.local v0, "this", Target
430	    1| move v1, v5
431	.local v1, "x", int
432	    2| move-object v2, v6
433	.local v2, "msgs", java.lang.String[][]
434	    3| const/4 v3, #+5 (0x00000005 | 7.00649e-45)
435	    4| invoke-static {v3}, java.lang.Integer.valueOf(int):java.lang.Integer
436.............................. end block 1 ..............................
437............................. begin block 2 .............................
438	    7| move-result-object v3
439	    8| move-object v0, v3
440	.end_local v0
441	    9| return-object v0
442.............................. end block 2 ..............................
443}
444
445method Target.foo():void
446{
447............................. begin block 1 .............................
448	.src "entryHooks.java"
449	.line 73
450	.prologue_end
451	.line 73
452	    0| return-void
453.............................. end block 1 ..............................
454}
455
456method Tracer.<init>():void
457{
458............................. begin block 1 .............................
459	.src "entryHooks.java"
460	.line 2
461	.prologue_end
462	.line 2
463	    0| move-object v0, v2
464	.local v0, "this", Tracer
465	    1| move-object v1, v0
466	    2| invoke-direct {v1}, java.lang.Object.<init>():void
467.............................. end block 1 ..............................
468............................. begin block 2 .............................
469	    5| return-void
470.............................. end block 2 ..............................
471}
472
473method Tracer.onEntry(java.lang.String):void
474{
475............................. begin block 1 .............................
476	.params "?"
477	.src "entryHooks.java"
478	.line 6
479	.prologue_end
480	.line 6
481	    0| move-object v0, v5
482	.local v0, "methodName", java.lang.String
483	    1| sget-object v1, java.lang.System.out
484.............................. end block 1 ..............................
485............................. begin block 2 .............................
486	    3| new-instance v2, java.lang.StringBuilder
487.............................. end block 2 ..............................
488............................. begin block 3 .............................
489	    5| move-object v4, v2
490	    6| move-object v2, v4
491	    7| move-object v3, v4
492	    8| invoke-direct {v3}, java.lang.StringBuilder.<init>():void
493.............................. end block 3 ..............................
494............................. begin block 4 .............................
495	   11| const-string v3, "OnEntry("
496.............................. end block 4 ..............................
497............................. begin block 5 .............................
498	   13| invoke-virtual {v2,v3}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder
499.............................. end block 5 ..............................
500............................. begin block 6 .............................
501	   16| move-result-object v2
502	   17| move-object v3, v0
503	   18| invoke-virtual {v2,v3}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder
504.............................. end block 6 ..............................
505............................. begin block 7 .............................
506	   21| move-result-object v2
507	   22| const-string v3, ")"
508.............................. end block 7 ..............................
509............................. begin block 8 .............................
510	   24| invoke-virtual {v2,v3}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder
511.............................. end block 8 ..............................
512............................. begin block 9 .............................
513	   27| move-result-object v2
514	   28| invoke-virtual {v2}, java.lang.StringBuilder.toString():java.lang.String
515.............................. end block 9 ..............................
516............................. begin block 10 .............................
517	   31| move-result-object v2
518	   32| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void
519.............................. end block 10 ..............................
520............................. begin block 11 .............................
521	.line 7
522	   35| return-void
523.............................. end block 11 ..............................
524}
525
526method Tracer.onFooEntry(Target, int, java.lang.String):void
527{
528............................. begin block 1 .............................
529	.params "?", "?", "?"
530	.src "entryHooks.java"
531	.line 11
532	.prologue_end
533	.line 11
534	    0| move-object v0, v10
535	.local v0, "__this", Target
536	    1| move v1, v11
537	.local v1, "x", int
538	    2| move-object v2, v12
539	.local v2, "msg", java.lang.String
540	    3| sget-object v3, java.lang.System.out
541.............................. end block 1 ..............................
542............................. begin block 2 .............................
543	    5| const-string v4, ">>> onFooEntry(%s, %d, %s)\n"
544.............................. end block 2 ..............................
545............................. begin block 3 .............................
546	    7| const/4 v5, #+3 (0x00000003 | 4.20390e-45)
547	    8| new-array v5, v5, java.lang.Object[]
548.............................. end block 3 ..............................
549............................. begin block 4 .............................
550	   10| move-object v9, v5
551	   11| move-object v5, v9
552	   12| move-object v6, v9
553	   13| const/4 v7, #+0 (0x00000000 | 0.00000)
554	   14| move-object v8, v0
555	   15| aput-object v8, v6, v7
556.............................. end block 4 ..............................
557............................. begin block 5 .............................
558	   17| move-object v9, v5
559	   18| move-object v5, v9
560	   19| move-object v6, v9
561	   20| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
562	   21| move v8, v1
563	   22| invoke-static {v8}, java.lang.Integer.valueOf(int):java.lang.Integer
564.............................. end block 5 ..............................
565............................. begin block 6 .............................
566	   25| move-result-object v8
567	   26| aput-object v8, v6, v7
568.............................. end block 6 ..............................
569............................. begin block 7 .............................
570	   28| move-object v9, v5
571	   29| move-object v5, v9
572	   30| move-object v6, v9
573	   31| const/4 v7, #+2 (0x00000002 | 2.80260e-45)
574	   32| move-object v8, v2
575	   33| aput-object v8, v6, v7
576.............................. end block 7 ..............................
577............................. begin block 8 .............................
578	   35| invoke-virtual {v3,v4,v5}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
579.............................. end block 8 ..............................
580............................. begin block 9 .............................
581	   38| move-result-object v3
582	.line 12
583	   39| return-void
584.............................. end block 9 ..............................
585}
586
587method Tracer.onFooExit(int):int
588{
589............................. begin block 1 .............................
590	.params "?"
591	.src "entryHooks.java"
592	.line 16
593	.prologue_end
594	.line 16
595	    0| move v0, v8
596	.local v0, "retValue", int
597	    1| sget-object v1, java.lang.System.out
598.............................. end block 1 ..............................
599............................. begin block 2 .............................
600	    3| const-string v2, ">>> onFooExit(%d)\n"
601.............................. end block 2 ..............................
602............................. begin block 3 .............................
603	    5| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
604	    6| new-array v3, v3, java.lang.Object[]
605.............................. end block 3 ..............................
606............................. begin block 4 .............................
607	    8| move-object v7, v3
608	    9| move-object v3, v7
609	   10| move-object v4, v7
610	   11| const/4 v5, #+0 (0x00000000 | 0.00000)
611	   12| move v6, v0
612	   13| invoke-static {v6}, java.lang.Integer.valueOf(int):java.lang.Integer
613.............................. end block 4 ..............................
614............................. begin block 5 .............................
615	   16| move-result-object v6
616	   17| aput-object v6, v4, v5
617.............................. end block 5 ..............................
618............................. begin block 6 .............................
619	   19| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
620.............................. end block 6 ..............................
621............................. begin block 7 .............................
622	   22| move-result-object v1
623	.line 17
624	   23| move v1, v0
625	   24| const/16 v2, #+100 (0x00000064 | 1.40130e-43)
626	   26| add-int/lit8 v1, v1, #+100 (0x00000064 | 1.40130e-43)
627	   28| move v0, v1
628	.end_local v0
629	   29| return v0
630.............................. end block 7 ..............................
631}
632
633method Tracer.wrapFoo(Base, int, java.lang.String):int
634{
635............................. begin block 1 .............................
636	.params "?", "?", "?"
637	.src "entryHooks.java"
638	.line 22
639	.prologue_end
640	.line 22
641	    0| move-object v0, v10
642	.local v0, "_this", Base
643	    1| move v1, v11
644	.local v1, "x", int
645	    2| move-object v2, v12
646	.local v2, "msg", java.lang.String
647	    3| sget-object v3, java.lang.System.out
648.............................. end block 1 ..............................
649............................. begin block 2 .............................
650	    5| const-string v4, ">>> %s.test(%d, %s)\n"
651.............................. end block 2 ..............................
652............................. begin block 3 .............................
653	    7| const/4 v5, #+3 (0x00000003 | 4.20390e-45)
654	    8| new-array v5, v5, java.lang.Object[]
655.............................. end block 3 ..............................
656............................. begin block 4 .............................
657	   10| move-object v9, v5
658	   11| move-object v5, v9
659	   12| move-object v6, v9
660	   13| const/4 v7, #+0 (0x00000000 | 0.00000)
661	   14| move-object v8, v0
662	   15| invoke-virtual {v8}, java.lang.Object.getClass():java.lang.Class
663.............................. end block 4 ..............................
664............................. begin block 5 .............................
665	   18| move-result-object v8
666	   19| invoke-virtual {v8}, java.lang.Class.getName():java.lang.String
667.............................. end block 5 ..............................
668............................. begin block 6 .............................
669	   22| move-result-object v8
670	   23| aput-object v8, v6, v7
671.............................. end block 6 ..............................
672............................. begin block 7 .............................
673	   25| move-object v9, v5
674	   26| move-object v5, v9
675	   27| move-object v6, v9
676	   28| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
677	   29| move v8, v1
678	   30| invoke-static {v8}, java.lang.Integer.valueOf(int):java.lang.Integer
679.............................. end block 7 ..............................
680............................. begin block 8 .............................
681	   33| move-result-object v8
682	   34| aput-object v8, v6, v7
683.............................. end block 8 ..............................
684............................. begin block 9 .............................
685	   36| move-object v9, v5
686	   37| move-object v5, v9
687	   38| move-object v6, v9
688	   39| const/4 v7, #+2 (0x00000002 | 2.80260e-45)
689	   40| move-object v8, v2
690	   41| aput-object v8, v6, v7
691.............................. end block 9 ..............................
692............................. begin block 10 .............................
693	   43| invoke-virtual {v3,v4,v5}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
694.............................. end block 10 ..............................
695............................. begin block 11 .............................
696	   46| move-result-object v3
697	.line 23
698	   47| move-object v3, v0
699	   48| move v4, v1
700	   49| move-object v5, v2
701	   50| invoke-virtual {v3,v4,v5}, Base.foo(int, java.lang.String):int
702.............................. end block 11 ..............................
703............................. begin block 12 .............................
704	   53| move-result v3
705	   54| const/16 v4, #+10 (0x0000000a | 1.40130e-44)
706	   56| add-int/lit8 v3, v3, #+10 (0x0000000a | 1.40130e-44)
707	   58| move v0, v3
708	.end_local v0
709	   59| return v0
710.............................. end block 12 ..............................
711}
712