Created
November 16, 2011 09:46
-
-
Save ytoshima/1369697 to your computer and use it in GitHub Desktop.
TraceOptoParse output example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
static int doit(); | |
flags: ACC_STATIC | |
Code: | |
stack=2, locals=2, args_size=0 | |
0: iconst_0 | |
1: istore_0 | |
2: iconst_0 | |
3: istore_1 | |
4: iload_1 | |
5: bipush 100 | |
7: if_icmpge 20 | |
10: iload_0 | |
11: iload_1 | |
12: iadd | |
13: istore_0 | |
14: iinc 1, 1 | |
17: goto 4 | |
20: iload_0 | |
21: ireturn | |
LineNumberTable: | |
line 10: 0 | |
line 11: 2 | |
line 12: 20 | |
StackMapTable: number_of_entries = 2 | |
frame_type = 253 /* append */ | |
offset_delta = 4 | |
locals = [ int, int ] | |
frame_type = 250 /* chop */ | |
offset_delta = 15 | |
$ ~/jdk1.7.0-b147/fastdebug/bin/java -XX:+TraceOptoParse -XX:+PrintCompilation -XX:CICompilerCount=1 sum | |
VM option '+TraceOptoParse' | |
VM option '+PrintCompilation' | |
VM option 'CICompilerCount=1' | |
269 1 sum::doit (22 bytes) | |
Merging state at block #0 bci:0 with empty state on path 1 | |
Parsing block #0 at bci [0,4), successors: 1 | |
@ bci:0 @ bci:1 @ bci:2 @ bci:3Merging state at block #1 bci:4 with empty state on path 1 | |
Parsing block #1 at bci [4,10), successors: 2 4 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #2 bci:10 with empty state on path 2 | |
Uncommon trap reason='predicate' action='maybe_recompile' at bci:10 | |
Uncommon trap reason='loop_limit_check' action='maybe_recompile' at bci:10 | |
Parsing block #2 at bci [10,20), successors: 3 lphd | |
@ bci:10 @ bci:11 @ bci:12 @ bci:13 @ bci:14 @ bci:17Merging state at block #3 bci:4 with empty state on path 1 | |
Parsing block #3 at bci [4,10), successors: 2 4 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #4 bci:20 with empty state on path 2 | |
Merging state at block #2 bci:10 with previous state on path 1 | |
Parsing block #4 at bci [20,22), successors: | |
@ bci:20 @ bci:21 301 1 % sum::doit @ 4 (22 bytes) | |
Merging state at block #0 bci:4 with empty state on path 1 | |
Parsing block #0 at bci [4,10), successors: 1 3 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #3 bci:20 with empty state on path 2 | |
Merging state at block #1 bci:10 with empty state on path 2 | |
Uncommon trap reason='predicate' action='maybe_recompile' at bci:10 | |
Uncommon trap reason='loop_limit_check' action='maybe_recompile' at bci:10 | |
Parsing block #1 at bci [10,20), successors: 2 lphd | |
@ bci:10 @ bci:11 @ bci:12 @ bci:13 @ bci:14 @ bci:17Merging state at block #2 bci:4 with empty state on path 1 | |
Parsing block #2 at bci [4,10), successors: 1 3 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #3 bci:20 with previous state on path 1 | |
Merging state at block #1 bci:10 with previous state on path 1 | |
Parsing block #3 at bci [20,22), successors: | |
@ bci:20 @ bci:21 305 2 % ! sum::main @ 4 (34 bytes) | |
Merging state at block #0 bci:4 with empty state on path 1 | |
Parsing block #0 at bci [4,10), successors: 1 3 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #3 bci:23 with empty state on path 2 | |
Merging state at block #1 bci:10 with empty state on path 2 | |
Uncommon trap reason='predicate' action='maybe_recompile' at bci:10 | |
Uncommon trap reason='loop_limit_check' action='maybe_recompile' at bci:10 | |
Parsing block #1 at bci [10,23), successors: 2 lphd | |
@ bci:10 @ bci:11Merging state at block #0 bci:0 with empty state on path 1 | |
Parsing block #0 at bci [0,4), successors: 1 | |
@ bci:0 @ bci:1 @ bci:2 @ bci:3Merging state at block #1 bci:4 with empty state on path 1 | |
Parsing block #1 at bci [4,10), successors: 2 4 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #2 bci:10 with empty state on path 2 | |
Uncommon trap reason='predicate' action='maybe_recompile' at bci:10 | |
Uncommon trap reason='loop_limit_check' action='maybe_recompile' at bci:10 | |
Parsing block #2 at bci [10,20), successors: 3 lphd | |
@ bci:10 @ bci:11 @ bci:12 @ bci:13 @ bci:14 @ bci:17Merging state at block #3 bci:4 with empty state on path 1 | |
Parsing block #3 at bci [4,10), successors: 2 4 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #4 bci:20 with empty state on path 2 | |
Merging state at block #2 bci:10 with previous state on path 1 | |
Parsing block #4 at bci [20,22), successors: | |
@ bci:20 @ bci:21 @ bci:14 @ bci:15 @ bci:16 @ bci:17 @ bci:20Merging state at block #2 bci:4 with empty state on path 1 | |
Parsing block #2 at bci [4,10), successors: 1 3 | |
@ bci:4 @ bci:5 @ bci:7Merging state at block #3 bci:23 with previous state on path 1 | |
Merging state at block #1 bci:10 with previous state on path 1 | |
Parsing block #3 at bci [23,29), successors: 4 5(e) | |
@ bci:23 @ bci:26Merging state at block #5 bci:32 with empty state on path 1 | |
Merging state at block #4 bci:29 with empty state on path 1 | |
Parsing block #4 at bci [29,32), successors: 6 | |
@ bci:29Merging state at block #6 bci:33 with empty state on path 2 | |
Parsing block #5 at bci [32,33), successors: 6 | |
@ bci:32Merging state at block #6 bci:33 with previous state on path 1 | |
Parsing block #6 at bci [33,34), successors: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment