-
Notifications
You must be signed in to change notification settings - Fork 728
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
Debug compiler configuration fails to build JDK21 with: Assertion failed at openj9/runtime/compiler/env/VMJ9.cpp:8881: vettedForAOT #19965
Comments
I'm not sure exactly what the requirements for |
Yeah I have some idea about it. If you look at the queries, SVM completely ignores the |
I guess that assert doesn't know about the SVM heh |
This looks safe, then? The method is called to prevent the inlining of a java method that has the annotation |
Yeah I suppose so; if the annotations are part of the J9ROMClass such that a change would result in a different J9ROMClass than what is stored in the SCC, then this query does seem safe even in non-SVM AOT. |
…orAOT The call to isClassLibraryMethod in isChangeCurrentThread should be safe during AOT(eclipse-openj9#19965), setting the parameter to true prevents the assertion failure in isClassLibraryMethod Signed-off-by: Luke Li <[email protected]>
…orAOT The call to isClassLibraryMethod in isChangeCurrentThread should be safe during AOT(eclipse-openj9#19965), setting the parameter to true prevents the assertion failure in isClassLibraryMethod Signed-off-by: Luke Li <[email protected]>
Following up on #19849, I tried building JDK21 (xlinux) with a debug compiler configuration using the usual environment variables:
I said in that linked issue that reverting the first few commits of #19514 was sufficient to get the debug JDK to finish building, and while that is usually true, I noticed after trying to build a debug JDK that it will occasionally crash and fail to generate the full image with the following assert:
The reason this assert is firing is this method:
openj9/runtime/compiler/env/VMJ9.cpp
Lines 3927 to 3938 in 27dac39
introduced in #18243. It calls the virtual method
isClassLibraryMethod
, which in the failing case isTR_J9SharedCacheVM::isClassLibraryMethod
, with the default argumentfalse
forvettedForAOT
, causing the assertion.(I should say that I didn't go through the trouble of reverting those commits in #19514 to attempt to get a debug build to finish compiling. I just commented out the few "Too many dependencies" asserts that exist in
omr/compiler/x/codegen/OMRRegisterDependency.hpp
on theomr
side.)The text was updated successfully, but these errors were encountered: