% cat .hotspot_compiler
print Decompiler::decodeConstantPool
% /java/re/jdk/7/latest/binaries/solaris-amd64/fastdebug/bin/java -d64 -XX:+UseCompressedOops -XX:+PrintCompilation -Xbatch -XX:CICompilerCount=1 -Xmx128M -jar GCBasher.jar -time:300000
...
0b6 B6: # B56 B7 <- B60 B5 Freq: 0.999979
0b6
0b6 # checkcastPP of R8
0b6 movq R10, [rsp + #0] # spill
0ba movq R10, R10 # ptr -> long
0ba encode_heap_oop_not_null R11,R8
13d movq R8, [rsp + #0] # spill
141 movl [R8 + #24 (8-bit)], R11 # compressed ptr ! Field Decompiler.constantPool
145 shrq R10, #9
149 movq R11, 0xfffffd7ff19fe000 # ptr
153 movb [R11 + R10], R12 # short/char (R12_heapbase==0)
157 cmpl RBP, #1
15a jle B56 P=0.010631 C=73.000000
15a
Without COOP:
0a0 B6: # B57 B7 <- B61 B5 Freq: 0.999979
0a0
0a0 # checkcastPP of R11
0a0 movq R10, [rsp + #0] # spill
0a4 movq [R10 + #40 (8-bit)], R11 # ptr ! Field Decompiler.constantPool
0a8 movq R10, R10 # ptr -> long
0a8 shrq R10, #9
0ac movq R11, 0xff7ffd813eede000 # ptr
0b6 movb [R11 + R10], #0 # byte
0bb cmpl RBP, #1
0be jle B57 P=0.010631 C=73.000000
0be
print Decompiler::decodeConstantPool
% /java/re/jdk/7/latest/binaries/solaris-amd64/fastdebug/bin/java -d64 -XX:+UseCompressedOops -XX:+PrintCompilation -Xbatch -XX:CICompilerCount=1 -Xmx128M -jar GCBasher.jar -time:300000
...
0b6 B6: # B56 B7 <- B60 B5 Freq: 0.999979
0b6
0b6 # checkcastPP of R8
0b6 movq R10, [rsp + #0] # spill
0ba movq R10, R10 # ptr -> long
0ba encode_heap_oop_not_null R11,R8
13d movq R8, [rsp + #0] # spill
141 movl [R8 + #24 (8-bit)], R11 # compressed ptr ! Field Decompiler.constantPool
145 shrq R10, #9
149 movq R11, 0xfffffd7ff19fe000 # ptr
153 movb [R11 + R10], R12 # short/char (R12_heapbase==0)
157 cmpl RBP, #1
15a jle B56 P=0.010631 C=73.000000
15a
Without COOP:
0a0 B6: # B57 B7 <- B61 B5 Freq: 0.999979
0a0
0a0 # checkcastPP of R11
0a0 movq R10, [rsp + #0] # spill
0a4 movq [R10 + #40 (8-bit)], R11 # ptr ! Field Decompiler.constantPool
0a8 movq R10, R10 # ptr -> long
0a8 shrq R10, #9
0ac movq R11, 0xff7ffd813eede000 # ptr
0b6 movb [R11 + R10], #0 # byte
0bb cmpl RBP, #1
0be jle B57 P=0.010631 C=73.000000
0be