RFR: 8266440: Shenandoah: TestReferenceShortcutCycle.java test failed on AArch64 [v2]

Zhengyu Gu zgu at openjdk.java.net
Sat May 8 15:22:32 UTC 2021


On Sat, 8 May 2021 08:55:47 GMT, Andrew Haley <aph at openjdk.org> wrote:

>> so, this is better alternative?
>>     `Label lrb;`
>>     `__ tbnz(rscratch2, ShenandoahHeap::HAS_FORWARDED_BITPOS, lrb);`
>>     `__ tbnz(rscratch2, ShenandoahHeap::WEAK_ROOTS_BITPOS, lrb);`
>>     `__ b(heap_stable);`
>>     `__ bind(lrb);`
>
> How about
> 
>  // Check for heap stability                                                                                                                                                                
>   if (is_strong) {
>     __ tbz(rscratch2, ShenandoahHeap::HAS_FORWARDED_BITPOS, heap_stable);
>   } else {
>     label lrb;
>     __ tbnz(rscratch2, ShenandoahHeap::WEAK_ROOTS_BITPOS, lrb);
>     __ tbz(rscratch2, ShenandoahHeap::HAS_FORWARDED_BITPOS, heap_stable);
>     __ bind(lrb);
>   }

Yep, much better. Thanks.

-------------

PR: https://git.openjdk.java.net/jdk/pull/3902


More information about the shenandoah-dev mailing list