The ResolvedMethodTable has weak oops in it. Currently it uses explicit SATB enqueueing for G1 to make the weak semantics work.
This should be refactored to use the Access API instead. The raw loads should be ON_PHANTOM_OOP | AS_NO_KEEPALIVE and the loads followed by explicit G1 SATB enqueueing should be ON_PHANTOM_OOP.
This should be refactored to use the Access API instead. The raw loads should be ON_PHANTOM_OOP | AS_NO_KEEPALIVE and the loads followed by explicit G1 SATB enqueueing should be ON_PHANTOM_OOP.