RFR 8221435: Shenandoah should not mark through weak roots

Aleksey Shipilev shade at redhat.com
Tue Mar 26 19:42:15 UTC 2019

On 3/26/19 8:31 PM, Roman Kennke wrote:
>> Roman, do you recall the reason why it was done this way?
>> ShenandoahWeakAssertNotForwardedClosure is debug only closure, surround the body with ifdef.
> Well, as you say, it's debug-only, so shouldn't matter performance-wise. Except, as you say, it
> should be #ifdef ASSERT. It wasn't #ifdef'd before? WTF?

The comment says why. You need to go over them, even with no-op closure. Not sure if it is still
relevant today:

  711     // Weak processor API requires us to visit the oops, even if we are not doing
  712     // anything to them.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20190326/55d1a4d7/signature.asc>

More information about the hotspot-gc-dev mailing list