Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JEP 442: Foreign Function & Memory API (Third Preview) #16951

Closed
ChengJin01 opened this issue Mar 17, 2023 · 2 comments
Closed

JEP 442: Foreign Function & Memory API (Third Preview) #16951

ChengJin01 opened this issue Mar 17, 2023 · 2 comments
Assignees
Labels
comp:vm jdk21 JEP project:panama Used to track Project Panama related work

Comments

@ChengJin01
Copy link

ChengJin01 commented Mar 17, 2023

See https://openjdk.org/jeps/442 with the following changes in terms of APIs which might affect our FFI implementation in Java after the updated code at #16329.

  1. Centralized the management of the lifetimes of native segments in the Arena interface.
  2. Enhanced layout paths with a new element to dereference address layouts.
  3. Provided a linker option to optimize calls to functions that are short-lived and will not upcall to Java (e.g., clock_gettime).
  4. Provided a fallback native linker implementation, based on libffi, to facilitate porting.
  5. Removed the VaList class.

FYI: @tajila, @pshipton

@ChengJin01 ChengJin01 self-assigned this Mar 17, 2023
@ChengJin01 ChengJin01 added comp:vm project:panama Used to track Project Panama related work JEP labels Mar 17, 2023
@tajila tajila added this to the Java 21 milestone Mar 17, 2023
@pshipton pshipton added the jdk21 label Mar 17, 2023
ChengJin01 pushed a commit to ChengJin01/aqa-tests that referenced this issue Apr 3, 2023
The change exclude this test suite as we no longer
need VaList as specified in the latest JEP442 at
eclipse-openj9/openj9#16951

Fixes: #eclipse-openj9/openj9/issues/17091

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
ChengJin01 pushed a commit to ChengJin01/aqa-tests that referenced this issue Apr 3, 2023
The change exclude this test suite as we no longer
need VaList as specified in the latest JEP442 at
eclipse-openj9/openj9#16951

Fixes: eclipse-openj9/openj9/issues/17091

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
ChengJin01 pushed a commit to ChengJin01/aqa-tests that referenced this issue Apr 3, 2023
The change exclude this test suite as we no longer
need VaList as specified in the latest JEP442 at
eclipse-openj9/openj9#16951

Fixes: eclipse-openj9/openj9/issues/17091

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
karianna pushed a commit to adoptium/aqa-tests that referenced this issue Apr 4, 2023
The change exclude this test suite as we no longer
need VaList as specified in the latest JEP442 at
eclipse-openj9/openj9#16951

Fixes: eclipse-openj9/openj9/issues/17091

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
ChengJin01 pushed a commit to ChengJin01/openj9-openjdk-jdk that referenced this issue May 5, 2023
The changes update FFI specific code by disabling/removing
part of our code to pass the compilation in JDK21.

Note:
The modifications in code are based on the new APIs in JDK21 & JEP442
as mentioned at eclipse-openj9/openj9#16951.

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
ChengJin01 pushed a commit to ChengJin01/openj9-openjdk-jdk21 that referenced this issue Jun 16, 2023
The changes add Power & zLinux support to these
Jtreg test suites in JDK21 plus a few compilation
fixes in the test cases to ensure they are executed
correctly on all supported platforms.

Note:
The PR is part of the FFI work at
eclipse-openj9/openj9#16951

Signed-off-by: Cheng Jin <jincheng@ca.ibm.com>
ChengJin01 pushed a commit to ChengJin01/openj9 that referenced this issue Jun 22, 2023
The modifications are based on the latest APIs in JDK21
to support JEP442 as mentioned at eclipse-openj9#16951.

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
ChengJin01 pushed a commit to ChengJin01/openj9 that referenced this issue Jul 5, 2023
The modifications are based on the latest APIs in JDK21
to support JEP442 as mentioned at eclipse-openj9#16951.

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
ChengJin01 pushed a commit to ChengJin01/openj9 that referenced this issue Jul 5, 2023
The modifications are based on the latest APIs in JDK21
to support JEP442 as mentioned at eclipse-openj9#16951.

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
@ChengJin01
Copy link
Author

The support on the union type in JDK21 is implemented at #18291.

@ChengJin01
Copy link
Author

Functionally everything related to JDK21 has been implemented, including the union support via #18291.

@pshipton pshipton closed this as completed Nov 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp:vm jdk21 JEP project:panama Used to track Project Panama related work
Projects
None yet
Development

No branches or pull requests

3 participants