RFR: 8221732: Introduce CollectedHeap::hash_oop()

Per Liden per.liden at oracle.com
Mon Apr 1 07:39:52 UTC 2019


The JVMTITagMap hashes oops by casts them to 32-bit unsigned integers. 
For ZGC, which has colored oop, this happens to work because all 
metadata bits are above 32-bit. In theory, ZGC could store its metadata 
bits in the lower 32-bit part of the address, in which case this hash 
scheme would break. Today we have an ugly assert in 
JvmtiTagHashmap::hash() to make sure this doesn't happen. However, the 
JVMITagMap should not make assumptions on what an oop looks like, and 
should instead delegate this hashing to CollectedHeap.

Bug: https://bugs.openjdk.java.net/browse/JDK-8221732
Webrev: http://cr.openjdk.java.net/~pliden/8221732/webrev.0

/Per



More information about the hotspot-gc-dev mailing list