RFR (S): 8184269: JVMCI CompilerToVM::Data::initialize() should use BarrierSet fake RTTI to identify card table barrier sets
Erik Österlund
erik.osterlund at oracle.com
Wed Jul 12 10:47:32 UTC 2017
Hi,
Bug ID:
https://bugs.openjdk.java.net/browse/JDK-8184269
Webrev:
http://cr.openjdk.java.net/~eosterlund/8184269/webrev.00/
The CompilerToVM::Data::initialize() member function of JVMCI identifies
barrier sets with cards by taking the current BarrierSet and in a switch
statement enumerating if it is in the set of all BarrierSets (except
ModRef for some odd reason).
This switch statement includes both concrete barrier sets and abstract
barrier sets that can never be selected.
This seems like the wrong way of doing things, and FakeRTTI should be
used instead to see if the current barrier set is-a CardTableModRefBS,
which is the condition for populating the card size and card table base
address fields with sensible values.
Thanks,
/Erik
More information about the hotspot-compiler-dev
mailing list