RFR: JDK-8221766: Load-reference barriers for Shenandoah

Andrew Haley aph at redhat.com
Thu Apr 4 15:18:25 UTC 2019


On 4/4/19 3:56 PM, Roman Kennke wrote:
> Yeah... In this case, resolve_forward_pointer_not_null() is really just 
> a single instruction (the load of the fwd ptr into the same register) 
> and I know it is not trashing anything else. I could expand that load 
> right there to make it more obvious, however this might become more 
> complex soon when we eliminate the fwd ptr. But even then, I will make 
> sure that it will still be a single-register-macro.

// BIG COMMENT NEEDED HERE TO SAY IT PRESERVES ALL REGISTERS

>> Also, if you're going to say
>>
>>     Register obj = r0;
>>
>> please either use "obj" everywhere or "r0", not a mixture.
>> I'd just get rid of the Register alias.
>>
> That sounds reasonable.
> 
> Incremental:
> http://cr.openjdk.java.net/~rkennke/JDK-8221766/webrev.03.diff/
> Full:
> http://cr.openjdk.java.net/~rkennke/JDK-8221766/webrev.03/
> 
> Ok to push it like this?

Sure. With big comment. No need for a resubmit.

-- 
Andrew Haley
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671


More information about the shenandoah-dev mailing list