RFR (S) 8184753: Assert against MinObjectAlignmentMask to avoid integer division
Aleksey Shipilev
shade at redhat.com
Mon Jul 17 16:00:19 UTC 2017
https://bugs.openjdk.java.net/browse/JDK-8184753
fastdebug builds performance is important to minimize testing time. In GC tests,
we have a big hotspot at this line in oop::size_given_klass():
assert(s % MinObjAlignment == 0, "Oop size is not properly aligned: %d", s);
The hotspot is because of the integer division. Alas, the divisor is not known
at compile time, because it can be set from the JVM command line, so compiler
cannot optimize it. There is an easy fix, use the MinObjectAlignmentMask to assert:
http://cr.openjdk.java.net/~shade/8184753/webrev.01
This also fixes all uses of MinObjAlignment in similar expressions.
Testing: hotspot_tier1 (Linux x86_64/fastdebug)
Thanks,
-Aleksey
More information about the hotspot-dev
mailing list