1 1: mi=0 s=0 e=2 2 2: mi=0 s=5 e=5 3 3: mi=1 s=0 e=3 4 4: mi=1 s=5 e=5 5 5: mi=1 s=7 e=8 6 6: mi=1 s=10 e=15 7 7: mi=1 s=18 e=19 8 8: mi=1 s=21 e=26 9 9: mi=1 s=28 e=28 10 10: mi=1 s=31 e=34 11 11: mi=2 s=0 e=2 12 12: mi=2 s=5 e=5 13 13: mi=3 s=0 e=3 14 14: mi=3 s=5 e=5 15 15: mi=3 s=7 e=8 16 16: mi=3 s=10 e=15 17 17: mi=3 s=18 e=19 18 18: mi=3 s=21 e=26 19 19: mi=3 s=28 e=28 20 20: mi=3 s=31 e=37 21 21: mi=4 s=0 e=2 22 22: mi=4 s=5 e=5 23 23: mi=12 s=0 e=1 24 24: mi=12 s=3 e=3 25 25: mi=12 s=5 e=5 26 26: mi=12 s=8 e=8 27 27: mi=12 s=10 e=10 28 28: mi=12 s=12 e=13 29 29: mi=12 s=15 e=19 30 30: mi=12 s=22 e=23 31 31: mi=12 s=26 e=27 32 32: mi=12 s=29 e=29 33 33: mi=12 s=32 e=33 34 34: mi=12 s=35 e=35 35 35: mi=12 s=37 e=37 36 36: mi=12 s=40 e=40 37 37: mi=13 s=0 e=0 38 38: mi=13 s=2 e=5 39 39: mi=13 s=8 e=10 40 40: mi=13 s=12 e=15 41 41: mi=13 s=18 e=18 42 42: mi=13 s=20 e=22 43 43: mi=13 s=24 e=24 44 44: mi=13 s=27 e=29 45 45: mi=5 s=0 e=4 46 46: mi=6 s=0 e=5 47 47: mi=7 s=0 e=6 48 48: mi=7 s=7 e=9 49 49: mi=7 s=11 e=13 50 50: mi=7 s=15 e=17 51 51: mi=7 s=20 e=25 52 52: mi=7 s=26 e=28 53 53: mi=8 s=0 e=6 54 54: mi=9 s=0 e=5 55 55: mi=10 s=0 e=4 56 56: mi=10 s=7 e=9 57 57: mi=11 s=0 e=0 58 58: mi=14 s=0 e=2 59 59: mi=14 s=5 e=5 60 60: mi=15 s=0 e=1 61 61: mi=15 s=3 e=3 62 62: mi=15 s=5 e=8 63 63: mi=15 s=11 e=11 64 64: mi=15 s=13 e=13 65 65: mi=15 s=16 e=18 66 66: mi=15 s=21 e=22 67 67: mi=15 s=24 e=24 68 68: mi=15 s=27 e=28 69 69: mi=15 s=31 e=32 70 70: mi=15 s=35 e=35 71 71: mi=16 s=0 e=3 72 72: mi=16 s=5 e=5 73 73: mi=16 s=7 e=8 74 74: mi=16 s=10 e=15 75 75: mi=16 s=17 e=22 76 76: mi=16 s=25 e=26 77 77: mi=16 s=28 e=33 78 78: mi=16 s=35 e=35 79 79: mi=16 s=38 e=39 80 80: mi=17 s=0 e=1 81 81: mi=17 s=3 e=3 82 82: mi=17 s=5 e=6 83 83: mi=17 s=8 e=13 84 84: mi=17 s=16 e=17 85 85: mi=17 s=19 e=19 86 86: mi=17 s=22 e=29 87 87: mi=18 s=0 e=3 88 88: mi=18 s=5 e=5 89 89: mi=18 s=7 e=8 90 90: mi=18 s=10 e=15 91 91: mi=18 s=18 e=19 92 92: mi=18 s=22 e=23 93 93: mi=18 s=25 e=30 94 94: mi=18 s=33 e=34 95 95: mi=18 s=36 e=41 96 96: mi=18 s=43 e=43 97 97: mi=18 s=46 e=50 98 98: mi=18 s=53 e=59 99 100method Base.<init>():void 101{ 102 .src "entryHooks.java" 103 .line 27 104 .prologue_end 105 .line 27 106 0| const v0, #+1 (0x00000001 | 1.40130e-45) 107 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 108 6| move-object v1, v3 109 .local v1, "this", Base 110 7| move-object v2, v1 111 8| invoke-direct {v2}, java.lang.Object.<init>():void 112 11| const v0, #+2 (0x00000002 | 2.80260e-45) 113 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 114 17| return-void 115} 116 117method Base.foo(int, java.lang.String):int 118{ 119 .params "?", "?" 120 .src "entryHooks.java" 121 .line 31 122 .prologue_end 123 .line 31 124 0| const v0, #+3 (0x00000003 | 4.20390e-45) 125 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 126 6| move-object v1, v11 127 .local v1, "this", Base 128 7| move v2, v12 129 .local v2, "x", int 130 8| move-object v3, v13 131 .local v3, "msg", java.lang.String 132 9| sget-object v4, java.lang.System.out 133 11| const v0, #+4 (0x00000004 | 5.60519e-45) 134 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 135 17| const-string v5, "Base.foo(%d, '%s')\n" 136 19| const v0, #+5 (0x00000005 | 7.00649e-45) 137 22| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 138 25| const/4 v6, #+2 (0x00000002 | 2.80260e-45) 139 26| new-array v6, v6, java.lang.Object[] 140 28| const v0, #+6 (0x00000006 | 8.40779e-45) 141 31| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 142 34| move-object v10, v6 143 35| move-object v6, v10 144 36| move-object v7, v10 145 37| const/4 v8, #+0 (0x00000000 | 0.00000) 146 38| move v9, v2 147 39| invoke-static {v9}, java.lang.Integer.valueOf(int):java.lang.Integer 148 42| move-result-object v9 149 43| const v0, #+7 (0x00000007 | 9.80909e-45) 150 46| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 151 49| aput-object v9, v7, v8 152 51| const v0, #+8 (0x00000008 | 1.12104e-44) 153 54| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 154 57| move-object v10, v6 155 58| move-object v6, v10 156 59| move-object v7, v10 157 60| const/4 v8, #+1 (0x00000001 | 1.40130e-45) 158 61| move-object v9, v3 159 62| aput-object v9, v7, v8 160 64| const v0, #+9 (0x00000009 | 1.26117e-44) 161 67| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 162 70| invoke-virtual {v4,v5,v6}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream 163 73| move-result-object v4 164 74| const v0, #+10 (0x0000000a | 1.40130e-44) 165 77| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 166 .line 32 167 80| move v4, v2 168 81| move v1, v4 169 .end_local v1 170 82| return v1 171} 172 173method Derived.<init>():void 174{ 175 .src "entryHooks.java" 176 .line 36 177 .prologue_end 178 .line 36 179 0| const v0, #+11 (0x0000000b | 1.54143e-44) 180 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 181 6| move-object v1, v3 182 .local v1, "this", Derived 183 7| move-object v2, v1 184 8| invoke-direct {v2}, Base.<init>():void 185 11| const v0, #+12 (0x0000000c | 1.68156e-44) 186 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 187 17| return-void 188} 189 190method Derived.foo(int, java.lang.String):int 191{ 192 .params "?", "?" 193 .src "entryHooks.java" 194 .line 40 195 .prologue_end 196 .line 40 197 0| const v0, #+13 (0x0000000d | 1.82169e-44) 198 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 199 6| move-object v1, v11 200 .local v1, "this", Derived 201 7| move v2, v12 202 .local v2, "x", int 203 8| move-object v3, v13 204 .local v3, "msg", java.lang.String 205 9| sget-object v4, java.lang.System.out 206 11| const v0, #+14 (0x0000000e | 1.96182e-44) 207 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 208 17| const-string v5, "Derived.foo(%d, '%s')\n" 209 19| const v0, #+15 (0x0000000f | 2.10195e-44) 210 22| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 211 25| const/4 v6, #+2 (0x00000002 | 2.80260e-45) 212 26| new-array v6, v6, java.lang.Object[] 213 28| const v0, #+16 (0x00000010 | 2.24208e-44) 214 31| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 215 34| move-object v10, v6 216 35| move-object v6, v10 217 36| move-object v7, v10 218 37| const/4 v8, #+0 (0x00000000 | 0.00000) 219 38| move v9, v2 220 39| invoke-static {v9}, java.lang.Integer.valueOf(int):java.lang.Integer 221 42| move-result-object v9 222 43| const v0, #+17 (0x00000011 | 2.38221e-44) 223 46| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 224 49| aput-object v9, v7, v8 225 51| const v0, #+18 (0x00000012 | 2.52234e-44) 226 54| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 227 57| move-object v10, v6 228 58| move-object v6, v10 229 59| move-object v7, v10 230 60| const/4 v8, #+1 (0x00000001 | 1.40130e-45) 231 61| move-object v9, v3 232 62| aput-object v9, v7, v8 233 64| const v0, #+19 (0x00000013 | 2.66247e-44) 234 67| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 235 70| invoke-virtual {v4,v5,v6}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream 236 73| move-result-object v4 237 74| const v0, #+20 (0x00000014 | 2.80260e-44) 238 77| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 239 .line 41 240 80| move v4, v2 241 81| const/4 v5, #+2 (0x00000002 | 2.80260e-45) 242 82| mul-int/lit8 v4, v4, #+2 (0x00000002 | 2.80260e-45) 243 84| move v1, v4 244 .end_local v1 245 85| return v1 246} 247 248method Target.<init>():void 249{ 250 .src "entryHooks.java" 251 .line 45 252 .prologue_end 253 .line 45 254 0| const v0, #+21 (0x00000015 | 2.94273e-44) 255 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 256 6| move-object v1, v3 257 .local v1, "this", Target 258 7| move-object v2, v1 259 8| invoke-direct {v2}, java.lang.Object.<init>():void 260 11| const v0, #+22 (0x00000016 | 3.08286e-44) 261 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 262 17| return-void 263} 264 265method Target.main(java.lang.String[]):void 266{ 267 .params "?" 268 .src "entryHooks.java" 269 .line 51 270 .prologue_end 271 .line 51 272 0| const v0, #+23 (0x00000017 | 3.22299e-44) 273 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 274 6| move-object v1, v9 275 .local v1, "args", java.lang.String[] 276 7| sget-object v2, java.lang.System.out 277 9| const v0, #+24 (0x00000018 | 3.36312e-44) 278 12| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 279 15| const-string v3, "Hello, world!" 280 17| const v0, #+25 (0x00000019 | 3.50325e-44) 281 20| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 282 23| invoke-virtual {v2,v3}, java.io.PrintStream.println(java.lang.String):void 283 .line 52 284 26| const v0, #+26 (0x0000001a | 3.64338e-44) 285 29| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 286 32| sget-object v2, java.lang.System.out 287 34| const v0, #+27 (0x0000001b | 3.78351e-44) 288 37| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 289 40| const-string v3, "final = %d\n" 290 42| const v0, #+28 (0x0000001c | 3.92364e-44) 291 45| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 292 48| const/4 v4, #+1 (0x00000001 | 1.40130e-45) 293 49| new-array v4, v4, java.lang.Object[] 294 51| const v0, #+29 (0x0000001d | 4.06377e-44) 295 54| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 296 57| move-object v8, v4 297 58| move-object v4, v8 298 59| move-object v5, v8 299 60| const/4 v6, #+0 (0x00000000 | 0.00000) 300 61| invoke-static {}, Target.test():int 301 64| move-result v7 302 65| const v0, #+30 (0x0000001e | 4.20390e-44) 303 68| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 304 71| invoke-static {v7}, java.lang.Integer.valueOf(int):java.lang.Integer 305 74| move-result-object v7 306 75| const v0, #+31 (0x0000001f | 4.34403e-44) 307 78| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 308 81| aput-object v7, v5, v6 309 83| const v0, #+32 (0x00000020 | 4.48416e-44) 310 86| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 311 89| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream 312 92| move-result-object v2 313 93| const v0, #+33 (0x00000021 | 4.62428e-44) 314 96| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 315 .line 53 316 99| sget-object v2, java.lang.System.out 317 101| const v0, #+34 (0x00000022 | 4.76441e-44) 318 104| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 319 107| const-string v3, "Good bye!" 320 109| const v0, #+35 (0x00000023 | 4.90454e-44) 321 112| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 322 115| invoke-virtual {v2,v3}, java.io.PrintStream.println(java.lang.String):void 323 .line 54 324 118| const v0, #+36 (0x00000024 | 5.04467e-44) 325 121| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 326 124| return-void 327} 328 329method Target.test():int 330{ 331 .src "entryHooks.java" 332 .line 58 333 .prologue_end 334 .line 58 335 0| const v5, #+37 (0x00000025 | 5.18480e-44) 336 3| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 337 6| new-instance v1, Target 338 8| const v5, #+38 (0x00000026 | 5.32493e-44) 339 11| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 340 14| move-object v4, v1 341 15| move-object v1, v4 342 16| move-object v2, v4 343 17| invoke-direct {v2}, Target.<init>():void 344 20| const v5, #+39 (0x00000027 | 5.46506e-44) 345 23| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 346 26| move-object v0, v1 347 .line 59 348 .local v0, "obj", Target 349 27| move-object v1, v0 350 28| new-instance v2, Derived 351 30| const v5, #+40 (0x00000028 | 5.60519e-44) 352 33| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 353 36| move-object v4, v2 354 37| move-object v2, v4 355 38| move-object v3, v4 356 39| invoke-direct {v3}, Derived.<init>():void 357 42| const v5, #+41 (0x00000029 | 5.74532e-44) 358 45| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 359 48| iput-object v2, v1, Target.test 360 .line 60 361 50| const v5, #+42 (0x0000002a | 5.88545e-44) 362 53| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 363 56| move-object v1, v0 364 57| const/4 v2, #+3 (0x00000003 | 4.20390e-45) 365 58| const-string v3, "Testing..." 366 60| const v5, #+43 (0x0000002b | 6.02558e-44) 367 63| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 368 66| invoke-virtual {v1,v2,v3}, Target.foo(int, java.lang.String):int 369 69| move-result v1 370 70| const v5, #+44 (0x0000002c | 6.16571e-44) 371 73| invoke-static/range {v5..v5}, CodeCoverage.TraceBasicBlock(int):void 372 76| move v0, v1 373 .end_local v0 374 77| return v0 375} 376 377method Target.foo(int):int 378{ 379 .params "?" 380 .src "entryHooks.java" 381 .line 74 382 .prologue_end 383 .line 74 384 0| const v0, #+45 (0x0000002d | 6.30584e-44) 385 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 386 6| move-object v1, v4 387 .local v1, "this", Target 388 7| move v2, v5 389 .local v2, "x", int 390 8| const/4 v3, #+1 (0x00000001 | 1.40130e-45) 391 9| move v1, v3 392 .end_local v1 393 10| return v1 394} 395 396method Target.foo(int, int):int 397{ 398 .params "?", "?" 399 .src "entryHooks.java" 400 .line 75 401 .prologue_end 402 .line 75 403 0| const v0, #+46 (0x0000002e | 6.44597e-44) 404 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 405 6| move-object v1, v5 406 .local v1, "this", Target 407 7| move v2, v6 408 .local v2, "x", int 409 8| move v3, v7 410 .local v3, "y", int 411 9| const/4 v4, #+2 (0x00000002 | 2.80260e-45) 412 10| move v1, v4 413 .end_local v1 414 11| return v1 415} 416 417method Target.foo(int, java.lang.String):int 418{ 419 .params "?", "?" 420 .src "entryHooks.java" 421 .line 65 422 .prologue_end 423 .line 65 424 0| const v0, #+47 (0x0000002f | 6.58610e-44) 425 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 426 6| move-object v1, v10 427 .local v1, "this", Target 428 7| move v2, v11 429 .local v2, "x", int 430 8| move-object v3, v12 431 .local v3, "msg", java.lang.String 432 9| const/4 v6, #+0 (0x00000000 | 0.00000) 433 10| move v4, v6 434 .line 66 435 .local v4, "sum", int 436 11| const/4 v6, #+0 (0x00000000 | 0.00000) 437 12| move v5, v6 438Label_1: 439 .local v5, "i", int 440 13| const v0, #+48 (0x00000030 | 6.72623e-44) 441 16| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 442 19| move v6, v5 443 20| move v7, v2 444 21| if-ge v6, v7, Label_2 445 .line 68 446 23| const v0, #+49 (0x00000031 | 6.86636e-44) 447 26| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 448 29| move v6, v4 449 30| move-object v7, v1 450 31| iget-object v7, v7, Target.test 451 33| const v0, #+50 (0x00000032 | 7.00649e-44) 452 36| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 453 39| move v8, v5 454 40| move-object v9, v3 455 41| invoke-virtual {v7,v8,v9}, Base.foo(int, java.lang.String):int 456 44| move-result v7 457 45| const v0, #+51 (0x00000033 | 7.14662e-44) 458 48| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 459 51| add-int/2addr v6, v7 460 52| move v4, v6 461 .line 66 462 53| add-int/lit8 v5, v5, #+1 (0x00000001 | 1.40130e-45) 463 55| goto/16 Label_1 464Label_2: 465 .line 70 466 57| const v0, #+52 (0x00000034 | 7.28675e-44) 467 60| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 468 63| move v6, v4 469 64| move v1, v6 470 .end_local v1 471 65| return v1 472} 473 474method Target.foo(int, java.lang.String, java.lang.String):int 475{ 476 .params "?", "?", "?" 477 .src "entryHooks.java" 478 .line 76 479 .prologue_end 480 .line 76 481 0| const v0, #+53 (0x00000035 | 7.42688e-44) 482 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 483 6| move-object v1, v6 484 .local v1, "this", Target 485 7| move v2, v7 486 .local v2, "x", int 487 8| move-object v3, v8 488 .local v3, "msg", java.lang.String 489 9| move-object v4, v9 490 .local v4, "msg2", java.lang.String 491 10| const/4 v5, #+3 (0x00000003 | 4.20390e-45) 492 11| move v1, v5 493 .end_local v1 494 12| return v1 495} 496 497method Target.foo(int, java.lang.String[]):int 498{ 499 .params "?", "?" 500 .src "entryHooks.java" 501 .line 77 502 .prologue_end 503 .line 77 504 0| const v0, #+54 (0x00000036 | 7.56701e-44) 505 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 506 6| move-object v1, v5 507 .local v1, "this", Target 508 7| move v2, v6 509 .local v2, "x", int 510 8| move-object v3, v7 511 .local v3, "msgs", java.lang.String[] 512 9| const/4 v4, #+4 (0x00000004 | 5.60519e-45) 513 10| move v1, v4 514 .end_local v1 515 11| return v1 516} 517 518method Target.foo(int, java.lang.String[][]):java.lang.Integer 519{ 520 .params "?", "?" 521 .src "entryHooks.java" 522 .line 78 523 .prologue_end 524 .line 78 525 0| const v0, #+55 (0x00000037 | 7.70714e-44) 526 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 527 6| move-object v1, v5 528 .local v1, "this", Target 529 7| move v2, v6 530 .local v2, "x", int 531 8| move-object v3, v7 532 .local v3, "msgs", java.lang.String[][] 533 9| const/4 v4, #+5 (0x00000005 | 7.00649e-45) 534 10| invoke-static {v4}, java.lang.Integer.valueOf(int):java.lang.Integer 535 13| move-result-object v4 536 14| const v0, #+56 (0x00000038 | 7.84727e-44) 537 17| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 538 20| move-object v1, v4 539 .end_local v1 540 21| return-object v1 541} 542 543method Target.foo():void 544{ 545 .src "entryHooks.java" 546 .line 73 547 .prologue_end 548 .line 73 549 0| const v0, #+57 (0x00000039 | 7.98740e-44) 550 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 551 6| return-void 552} 553 554method Tracer.<init>():void 555{ 556 .src "entryHooks.java" 557 .line 2 558 .prologue_end 559 .line 2 560 0| const v0, #+58 (0x0000003a | 8.12753e-44) 561 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 562 6| move-object v1, v3 563 .local v1, "this", Tracer 564 7| move-object v2, v1 565 8| invoke-direct {v2}, java.lang.Object.<init>():void 566 11| const v0, #+59 (0x0000003b | 8.26766e-44) 567 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 568 17| return-void 569} 570 571method Tracer.onEntry(java.lang.String):void 572{ 573 .params "?" 574 .src "entryHooks.java" 575 .line 6 576 .prologue_end 577 .line 6 578 0| const v0, #+60 (0x0000003c | 8.40779e-44) 579 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 580 6| move-object v1, v6 581 .local v1, "methodName", java.lang.String 582 7| sget-object v2, java.lang.System.out 583 9| const v0, #+61 (0x0000003d | 8.54792e-44) 584 12| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 585 15| new-instance v3, java.lang.StringBuilder 586 17| const v0, #+62 (0x0000003e | 8.68805e-44) 587 20| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 588 23| move-object v5, v3 589 24| move-object v3, v5 590 25| move-object v4, v5 591 26| invoke-direct {v4}, java.lang.StringBuilder.<init>():void 592 29| const v0, #+63 (0x0000003f | 8.82818e-44) 593 32| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 594 35| const-string v4, "OnEntry(" 595 37| const v0, #+64 (0x00000040 | 8.96831e-44) 596 40| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 597 43| invoke-virtual {v3,v4}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder 598 46| move-result-object v3 599 47| const v0, #+65 (0x00000041 | 9.10844e-44) 600 50| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 601 53| move-object v4, v1 602 54| invoke-virtual {v3,v4}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder 603 57| move-result-object v3 604 58| const v0, #+66 (0x00000042 | 9.24857e-44) 605 61| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 606 64| const-string v4, ")" 607 66| const v0, #+67 (0x00000043 | 9.38870e-44) 608 69| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 609 72| invoke-virtual {v3,v4}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder 610 75| move-result-object v3 611 76| const v0, #+68 (0x00000044 | 9.52883e-44) 612 79| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 613 82| invoke-virtual {v3}, java.lang.StringBuilder.toString():java.lang.String 614 85| move-result-object v3 615 86| const v0, #+69 (0x00000045 | 9.66896e-44) 616 89| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 617 92| invoke-virtual {v2,v3}, java.io.PrintStream.println(java.lang.String):void 618 .line 7 619 95| const v0, #+70 (0x00000046 | 9.80909e-44) 620 98| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 621 101| return-void 622} 623 624method Tracer.onFooEntry(Target, int, java.lang.String):void 625{ 626 .params "?", "?", "?" 627 .src "entryHooks.java" 628 .line 11 629 .prologue_end 630 .line 11 631 0| const v0, #+71 (0x00000047 | 9.94922e-44) 632 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 633 6| move-object v1, v11 634 .local v1, "__this", Target 635 7| move v2, v12 636 .local v2, "x", int 637 8| move-object v3, v13 638 .local v3, "msg", java.lang.String 639 9| sget-object v4, java.lang.System.out 640 11| const v0, #+72 (0x00000048 | 1.00893e-43) 641 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 642 17| const-string v5, ">>> onFooEntry(%s, %d, %s)\n" 643 19| const v0, #+73 (0x00000049 | 1.02295e-43) 644 22| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 645 25| const/4 v6, #+3 (0x00000003 | 4.20390e-45) 646 26| new-array v6, v6, java.lang.Object[] 647 28| const v0, #+74 (0x0000004a | 1.03696e-43) 648 31| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 649 34| move-object v10, v6 650 35| move-object v6, v10 651 36| move-object v7, v10 652 37| const/4 v8, #+0 (0x00000000 | 0.00000) 653 38| move-object v9, v1 654 39| aput-object v9, v7, v8 655 41| const v0, #+75 (0x0000004b | 1.05097e-43) 656 44| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 657 47| move-object v10, v6 658 48| move-object v6, v10 659 49| move-object v7, v10 660 50| const/4 v8, #+1 (0x00000001 | 1.40130e-45) 661 51| move v9, v2 662 52| invoke-static {v9}, java.lang.Integer.valueOf(int):java.lang.Integer 663 55| move-result-object v9 664 56| const v0, #+76 (0x0000004c | 1.06499e-43) 665 59| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 666 62| aput-object v9, v7, v8 667 64| const v0, #+77 (0x0000004d | 1.07900e-43) 668 67| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 669 70| move-object v10, v6 670 71| move-object v6, v10 671 72| move-object v7, v10 672 73| const/4 v8, #+2 (0x00000002 | 2.80260e-45) 673 74| move-object v9, v3 674 75| aput-object v9, v7, v8 675 77| const v0, #+78 (0x0000004e | 1.09301e-43) 676 80| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 677 83| invoke-virtual {v4,v5,v6}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream 678 86| move-result-object v4 679 87| const v0, #+79 (0x0000004f | 1.10703e-43) 680 90| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 681 .line 12 682 93| return-void 683} 684 685method Tracer.onFooExit(int):int 686{ 687 .params "?" 688 .src "entryHooks.java" 689 .line 16 690 .prologue_end 691 .line 16 692 0| const v0, #+80 (0x00000050 | 1.12104e-43) 693 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 694 6| move v1, v9 695 .local v1, "retValue", int 696 7| sget-object v2, java.lang.System.out 697 9| const v0, #+81 (0x00000051 | 1.13505e-43) 698 12| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 699 15| const-string v3, ">>> onFooExit(%d)\n" 700 17| const v0, #+82 (0x00000052 | 1.14906e-43) 701 20| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 702 23| const/4 v4, #+1 (0x00000001 | 1.40130e-45) 703 24| new-array v4, v4, java.lang.Object[] 704 26| const v0, #+83 (0x00000053 | 1.16308e-43) 705 29| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 706 32| move-object v8, v4 707 33| move-object v4, v8 708 34| move-object v5, v8 709 35| const/4 v6, #+0 (0x00000000 | 0.00000) 710 36| move v7, v1 711 37| invoke-static {v7}, java.lang.Integer.valueOf(int):java.lang.Integer 712 40| move-result-object v7 713 41| const v0, #+84 (0x00000054 | 1.17709e-43) 714 44| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 715 47| aput-object v7, v5, v6 716 49| const v0, #+85 (0x00000055 | 1.19110e-43) 717 52| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 718 55| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream 719 58| move-result-object v2 720 59| const v0, #+86 (0x00000056 | 1.20512e-43) 721 62| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 722 .line 17 723 65| move v2, v1 724 66| const/16 v3, #+100 (0x00000064 | 1.40130e-43) 725 68| add-int/lit8 v2, v2, #+100 (0x00000064 | 1.40130e-43) 726 70| move v1, v2 727 .end_local v1 728 71| return v1 729} 730 731method Tracer.wrapFoo(Base, int, java.lang.String):int 732{ 733 .params "?", "?", "?" 734 .src "entryHooks.java" 735 .line 22 736 .prologue_end 737 .line 22 738 0| const v0, #+87 (0x00000057 | 1.21913e-43) 739 3| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 740 6| move-object v1, v11 741 .local v1, "_this", Base 742 7| move v2, v12 743 .local v2, "x", int 744 8| move-object v3, v13 745 .local v3, "msg", java.lang.String 746 9| sget-object v4, java.lang.System.out 747 11| const v0, #+88 (0x00000058 | 1.23314e-43) 748 14| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 749 17| const-string v5, ">>> %s.test(%d, %s)\n" 750 19| const v0, #+89 (0x00000059 | 1.24716e-43) 751 22| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 752 25| const/4 v6, #+3 (0x00000003 | 4.20390e-45) 753 26| new-array v6, v6, java.lang.Object[] 754 28| const v0, #+90 (0x0000005a | 1.26117e-43) 755 31| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 756 34| move-object v10, v6 757 35| move-object v6, v10 758 36| move-object v7, v10 759 37| const/4 v8, #+0 (0x00000000 | 0.00000) 760 38| move-object v9, v1 761 39| invoke-virtual {v9}, java.lang.Object.getClass():java.lang.Class 762 42| move-result-object v9 763 43| const v0, #+91 (0x0000005b | 1.27518e-43) 764 46| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 765 49| invoke-virtual {v9}, java.lang.Class.getName():java.lang.String 766 52| move-result-object v9 767 53| const v0, #+92 (0x0000005c | 1.28919e-43) 768 56| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 769 59| aput-object v9, v7, v8 770 61| const v0, #+93 (0x0000005d | 1.30321e-43) 771 64| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 772 67| move-object v10, v6 773 68| move-object v6, v10 774 69| move-object v7, v10 775 70| const/4 v8, #+1 (0x00000001 | 1.40130e-45) 776 71| move v9, v2 777 72| invoke-static {v9}, java.lang.Integer.valueOf(int):java.lang.Integer 778 75| move-result-object v9 779 76| const v0, #+94 (0x0000005e | 1.31722e-43) 780 79| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 781 82| aput-object v9, v7, v8 782 84| const v0, #+95 (0x0000005f | 1.33123e-43) 783 87| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 784 90| move-object v10, v6 785 91| move-object v6, v10 786 92| move-object v7, v10 787 93| const/4 v8, #+2 (0x00000002 | 2.80260e-45) 788 94| move-object v9, v3 789 95| aput-object v9, v7, v8 790 97| const v0, #+96 (0x00000060 | 1.34525e-43) 791 100| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 792 103| invoke-virtual {v4,v5,v6}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream 793 106| move-result-object v4 794 107| const v0, #+97 (0x00000061 | 1.35926e-43) 795 110| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 796 .line 23 797 113| move-object v4, v1 798 114| move v5, v2 799 115| move-object v6, v3 800 116| invoke-virtual {v4,v5,v6}, Base.foo(int, java.lang.String):int 801 119| move-result v4 802 120| const v0, #+98 (0x00000062 | 1.37327e-43) 803 123| invoke-static/range {v0..v0}, CodeCoverage.TraceBasicBlock(int):void 804 126| const/16 v5, #+10 (0x0000000a | 1.40130e-44) 805 128| add-int/lit8 v4, v4, #+10 (0x0000000a | 1.40130e-44) 806 130| move v1, v4 807 .end_local v1 808 131| return v1 809} 810