[foreign-memaccess+abi] RFR: 8275332: Variadic functions don't work on Linux/AArch64 [v2]

Nick Gasson ngasson at openjdk.java.net
Thu Oct 21 08:57:09 UTC 2021


> Variable length argument lists are handled differently in the
> Mac/Windows and Linux ABIs on AArch64.  Following the recent API refresh
> on the foreign-memaccess+abi branch the Mac behaviour was inadvertently
> applied on Linux too.  This patch restores the correct behaviour on
> Linux and adds a CallArranger unit test so regressions can be more
> easily caught.
> 
> I just added an extra varArgsOnStack argument to
> CallArranger.getBindings() as that seemed the simplest fix, although it
> could get unwieldy if there were too many configurable options.

Nick Gasson has updated the pull request incrementally with one additional commit since the last revision:

  Add per-platform CallArranger classes

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

Changes:
  - all: https://git.openjdk.java.net/panama-foreign/pull/601/files
  - new: https://git.openjdk.java.net/panama-foreign/pull/601/files/bd81722a..db8cc021

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=panama-foreign&pr=601&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=panama-foreign&pr=601&range=00-01

  Stats: 138 lines in 6 files changed: 101 ins; 8 del; 29 mod
  Patch: https://git.openjdk.java.net/panama-foreign/pull/601.diff
  Fetch: git fetch https://git.openjdk.java.net/panama-foreign pull/601/head:pull/601

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


More information about the panama-dev mailing list