RFR: LRB backport to 8u

Roman Kennke rkennke at redhat.com
Wed Oct 23 17:06:12 UTC 2019


Hi Aleksey,

>> Webrev:
>> http://cr.openjdk.java.net/~rkennke/lrb-sh8/webrev.00/
> 
> The amount of shared changes code gone is impressive.
> 
> I think this is ready to go to sh/jdk8 for deeper testing. We still have
> aarch64-port/jdk8u-shenandoah as the stable base which we use for releases.
> 
> I have retargeted webrev generators to see the difference against jdk8u/jdk8u:
>   https://builds.shipilev.net/patch-openjdk-shenandoah-jdk8/
>   https://builds.shipilev.net/patch-openjdk-shenandoah-jdk8-only-shared/
> 
> ...we can check what is going on there after this patchset lands.

Great.

> Nits:
> 
> *) Please try to build without PCH, does it still pass?

Done. Builds fine.

> *) src/share/vm/c1/c1_LIRGenerator.hpp: I wonder how friending works when Shenandoah is disabled (in
> minimal VM build), and ShenandoahBarrierSetC1 is not defined. Actually, I am not sure which #include
> gives us, thus my question about PCH.

Friending is done one purely symbolic level, and on demand. If the
symbol is not present it is ignored. However, I found some other issues
with minimal build which are fixed by the following webrev, which I'm
gonna fold into the LRB changeset before pushing:

http://cr.openjdk.java.net/~rkennke/lrb-sh8/webrev.01.diff/

I'm not going to post another master webrev ;-)

>  155 class LIRGenerator: public InstructionVisitor, public BlockClosure {
>  156   friend class ShenandoahBarrierSetC1;
> 
> *) src/share/vm/prims/unsafe.cpp: the indenting is a little off:
> 
>  314
>  315 ensure_satb_referent_alive(p, offset, v);

Ok. I'll also fix this before pushing.

Otherwise ok, with the above patch plus the unsafe intendation fix?

Roman




More information about the shenandoah-dev mailing list