Request for reviews (L): 6695810: null oop passed to encode_heap_oop_not_null
Vladimir Kozlov
Vladimir.Kozlov at Sun.COM
Thu May 15 03:53:07 UTC 2008
Note: diffs contains changes (in node.cpp and c2_globals.hpp)
for 6701887 which I will push first.
http://webrev.invokedynamic.info/kvn/6695810/index.html
Fixed 6695810: null oop passed to encode_heap_oop_not_null
These changes include fixes for problems found in Escape Analysis
and Compressed Oops implementations.
Also they include additional optimizations for Compressed Oops:
- use the 32-bits gap after klass in a object for
a narrow oop field,
- use the 32-bits gap after klass in a object for
boxing objects value (except Long and Double),
- use heapOopSize for instanceKlass::_nonstatic_field_size value
instead of wordSize,
- add LoadNKlass and CMoveN nodes and use CmpN and ConN nodes
and add correspondent platform specific assembler instructions
to generate narrow oops (32-bits) compares for oop type and
oop NULL checks.
Reviewed by:
Fix verified (y/n): y, failed tests and generated code
Other testing:
JPRT, CTW, nsk tests, refworkload
More information about the hotspot-gc-dev
mailing list