RFR: Fix, improve and refactor matrix barrier on AAarch64
Roman Kennke
rkennke at redhat.com
Thu Sep 14 13:20:03 UTC 2017
This patch fixes an issue in the aarch64 interpreter matrix barrier that
caused TestGCOldWithShenandoah to fail verification. The reason was that
we invoke the storeval-(read-)barrier *after* we copied the newval, and
then pass the original to the matrix barrier, thus connecting the wrong
regions.
The patch does:
- Move the storeval barrier before copying the newval
- Add a tmp3 arg to the shenandoah_write_barrier_post() to make it
consistent (we've been using 2 tmp regs passed via function call, and 1
implicit)
- Implement the fast matrix math as a bonus
Test: hotspot_gc_shenandoah
http://cr.openjdk.java.net/~rkennke/fix-matrix-barrier-aarch64/webrev.00/
<http://cr.openjdk.java.net/%7Erkennke/fix-matrix-barrier-aarch64/webrev.00/>
Ok?
More information about the shenandoah-dev
mailing list