Home | History | Annotate | Download | only in expected
      1 
      2 method Target.<init>():void
      3 {
      4 ............................. begin block 1 .............................
      5 	.src "exitHooks.java"
      6 	.line 28
      7 	.prologue_end
      8 	.line 28
      9 	    0| move-object v0, v2
     10 	.local v0, "this", Target
     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 
     19 method Target.main(java.lang.String[]):void
     20 {
     21 ............................. begin block 1 .............................
     22 	.params "?"
     23 	.src "exitHooks.java"
     24 	.line 32
     25 	.prologue_end
     26 	.line 32
     27 	    0| move-object v0, v3
     28 	.local v0, "args", java.lang.String[]
     29 	    1| sget-object v1, java.lang.System.out
     30 .............................. end block 1 ..............................
     31 ............................. begin block 2 .............................
     32 	    3| const-string v2, "Hello, world!\n{"
     33 .............................. end block 2 ..............................
     34 ............................. begin block 3 .............................
     35 	    5| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void
     36 .............................. end block 3 ..............................
     37 ............................. begin block 4 .............................
     38 	.line 33
     39 	    8| invoke-static {}, Target.test():void
     40 .............................. end block 4 ..............................
     41 ............................. begin block 5 .............................
     42 	.line 34
     43 	   11| sget-object v1, java.lang.System.out
     44 .............................. end block 5 ..............................
     45 ............................. begin block 6 .............................
     46 	   13| const-string v2, "}\nGood bye!"
     47 .............................. end block 6 ..............................
     48 ............................. begin block 7 .............................
     49 	   15| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void
     50 .............................. end block 7 ..............................
     51 ............................. begin block 8 .............................
     52 	.line 35
     53 	   18| return-void
     54 .............................. end block 8 ..............................
     55 }
     56 
     57 method Target.test():void
     58 {
     59 ............................. begin block 1 .............................
     60 	.src "exitHooks.java"
     61 	.line 39
     62 	.prologue_end
     63 	.line 39
     64 	    0| new-instance v1, Target
     65 .............................. end block 1 ..............................
     66 ............................. begin block 2 .............................
     67 	    2| move-object v8, v1
     68 	    3| move-object v1, v8
     69 	    4| move-object v2, v8
     70 	    5| invoke-direct {v2}, Target.<init>():void
     71 .............................. end block 2 ..............................
     72 ............................. begin block 3 .............................
     73 	    8| move-object v0, v1
     74 	.line 40
     75 	.local v0, "obj", Target
     76 	    9| sget-object v1, java.lang.System.out
     77 .............................. end block 3 ..............................
     78 ............................. begin block 4 .............................
     79 	   11| const-string v2, "Object(true)   : %s\n"
     80 .............................. end block 4 ..............................
     81 ............................. begin block 5 .............................
     82 	   13| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
     83 	   14| new-array v3, v3, java.lang.Object[]
     84 .............................. end block 5 ..............................
     85 ............................. begin block 6 .............................
     86 	   16| move-object v8, v3
     87 	   17| move-object v3, v8
     88 	   18| move-object v4, v8
     89 	   19| const/4 v5, #+0 (0x00000000 | 0.00000)
     90 	   20| move-object v6, v0
     91 	   21| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
     92 	   22| invoke-virtual {v6,v7}, Target.testObject(boolean):java.lang.Object
     93 .............................. end block 6 ..............................
     94 ............................. begin block 7 .............................
     95 	   25| move-result-object v6
     96 	   26| aput-object v6, v4, v5
     97 .............................. end block 7 ..............................
     98 ............................. begin block 8 .............................
     99 	   28| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    100 .............................. end block 8 ..............................
    101 ............................. begin block 9 .............................
    102 	   31| move-result-object v1
    103 	.line 41
    104 	   32| sget-object v1, java.lang.System.out
    105 .............................. end block 9 ..............................
    106 ............................. begin block 10 .............................
    107 	   34| const-string v2, "Object(false)  : %s\n"
    108 .............................. end block 10 ..............................
    109 ............................. begin block 11 .............................
    110 	   36| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
    111 	   37| new-array v3, v3, java.lang.Object[]
    112 .............................. end block 11 ..............................
    113 ............................. begin block 12 .............................
    114 	   39| move-object v8, v3
    115 	   40| move-object v3, v8
    116 	   41| move-object v4, v8
    117 	   42| const/4 v5, #+0 (0x00000000 | 0.00000)
    118 	   43| move-object v6, v0
    119 	   44| const/4 v7, #+0 (0x00000000 | 0.00000)
    120 	   45| invoke-virtual {v6,v7}, Target.testObject(boolean):java.lang.Object
    121 .............................. end block 12 ..............................
    122 ............................. begin block 13 .............................
    123 	   48| move-result-object v6
    124 	   49| aput-object v6, v4, v5
    125 .............................. end block 13 ..............................
    126 ............................. begin block 14 .............................
    127 	   51| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    128 .............................. end block 14 ..............................
    129 ............................. begin block 15 .............................
    130 	   54| move-result-object v1
    131 	.line 42
    132 	   55| sget-object v1, java.lang.System.out
    133 .............................. end block 15 ..............................
    134 ............................. begin block 16 .............................
    135 	   57| const-string v2, "double         : %s\n"
    136 .............................. end block 16 ..............................
    137 ............................. begin block 17 .............................
    138 	   59| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
    139 	   60| new-array v3, v3, java.lang.Object[]
    140 .............................. end block 17 ..............................
    141 ............................. begin block 18 .............................
    142 	   62| move-object v8, v3
    143 	   63| move-object v3, v8
    144 	   64| move-object v4, v8
    145 	   65| const/4 v5, #+0 (0x00000000 | 0.00000)
    146 	   66| move-object v6, v0
    147 	   67| const/4 v7, #+3 (0x00000003 | 4.20390e-45)
    148 	   68| invoke-virtual {v6,v7}, Target.testDouble(int):double
    149 .............................. end block 18 ..............................
    150 ............................. begin block 19 .............................
    151 	   71| move-result-wide v6:v7
    152 	   72| invoke-static {v6,v7}, java.lang.Double.valueOf(double):java.lang.Double
    153 .............................. end block 19 ..............................
    154 ............................. begin block 20 .............................
    155 	   75| move-result-object v6
    156 	   76| aput-object v6, v4, v5
    157 .............................. end block 20 ..............................
    158 ............................. begin block 21 .............................
    159 	   78| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    160 .............................. end block 21 ..............................
    161 ............................. begin block 22 .............................
    162 	   81| move-result-object v1
    163 	.line 43
    164 	   82| sget-object v1, java.lang.System.out
    165 .............................. end block 22 ..............................
    166 ............................. begin block 23 .............................
    167 	   84| const-string v2, "int            : %s\n"
    168 .............................. end block 23 ..............................
    169 ............................. begin block 24 .............................
    170 	   86| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
    171 	   87| new-array v3, v3, java.lang.Object[]
    172 .............................. end block 24 ..............................
    173 ............................. begin block 25 .............................
    174 	   89| move-object v8, v3
    175 	   90| move-object v3, v8
    176 	   91| move-object v4, v8
    177 	   92| const/4 v5, #+0 (0x00000000 | 0.00000)
    178 	   93| move-object v6, v0
    179 	   94| const/16 v7, #+100 (0x00000064 | 1.40130e-43)
    180 	   96| invoke-virtual {v6,v7}, Target.testInt(int):int
    181 .............................. end block 25 ..............................
    182 ............................. begin block 26 .............................
    183 	   99| move-result v6
    184 	  100| invoke-static {v6}, java.lang.Integer.valueOf(int):java.lang.Integer
    185 .............................. end block 26 ..............................
    186 ............................. begin block 27 .............................
    187 	  103| move-result-object v6
    188 	  104| aput-object v6, v4, v5
    189 .............................. end block 27 ..............................
    190 ............................. begin block 28 .............................
    191 	  106| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    192 .............................. end block 28 ..............................
    193 ............................. begin block 29 .............................
    194 	  109| move-result-object v1
    195 	.line 44
    196 	  110| move-object v1, v0
    197 	  111| const/4 v2, #+1 (0x00000001 | 1.40130e-45)
    198 	  112| invoke-virtual {v1,v2}, Target.testVoid(boolean):void
    199 .............................. end block 29 ..............................
    200 ............................. begin block 30 .............................
    201 	.line 45
    202 	  115| return-void
    203 .............................. end block 30 ..............................
    204 }
    205 
    206 method Target.testDouble(int):double
    207 {
    208 ............................. begin block 1 .............................
    209 	.params "?"
    210 	.src "exitHooks.java"
    211 	.line 60
    212 	.prologue_end
    213 	.line 60
    214 	    0| move-object v0, v4
    215 	.local v0, "this", Target
    216 	    1| move v1, v5
    217 	.local v1, "n", int
    218 	    2| move v2, v1
    219 	    3| packed-switch v2, Label_5
    220 .............................. end block 1 ..............................
    221 ............................. begin block 2 .............................
    222 	.line 65
    223 	    6| const-wide v2:v3, #+4621762822593629389 (0x4023cccccccccccd | 9.90000)
    224 	   11| move-wide v0:v1, v2:v3
    225 .............................. end block 2 ..............................
    226 ............................. begin block 3 .............................
    227 Label_1:
    228 	.end_local v0
    229 	   12| return-wide v0:v1
    230 .............................. end block 3 ..............................
    231 ............................. begin block 4 .............................
    232 Label_2:
    233 	.line 62
    234 	.restart_local v0
    235 	   13| const-wide v2:v3, #+4607632778762754458 (0x3ff199999999999a | 1.10000)
    236 	   18| move-wide v0:v1, v2:v3
    237 	   19| goto Label_1
    238 .............................. end block 4 ..............................
    239 ............................. begin block 5 .............................
    240 Label_3:
    241 	.line 63
    242 	   20| const-wide v2:v3, #+4612136378390124954 (0x400199999999999a | 2.20000)
    243 	   25| move-wide v0:v1, v2:v3
    244 	   26| goto Label_1
    245 .............................. end block 5 ..............................
    246 ............................. begin block 6 .............................
    247 Label_4:
    248 	.line 64
    249 	   27| const-wide v2:v3, #+4614613358185178726 (0x400a666666666666 | 3.30000)
    250 	   32| move-wide v0:v1, v2:v3
    251 	   33| goto Label_1
    252 .............................. end block 6 ..............................
    253 Label_5: <aligned>
    254 	.line 60
    255 	   34| packed-switch-payload
    256 		    1: Label_2
    257 		    2: Label_3
    258 		    3: Label_4
    259 }
    260 
    261 method Target.testInt(int):int
    262 {
    263 ............................. begin block 1 .............................
    264 	.params "?"
    265 	.src "exitHooks.java"
    266 	.line 71
    267 	.prologue_end
    268 	.line 71
    269 	    0| move-object v0, v3
    270 	.local v0, "this", Target
    271 	    1| move v1, v4
    272 	.local v1, "n", int
    273 	    2| move v2, v1
    274 	    3| sparse-switch v2, Label_5
    275 .............................. end block 1 ..............................
    276 ............................. begin block 2 .............................
    277 	.line 76
    278 	    6| const/16 v2, #+123 (0x0000007b | 1.72360e-43)
    279 	    8| move v0, v2
    280 .............................. end block 2 ..............................
    281 ............................. begin block 3 .............................
    282 Label_1:
    283 	.end_local v0
    284 	    9| return v0
    285 .............................. end block 3 ..............................
    286 ............................. begin block 4 .............................
    287 Label_2:
    288 	.line 73
    289 	.restart_local v0
    290 	   10| const/4 v2, #+1 (0x00000001 | 1.40130e-45)
    291 	   11| move v0, v2
    292 	   12| goto Label_1
    293 .............................. end block 4 ..............................
    294 ............................. begin block 5 .............................
    295 Label_3:
    296 	.line 74
    297 	   13| const/4 v2, #+2 (0x00000002 | 2.80260e-45)
    298 	   14| move v0, v2
    299 	   15| goto Label_1
    300 .............................. end block 5 ..............................
    301 ............................. begin block 6 .............................
    302 Label_4:
    303 	.line 75
    304 	   16| const/4 v2, #+3 (0x00000003 | 4.20390e-45)
    305 	   17| move v0, v2
    306 	   18| goto Label_1
    307 .............................. end block 6 ..............................
    308 ............................. begin block 7 .............................
    309 	.line 71
    310 	   19| nop
    311 .............................. end block 7 ..............................
    312 Label_5: <aligned>
    313 	   20| sparse-switch-payload
    314 		   10: Label_2
    315 		   20: Label_3
    316 		   30: Label_4
    317 }
    318 
    319 method Target.testObject(boolean):java.lang.Object
    320 {
    321 ............................. begin block 1 .............................
    322 	.params "?"
    323 	.src "exitHooks.java"
    324 	.line 49
    325 	.prologue_end
    326 	.line 49
    327 	    0| move-object v0, v5
    328 	.local v0, "this", Target
    329 	    1| move v1, v6
    330 	.local v1, "flag", boolean
    331 	    2| move v2, v1
    332 	    3| if-eqz v2, Label_2
    333 .............................. end block 1 ..............................
    334 ............................. begin block 2 .............................
    335 	.line 51
    336 	    5| sget-object v2, java.lang.System.out
    337 .............................. end block 2 ..............................
    338 ............................. begin block 3 .............................
    339 	    7| const-string v3, "Flag!\n"
    340 .............................. end block 3 ..............................
    341 ............................. begin block 4 .............................
    342 	    9| const/4 v4, #+0 (0x00000000 | 0.00000)
    343 	   10| new-array v4, v4, java.lang.Object[]
    344 .............................. end block 4 ..............................
    345 ............................. begin block 5 .............................
    346 	   12| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    347 .............................. end block 5 ..............................
    348 ............................. begin block 6 .............................
    349 	   15| move-result-object v2
    350 	.line 52
    351 	   16| const-string v2, "Sigh"
    352 .............................. end block 6 ..............................
    353 ............................. begin block 7 .............................
    354 	   18| move-object v0, v2
    355 .............................. end block 7 ..............................
    356 ............................. begin block 8 .............................
    357 Label_1:
    358 	.line 55
    359 	.end_local v0
    360 	   19| return-object v0
    361 .............................. end block 8 ..............................
    362 ............................. begin block 9 .............................
    363 Label_2:
    364 	.restart_local v0
    365 	   20| const-string v2, "Blah"
    366 .............................. end block 9 ..............................
    367 ............................. begin block 10 .............................
    368 	   22| move-object v0, v2
    369 	   23| goto Label_1
    370 .............................. end block 10 ..............................
    371 }
    372 
    373 method Target.testVoid(boolean):void
    374 {
    375 ............................. begin block 1 .............................
    376 	.params "?"
    377 	.src "exitHooks.java"
    378 	.line 82
    379 	.prologue_end
    380 	.line 82
    381 	    0| move-object v0, v5
    382 	.local v0, "this", Target
    383 	    1| move v1, v6
    384 	.local v1, "flag", boolean
    385 	    2| move v2, v1
    386 	    3| if-eqz v2, Label_2
    387 .............................. end block 1 ..............................
    388 ............................. begin block 2 .............................
    389 	.line 84
    390 	    5| sget-object v2, java.lang.System.out
    391 .............................. end block 2 ..............................
    392 ............................. begin block 3 .............................
    393 	    7| const-string v3, "True!\n"
    394 .............................. end block 3 ..............................
    395 ............................. begin block 4 .............................
    396 	    9| const/4 v4, #+0 (0x00000000 | 0.00000)
    397 	   10| new-array v4, v4, java.lang.Object[]
    398 .............................. end block 4 ..............................
    399 ............................. begin block 5 .............................
    400 	   12| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    401 .............................. end block 5 ..............................
    402 ............................. begin block 6 .............................
    403 	   15| move-result-object v2
    404 .............................. end block 6 ..............................
    405 ............................. begin block 7 .............................
    406 Label_1:
    407 	.line 85
    408 	.line 90
    409 	   16| return-void
    410 .............................. end block 7 ..............................
    411 ............................. begin block 8 .............................
    412 Label_2:
    413 	.line 89
    414 	   17| sget-object v2, java.lang.System.out
    415 .............................. end block 8 ..............................
    416 ............................. begin block 9 .............................
    417 	   19| const-string v3, "False!\n"
    418 .............................. end block 9 ..............................
    419 ............................. begin block 10 .............................
    420 	   21| const/4 v4, #+0 (0x00000000 | 0.00000)
    421 	   22| new-array v4, v4, java.lang.Object[]
    422 .............................. end block 10 ..............................
    423 ............................. begin block 11 .............................
    424 	   24| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    425 .............................. end block 11 ..............................
    426 ............................. begin block 12 .............................
    427 	   27| move-result-object v2
    428 	.line 90
    429 	   28| goto Label_1
    430 .............................. end block 12 ..............................
    431 }
    432 
    433 method Tracer.<init>():void
    434 {
    435 ............................. begin block 1 .............................
    436 	.src "exitHooks.java"
    437 	.line 2
    438 	.prologue_end
    439 	.line 2
    440 	    0| move-object v0, v2
    441 	.local v0, "this", Tracer
    442 	    1| move-object v1, v0
    443 	    2| invoke-direct {v1}, java.lang.Object.<init>():void
    444 .............................. end block 1 ..............................
    445 ............................. begin block 2 .............................
    446 	    5| return-void
    447 .............................. end block 2 ..............................
    448 }
    449 
    450 method Tracer.onExit(double):double
    451 {
    452 ............................. begin block 1 .............................
    453 	.params "?"
    454 	.src "exitHooks.java"
    455 	.line 12
    456 	.prologue_end
    457 	.line 12
    458 	    0| move-wide v0:v1, v10:v11
    459 	.local v0, "value", double
    460 	    1| sget-object v2, java.lang.System.out
    461 .............................. end block 1 ..............................
    462 ............................. begin block 2 .............................
    463 	    3| const-string v3, ">>> onExit(double: %f)\n"
    464 .............................. end block 2 ..............................
    465 ............................. begin block 3 .............................
    466 	    5| const/4 v4, #+1 (0x00000001 | 1.40130e-45)
    467 	    6| new-array v4, v4, java.lang.Object[]
    468 .............................. end block 3 ..............................
    469 ............................. begin block 4 .............................
    470 	    8| move-object v9, v4
    471 	    9| move-object v4, v9
    472 	   10| move-object v5, v9
    473 	   11| const/4 v6, #+0 (0x00000000 | 0.00000)
    474 	   12| move-wide v7:v8, v0:v1
    475 	   13| invoke-static {v7,v8}, java.lang.Double.valueOf(double):java.lang.Double
    476 .............................. end block 4 ..............................
    477 ............................. begin block 5 .............................
    478 	   16| move-result-object v7
    479 	   17| aput-object v7, v5, v6
    480 .............................. end block 5 ..............................
    481 ............................. begin block 6 .............................
    482 	   19| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    483 .............................. end block 6 ..............................
    484 ............................. begin block 7 .............................
    485 	   22| move-result-object v2
    486 	.line 13
    487 	   23| move-wide v2:v3, v0:v1
    488 	   24| neg-double v2:v3, v2:v3
    489 	   25| move-wide v0:v1, v2:v3
    490 	.end_local v0
    491 	   26| return-wide v0:v1
    492 .............................. end block 7 ..............................
    493 }
    494 
    495 method Tracer.onExit(int):int
    496 {
    497 ............................. begin block 1 .............................
    498 	.params "?"
    499 	.src "exitHooks.java"
    500 	.line 18
    501 	.prologue_end
    502 	.line 18
    503 	    0| move v0, v8
    504 	.local v0, "value", int
    505 	    1| sget-object v1, java.lang.System.out
    506 .............................. end block 1 ..............................
    507 ............................. begin block 2 .............................
    508 	    3| const-string v2, ">>> onExit(int: %d)\n"
    509 .............................. end block 2 ..............................
    510 ............................. begin block 3 .............................
    511 	    5| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
    512 	    6| new-array v3, v3, java.lang.Object[]
    513 .............................. end block 3 ..............................
    514 ............................. begin block 4 .............................
    515 	    8| move-object v7, v3
    516 	    9| move-object v3, v7
    517 	   10| move-object v4, v7
    518 	   11| const/4 v5, #+0 (0x00000000 | 0.00000)
    519 	   12| move v6, v0
    520 	   13| invoke-static {v6}, java.lang.Integer.valueOf(int):java.lang.Integer
    521 .............................. end block 4 ..............................
    522 ............................. begin block 5 .............................
    523 	   16| move-result-object v6
    524 	   17| aput-object v6, v4, v5
    525 .............................. end block 5 ..............................
    526 ............................. begin block 6 .............................
    527 	   19| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    528 .............................. end block 6 ..............................
    529 ............................. begin block 7 .............................
    530 	   22| move-result-object v1
    531 	.line 19
    532 	   23| move v1, v0
    533 	   24| const/16 v2, #+10 (0x0000000a | 1.40130e-44)
    534 	   26| mul-int/lit8 v1, v1, #+10 (0x0000000a | 1.40130e-44)
    535 	   28| move v0, v1
    536 	.end_local v0
    537 	   29| return v0
    538 .............................. end block 7 ..............................
    539 }
    540 
    541 method Tracer.onExit(java.lang.Object):java.lang.Object
    542 {
    543 ............................. begin block 1 .............................
    544 	.params "?"
    545 	.src "exitHooks.java"
    546 	.line 6
    547 	.prologue_end
    548 	.line 6
    549 	    0| move-object v0, v8
    550 	.local v0, "value", java.lang.Object
    551 	    1| sget-object v1, java.lang.System.out
    552 .............................. end block 1 ..............................
    553 ............................. begin block 2 .............................
    554 	    3| const-string v2, ">>> onExit(Object: %s)\n"
    555 .............................. end block 2 ..............................
    556 ............................. begin block 3 .............................
    557 	    5| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
    558 	    6| new-array v3, v3, java.lang.Object[]
    559 .............................. end block 3 ..............................
    560 ............................. begin block 4 .............................
    561 	    8| move-object v7, v3
    562 	    9| move-object v3, v7
    563 	   10| move-object v4, v7
    564 	   11| const/4 v5, #+0 (0x00000000 | 0.00000)
    565 	   12| move-object v6, v0
    566 	   13| aput-object v6, v4, v5
    567 .............................. end block 4 ..............................
    568 ............................. begin block 5 .............................
    569 	   15| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    570 .............................. end block 5 ..............................
    571 ............................. begin block 6 .............................
    572 	   18| move-result-object v1
    573 	.line 7
    574 	   19| move-object v1, v0
    575 	   20| move-object v0, v1
    576 	.end_local v0
    577 	   21| return-object v0
    578 .............................. end block 6 ..............................
    579 }
    580 
    581 method Tracer.onExit():void
    582 {
    583 ............................. begin block 1 .............................
    584 	.src "exitHooks.java"
    585 	.line 24
    586 	.prologue_end
    587 	.line 24
    588 	    0| sget-object v0, java.lang.System.out
    589 .............................. end block 1 ..............................
    590 ............................. begin block 2 .............................
    591 	    2| const-string v1, ">>> onExit(void)\n"
    592 .............................. end block 2 ..............................
    593 ............................. begin block 3 .............................
    594 	    4| const/4 v2, #+0 (0x00000000 | 0.00000)
    595 	    5| new-array v2, v2, java.lang.Object[]
    596 .............................. end block 3 ..............................
    597 ............................. begin block 4 .............................
    598 	    7| invoke-virtual {v0,v1,v2}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    599 .............................. end block 4 ..............................
    600 ............................. begin block 5 .............................
    601 	   10| move-result-object v0
    602 	.line 25
    603 	   11| return-void
    604 .............................. end block 5 ..............................
    605 }
    606