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

Update getMemberVMInfo behavior to match RI #14044

Merged
merged 1 commit into from
Dec 1, 2021

Conversation

fengxue-IS
Copy link
Contributor

@fengxue-IS fengxue-IS commented Nov 30, 2021

  • Move invocation type check before vTableIndex check to avoid method vtable index returned for invokespecial call.

Related: #13946
Close: #13995

Signed-off-by: Jack Lu [email protected]

@fengxue-IS fengxue-IS requested a review from babsingh November 30, 2021 22:06
@fengxue-IS
Copy link
Contributor Author

local testing showed assertion failure in MemberName.vminfoIsConsistent() is fixed (#13946 (comment)).

actual testcase failures related to FFI should be addressed in #13315

@fengxue-IS fengxue-IS changed the title Update getMemberVMInfo behavior to match OpenJDK Update getMemberVMInfo behavior to match RI Nov 30, 2021
- Move invocation type check before vTableIndex check to avoid method
vtable index returned for invokespecial call.

Signed-off-by: Jack Lu <[email protected]>
@babsingh
Copy link
Contributor

@fengxue-IS Can you confirm if the assertion is not seen for all the tests listed in #13995? If so, Close: #13995 can be added to your commit message.

@fengxue-IS
Copy link
Contributor Author

fengxue-IS commented Nov 30, 2021

With local build

OpenJDK Runtime Environment (build 18-internal+0-adhoc.root.openj9-openjdk-jdk)
Eclipse OpenJ9 VM (build getMemberVMInfo-333c5d776, JRE 18 Linux amd64-64-Bit Compressed References 20211130_000000 (JIT enabled, AOT enabled)
OpenJ9   - 854b52f62
OMR      - 8d10f065c
JCL      - a046575f4dc based on jdk-18+24)

Passed tests:

TEST: java/lang/reflect/Proxy/nonPublicProxy/DefaultMethodProxy.java
TEST: java/lang/reflect/Proxy/ProxyTest.java
TEST: java/lang/reflect/Proxy/DefaultMethods.java
TEST: java/lang/invoke/lookup/SpecialStatic.java
TEST: java/lang/invoke/lambda/invokeSpecial/InvokeSpecialMethodTest.java
TEST: java/lang/invoke/MethodHandlesProxiesTest.java
TEST: java/lang/invoke/JavaDocExamplesTest.java
TEST: java/lang/invoke/InvokeDynamicPrintArgs.java
TEST: java/lang/invoke/8177146/TestMethodHandleBind.java
TEST: java/lang/constant/MethodHandleDescTest.java
TEST: java/lang/invoke/7087570/Test7087570.java
TEST: java/lang/invoke/7196190/GetUnsafeTest.java
TEST: java/lang/invoke/lambda/MetafactoryArgValidationTest.java
TEST: java/foreign/TestNative.java

Failed due to FFI related errors:

java/foreign/StdLibTest.java
Total tests run: 75487, Passes: 70477, Failures: 5010, Skips: 0
===============================================
java/foreign/TestDowncall.java
Total tests run: 1424, Passes: 26, Failures: 1398, Skips: 0
===============================================
java/foreign/SafeFunctionAccessTest.java
Total tests run: 2, Passes: 1, Failures: 1, Skips: 0

Failed due to exception from FFI code:

TEST: java/foreign/TestIntrinsics.java
[Error] java.lang.NullPointerException: Cannot invoke &quot;java.lang.Long.longValue()&quot; because the return value of &quot;java.util.HashMap.get(java.lang.Object)&quot; is null
	at jdk.incubator.foreign/jdk.internal.foreign.abi.ProgrammableInvoker.generateAdapter(ProgrammableInvoker.java:264)
	at jdk.incubator.foreign/jdk.internal.foreign.abi.ProgrammableInvoker.&lt;init&gt;(ProgrammableInvoker.java:239)

Crashed:

TEST: java/foreign/TestNULLAddress.java

Per discussion with @ChengJin01 , FFI test failures to be addressed in #13315

@ChengJin01
Copy link

The FFI related test failures were already addressed in #13315.

Copy link
Contributor

@babsingh babsingh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. @tajila These changes only impact JDK17+. Can you launch PR builds to verify these changes?

@tajila
Copy link
Contributor

tajila commented Dec 1, 2021

Jenkins test sanity win jdk17

@tajila
Copy link
Contributor

tajila commented Dec 1, 2021

Jenkins test sanity,extended zlinux jdk17

@tajila tajila merged commit 5fc5eef into eclipse-openj9:master Dec 1, 2021
babsingh added a commit to babsingh/aqa-tests that referenced this pull request Dec 6, 2021
babsingh added a commit to babsingh/aqa-tests that referenced this pull request Dec 6, 2021
llxia pushed a commit to adoptium/aqa-tests that referenced this pull request Dec 7, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[JDK18] AssertionError in MemberName.vminfoIsConsistent
4 participants