[8] RFR: Backport Shenandoah x86_32 support

Roman Kennke rkennke at redhat.com
Tue Oct 29 21:03:34 UTC 2019


In src/cpu/x86/vm/templateInterpreter_x86_32.cpp:

+    Label notObj;

it could go into the UseShenandoahGC scope, couldn't it?

Otherwise looks good! Great work!

Thanks,
Roman

> https://cr.openjdk.java.net/~shade/shenandoah/8u-32-bit/webrev.01/
> 
> This backports x86_32 support for Shenandoah. It is actually three patches:
>  - [backport] 8225111: Make Shenandoah tests work with 32-bit VMs
>  - Disable JNI tests for 32-bit platforms, due to lack of jtreg support
>  - [backport] 8225048: Shenandoah x86_32 support
> 
> The middle one is 8u-specific and needed to pass hotspot_gc_shenandoah cleanly on 32-bit. Once more
> 8u upstream work happens, we would enable those back.
> 
> The backport itself misses the significant chunks of Traversal-related and arraycopy-related
> changes, those would need to be brought in with their respective backports.
> 
> I also had to drill a few new barrier holes in x86_32 interpreter -- those match the similar places
> in x86_64 one. C1 and C2 seem to cover x86_32 cases well. The rest is usual _LP64 dance, with the
> notable exception of saving/restoring the registers prior to SR::load_reference_barrier_interpreter
> call.
> 
> Testing: {x86_64, x86_32} hotspot_gc_shenandoah; specjvm (with full verification); jcstress (running
> now)
> 



More information about the shenandoah-dev mailing list