[foreign-abi] RFR: Rename SystemABI to ForeignLinker, and move C support to a separate class.

Jorn Vernee jvernee at openjdk.java.net
Mon May 18 10:45:00 UTC 2020


This patch renames SystemABI to ForeignLinker, and moves the C support, namely layout constants and the getSystemABI
factory, to a new class named `C`.

This is an effort to untangle the otherwise ABI/Language agnostic API of SystemABI from APIs that serve C specifically.

The rename from SystemABI to ForeignLinker attempts to make it clear that there is not a single ABI per system, but
there can be multiple. Although the same holds for C, in practice there is one de facto ABI per system, so we still
keep the getSystemLinker (renamed from getSystemABI) factory for C.

The new name also better reflects what the class does; it links a native function as a MethodHandle, or links a Java
function as a native function pointer. The overall theme being linking.

I've also removed some of the ABI name constants that were in SystemABI previously, as they were unused.

(FYI, the name change in the diff on GitHub from SystemABI -> C seems to have been inferred automatically, and is
incorrect. The actual rename is from SystemABI -> ForeignLinker, and the C class was added separately).



Commit messages:
 - - Rename SystemABI -> ForeignLinker.

Changes: https://git.openjdk.java.net/panama-foreign/pull/174/files
 Webrev: https://webrevs.openjdk.java.net/panama-foreign/174/webrev.00
  Stats: 1448 lines in 32 files changed: 684 ins; 688 del; 76 mod
  Patch: https://git.openjdk.java.net/panama-foreign/pull/174.diff
  Fetch: git fetch https://git.openjdk.java.net/panama-foreign pull/174/head:pull/174

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

More information about the panama-dev mailing list