Request for reviews (M): 6705887: Compressed Oops: generate x64 addressing and implicit null checks with narrow oops

Vladimir Kozlov Vladimir.Kozlov at Sun.COM
Thu May 22 14:07:24 PDT 2008


Thanks to already existing code it was easer than I thought.
I will add another RFE to add debug info for narrow oops.

Changes in connode.cpp and memnode.cpp are from comments on
previous 6703890 changes.

Thanks,
Vladimir

http://webrev.invokedynamic.info/kvn/6705887/index.html

Fixed 6705887: Compressed Oops: generate x64 addressing and implicit null checks with narrow oops

Problem:
Currently C2 generates explicit narrow oops NULL checks (after 6703890 fix)
and decode narrow oops to form an extended address for x64.

Solution:
Generate addresses and implicit null checks with narrow oops to avoid decoding.

Reviewed by:
Fix verified (y/n): y, generated code:

1c2     movl    R10, [R10 + #16 + RDI << #2]    # compressed ptr
1c7     decode_heap_oop RBP,R10
25b     movl    R11, [R12 + R10 << 3 + #8] (compressed oop addressing)  # compressed klass ptr
260     NullCheck R10

Other testing:
JPRT




More information about the hotspot-compiler-dev mailing list