[Shenandoah 11u backport] 8229919: Support JNI Critical functions in object pinning API on x86_32 platforms

Roman Kennke rkennke at redhat.com
Wed Feb 19 23:14:37 UTC 2020


Looks good to me.

Roman

PS: I wonder if we should take these parts to upstream 11u eventually,
that would bring down our shared-code exposure considerably. OTOH, only
Shenandoah uses these code paths. Hmm.

Or could we take the whole code path to ShenandoahBarrierSetAssembler,
call it right before:

unpack_array_argument(..)

like we do elsewhere? E.g.:

#ifdef INCLUDE_SHENANDOAHGC
  if (UseShenandoahGC) {
    ShenandoahBarrierSetAssembler::bsasm()->gen_object_pinning();
  }
#endif
unpack_array_argument(..);

and move all the rest of the code into ShBSA?

That should be a follow-up though because it would also do the same code
movements for x86_64 and aarch64.

Roman

> I would like backport JDK-8229919 to Shenandoah 11u.
> 
> http://cr.openjdk.java.net/~zgu/JDK-8229919/11u/webrev.00/
> 
> Test:
>   hotspot_gc_shenandoah x86_32 on Linux
> 
> Thanks,
> 
> -Zhengyu
> 



More information about the shenandoah-dev mailing list