Skip to content

Instantly share code, notes, and snippets.

@ytoshima
Created November 16, 2011 09:17
Show Gist options
  • Save ytoshima/1369656 to your computer and use it in GitHub Desktop.
Save ytoshima/1369656 to your computer and use it in GitHub Desktop.
PrintIdeal PrintCompilation output example
$ ~/jdk1.7.0-b147/fastdebug/bin/java -XX:+PrintCompilation -XX:+PrintIdeal -XX:CICompilerCount=1 sum
214 1 sum::doit (22 bytes)
VM option '+PrintCompilation'
VM option '+PrintIdeal'
VM option 'CICompilerCount=1'
21 ConI === 0 [[ 180 ]] #int:0
180 Phi === 184 21 70 [[ 179 ]] #int !orig=[159],[139],[66] !jvms:
sum::doit @ bci:10
179 AddI === _ 180 181 [[ 178 ]] !orig=[154],[137],70,[145] !jvms: su
m::doit @ bci:12
178 AddI === _ 179 181 [[ 177 ]] !orig=[153],[146],[135],86,[71] !jvm
s: sum::doit @ bci:14
177 AddI === _ 178 181 [[ 176 ]] !orig=[165],[152],86,[71] !jvms: sum
::doit @ bci:14
148 ConI === 0 [[ 87 ]] #int:97
176 AddI === _ 177 181 [[ 190 ]] !orig=[168],[152],86,[71] !jvms: sum
::doit @ bci:14
87 CmpI === _ 86 148 [[ 88 ]] !orig=[74] !jvms: sum::doit @ bci:7
77 IfTrue === 89 [[ 184 ]] #1 !jvms: sum::doit @ bci:7
5 Parm === 3 [[ 184 ]] Control !orig=[49] !jvms: sum::doit @ bci:-1
190 AddI === _ 176 181 [[ 193 ]] !orig=[175],70,[145] !jvms: sum::doi
t @ bci:12
88 Bool === _ 87 [[ 89 ]] [lt] !orig=[75] !jvms: sum::doit @ bci:7
22 ConI === 0 [[ 105 92 ]] #int:100
184 CountedLoop === 184 5 77 [[ 180 181 89 184 ]] inner stride: 8
main of N184 !orig=[158],[136],[90],[83],[63] !jvms: sum::doit @ bci:10
193 AddI === _ 190 181 [[ 196 ]] !orig=[174],86,[71] !jvms: sum::doit
@ bci:14
26 ConI === 0 [[ 93 181 ]] #int:1
201 ConI === 0 [[ 86 ]] #int:8
105 CmpI === _ 86 22 [[ 106 ]]
89 CountedLoopEnd === 184 88 [[ 103 77 ]] [lt] P=0.990096, C=189933.00
0000 !orig=[76] !jvms: sum::doit @ bci:7
92 CmpI === _ 93 22 [[ 91 ]] !orig=87,[74] !jvms: sum::doit @ bci:7
99 IfTrue === 98 [[ 94 ]] #1 !orig=77 !jvms: sum::doit @ bci:7
108 IfTrue === 107 [[ 94 ]] #1
181 Phi === 184 26 86 [[ 86 176 177 178 179 190 193 196 199
]] #int:1..97:www #tripcount !orig=[155],[138],[85],[67] !jvms: sum::doit @ bci
:10
196 AddI === _ 193 181 [[ 199 ]] !orig=[174],86,[71] !jvms: sum::doit
@ bci:14
93 AddI === _ 96 26 [[ 92 96 ]] !orig=86,[71] !jvms: sum::doit @ bc
i:14
86 AddI === _ 181 201 [[ 181 87 96 105 ]] !orig=[71] !jvms: sum::
doit @ bci:14
106 Bool === _ 105 [[ 107 ]] [lt]
103 IfFalse === 89 [[ 107 ]] #0
91 Bool === _ 92 [[ 98 ]] [lt] !orig=88,[75] !jvms: sum::doit @ bci:7
94 CountedLoop === 94 108 99 [[ 94 96 97 98 ]] inner stride: 1 p
ost of N90 !orig=[90],[83],[63] !jvms: sum::doit @ bci:10
202 ConI === 0 [[ 70 ]] #int:28
199 AddI === _ 196 181 [[ 70 ]] !orig=[174],86,[71] !jvms: sum::doit
@ bci:14
96 Phi === 94 86 93 [[ 93 95 ]] #int #tripcount !orig=[85],[67] !
jvms: sum::doit @ bci:10
97 Phi === 94 70 95 [[ 95 ]] #int !orig=[66] !jvms: sum::doit @ bc
i:10
107 If === 103 106 [[ 78 108 ]] P=0.500000, C=-1.000000
98 CountedLoopEnd === 94 91 [[ 99 100 ]] [lt] P=0.500000, C=189933.000
000 !orig=89,[76] !jvms: sum::doit @ bci:7
70 AddI === _ 199 202 [[ 97 180 102 ]] !orig=[145] !jvms: sum::doi
t @ bci:12
95 AddI === _ 97 96 [[ 97 102 ]] !orig=70,[145] !jvms: sum::doit @
bci:12
3 Start === 3 0 [[ 3 5 6 7 8 9 ]] #{0:control, 1:abIO, 2:memory
, 3:rawptr:BotPTR, 4:return_address}
78 IfFalse === 107 [[ 101 ]] #0 !jvms: sum::doit @ bci:7
100 IfFalse === 98 [[ 101 ]] #0 !orig=78 !jvms: sum::doit @ bci:7
102 Phi === 101 95 70 [[ 82 ]] #int
9 Parm === 3 [[ 82 ]] ReturnAdr !jvms: sum::doit @ bci:-1
8 Parm === 3 [[ 82 ]] FramePtr !jvms: sum::doit @ bci:-1
7 Parm === 3 [[ 82 ]] Memory Memory: @BotPTR *+bot, idx=Bot; !orig=[
34],[65] !jvms: sum::doit @ bci:-1
6 Parm === 3 [[ 82 ]] I_O !orig=[33],[64] !jvms: sum::doit @ bci:-1
101 Region === 101 100 78 [[ 101 82 102 ]]
82 Return === 101 6 7 8 9 returns 102 [[ 0 ]]
0 Root === 0 82 [[ 0 1 3 21 22 56 26 43 132 147 148 166
169 170 171 191 194 197 200 201 202 203 ]]
231 1 % ! sum::main @ 4 (34 bytes)
10 Parm === 3 [[ 33 ]] Parm0: rawptr:BotPTR !jvms: sum::main @ bci:4
5 Parm === 3 [[ 33 ]] Control !jvms: sum::main @ bci:4
36 Proj === 33 [[ 48 ]] #2 Memory: @rawptr:BotPTR, idx=Raw; !orig=[54
] !jvms: sum::main @ bci:4
7 Parm === 3 [[ 48 33 ]] Memory Memory: @BotPTR *+bot, idx=Bot; !or
ig=[53] !jvms: sum::main @ bci:4
33 CallLeaf === 5 1 7 8 1 ( 10 ) [[ 34 36 ]] # OSR_migration_e
nd void ( rawptr:BotPTR ) !jvms: sum::main @ bci:4
179 ConL === 0 [[ 181 ]] #long:10000
180 ConI === 0 [[ 181 ]] #int:24
9 Parm === 3 [[ 181 ]] ReturnAdr !jvms: sum::main @ bci:4
48 MergeMem === _ 1 7 36 [[ 181 ]] { N36:rawptr:BotPTR } Memor
y: @BotPTR *+bot, idx=Bot; !jvms: sum::main @ bci:7
6 Parm === 3 [[ 181 ]] I_O !orig=[52] !jvms: sum::main @ bci:4
34 Proj === 33 [[ 181 ]] #0 !jvms: sum::main @ bci:4
3 StartOSR === 3 0 [[ 3 5 6 7 8 9 10 ]] #{0:control, 1:ab
IO, 2:memory, 3:rawptr:BotPTR, 4:return_address, 5:rawptr:BotPTR}
181 CallStaticJava === 34 6 48 8 9 ( 180 1 1 1 1 179 1 ) [[ 182
]] # Static uncommon_trap(reason='unloaded' action='reinterpret' index='24') vo
id ( int ) C=0.000100 sum::main @ bci:26 !jvms: sum::main @ bci:26
8 Parm === 3 [[ 181 185 33 ]] FramePtr !jvms: sum::main @ bci:4
182 Proj === 181 [[ 185 ]] #0 !jvms: sum::main @ bci:26
185 Halt === 182 1 1 8 1 [[ 0 ]] !jvms: sum::main @ bci:26
0 Root === 0 185 [[ 0 1 3 180 20 179 104 77 28 64 42 57
243 258 259 277 280 281 282 285 287 288 290 293 ]] inner
236 1 % ! sum::main @ -2 (34 bytes) made not entrant
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment