[foreign-abi] RFR: 8244720: Check MethodType and FunctionDescritpor used when linking

Jorn Vernee jvernee at openjdk.java.net
Mon May 11 10:27:47 UTC 2020


This patch adds exhaustive checking to the MethodType and FunctionDescriptor used to link down calls and upcalls.

These checks define and enforce a set of acceptable carrier types, as well as which carrier type & memory layout
combinations are acceptable. This makes it easier to reason about the set of MethodType and FunctionDescriptor
combinations that can be used during linking, as well as helping to catch any errors made with mismatching carrier
types and memory layouts.

The additional checks turned up 2 cases of carrier type to memory layout mismatch in StdLibTest, which I've fixed.



Commit messages:
 - Add more type checking for MethodType and FunctionDescriptors used for linking

Changes: https://git.openjdk.java.net/panama-foreign/pull/158/files
 Webrev: https://webrevs.openjdk.java.net/panama-foreign/158/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8244720
  Stats: 168 lines in 9 files changed: 158 ins; 0 del; 10 mod
  Patch: https://git.openjdk.java.net/panama-foreign/pull/158.diff
  Fetch: git fetch https://git.openjdk.java.net/panama-foreign pull/158/head:pull/158

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

More information about the panama-dev mailing list