-
Notifications
You must be signed in to change notification settings - Fork 729
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
J9 (8u275, 11.0.9) passed the JUnit test while OpenJDK (8u275, 9.0.4, 11.0.9) and J9 (9.0.4) threw a VerifyError. #11684
Comments
@tajila @ChengJin01 fyi |
Will investigate to see what happened to the verifier. |
It looks like the issue was related to the fix on the generated stackmap of class files (version <=49) at #9419 (intended for the issue detected at #9385). If so, the work in there needs to be double-checked to see whether the initial solution was incomplete or any corner case was encountered in the test here. |
Looking at the bytecode the failing method
In normal case, there should be a I scrutinized the code fix at #9419 and figured the original intention was to only exclude
and subsequently the error with
I already created a fix at ChengJin01@dbed590 to only exclude
and also works for the original issue at #9385
Will launch personal builds and verify the internal tests to ensure there is no break in the existing test suites. |
The change is to reinforce the initial intention that only a target slot with BCV_SPECIAL_INIT is exempted from being set with top given setInitializedThisStatus() needs to check BCV_SPECIAL_INIT to flag the uninitialized_this object. Fixes: eclipse-openj9#11683,eclipse-openj9#11684,eclipse-openj9#11685 Signed-off-by: Cheng Jin <[email protected]>
The issue should be closed as the fix at #11753 was merged. |
JVM Versions
We used the following versions of J9:
The used OpenJDK versions:
Summary of the Problem
We made some changes to a class file in the JUnit project, and let several JVMs execute the corresponding JUnit test. We found that in a test case, J9 (8u275, 11.0.9) just passed while OpenJDK (8u275, 9.0.4, 11.0.9) and J9 (9.0.4) threw a VerifyError. The output is shown as follows:
J9 (8u275, 11.0.9):
J9 (9.0.4):
OpenJDK (8u275, 9.0.4, 11.0.9)
Diagnostic files
VerifyIssue.zip
Steps to reproduce the behavior:
VerifyIssue
, run commandjava -cp sootOutput/junit-junit/:hamcrest-all-1.3.jar:junit-4.12.jar org.junit.runner.JUnitCore org.junit.internal.ChecksTest
Execution environment
The text was updated successfully, but these errors were encountered: