[foreign-jextract] RFR: 8248415: Create VarHandles for pointer fields through the MemoryHandles API

Filip Krakowski github.com+7255767+krakowski at openjdk.java.net
Wed Jul 1 21:16:57 UTC 2020


This PR creates an adapted
[`VarHandle`](https://github.com/openjdk/panama-foreign/blob/foreign-jextract/src/java.base/share/classes/java/lang/invoke/VarHandle.java)
usable with
[`MemoryAddress`](https://github.com/openjdk/panama-foreign/blob/foreign-jextract/src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemoryAddress.java)
carriers for pointer fields. It uses
[`MemoryHandles#asAddressVarHandle`](https://github.com/openjdk/panama-foreign/blob/foreign-jextract/src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemoryHandles.java#L334-L350)
and a previously created `long` VarHandle to do so.

-------------

Commit messages:
 - 8248415: Create VarHandles for pointer fields through the MemoryHandles API

Changes: https://git.openjdk.java.net/panama-foreign/pull/216/files
 Webrev: https://webrevs.openjdk.java.net/panama-foreign/216/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8248415
  Stats: 34 lines in 2 files changed: 29 ins; 1 del; 4 mod
  Patch: https://git.openjdk.java.net/panama-foreign/pull/216.diff
  Fetch: git fetch https://git.openjdk.java.net/panama-foreign pull/216/head:pull/216

PR: https://git.openjdk.java.net/panama-foreign/pull/216


More information about the panama-dev mailing list