[foreign] RFR 8225034: java/foreign/LongDoubleTest.java fails on Mac OS
Jorn Vernee
jbvernee at xs4all.nl
Thu May 30 12:28:02 UTC 2019
Hi,
After strengthening the access checking for Pointer::addr(), the
LongDoubleTest is failing. The problem is that UniversalUpcallHandler
creates a READ only pointer, which References::OfLongDouble then tries
to unbox using addr(), but this requires READ_WRITE access.
To solve this I'm letting References::OfLongDouble do manual access
checking for read/write only and use an unchecked version of addr(),
which is then used to get/set the value. LongDoubleTest is disabled on
Windows, so I've also added a LongDoubleBinderTest that just tests the
binder part on all platforms.
Bug: https://bugs.openjdk.java.net/browse/JDK-8225034
Webrev:
http://cr.openjdk.java.net/~jvernee/panama/webrevs/8225034/webrev.00/
This also fixes a minor hickup which prevents compilation in AArch64ABI,
which still expected the old signature of addr().
Thanks,
Jorn
More information about the panama-dev
mailing list