[foreign-memaccess] RFR 8223778: Path lookup API refinements

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Mon May 13 14:43:50 UTC 2019


Hi,
this patch, built on top of 8223768, addresses the following issues:

* the API allows VarHandle with mismatching carrier size to be created.

* the API allows creating of boolean.class VarHandle, which is 
internally not supported

* the API allows dereference of path pointing inside Value sub-structure 
(which should not be supported)

* LayoutPath::groupElement(long) doesn't work for indexed access inisde 
Sequence


Thanks to Jorn for pointing out some of these issues.

I've also done a cleanup of the javadoc in LayoutPath, and added the 
notion of bound vs. unbound layout path. A bound layout path is a path 
we know everything of _statically_. As such we can ask question such as 
'offset'. Unbound paths have one or more access dimensions which are 
supplied at runtime.

Webrev
http://cr.openjdk.java.net/~mcimadamore/panama/8223778/

Maurizio



More information about the panama-dev mailing list