-
Notifications
You must be signed in to change notification settings - Fork 738
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
Investigate not falling back to mimicInterpreterFrameShape in extended HCR #3590
Comments
I also find this distressing: https://github.com/eclipse/openj9/blob/master/runtime/compiler/control/J9Options.cpp#L2367 |
Tracked down the original author of this from the internal repo before we open sourced. It's in SHA 6511ab44c047f4381f50900adba4af79ffefc6ee. Author was @cathyzhyi with the following message:
|
OK great, just wanted to make sure we weren't paying that penalty in more common cases. |
For the original question, which would prevent hitting the case which forces mimicInterpreterFrameShape but I can't find any code that sets @fjeremic @andrewcraik @cathyzhyi Thoughts? |
EnableHCR is only true for fast HCR, afaik, not FSD. |
+1 to @gacholio see the enablement logic in the J9 options processing: The TR_EnableHCR triggers the generation of HCR guards in the JIT code etc (eg fastHCR) which is not needed during FSD since an OSR will occur when necessary is my understanding. |
Had an offline chat with @gacholio , the problem is that the condition |
I can't think of any reason this should break extended HCR. The test you showed me yesterday looked like a CHTable issue (not properly detecting override and going infinitely recursive). |
As we don't have time to figure out the extended HCR behaviour, we'll just add a new call for data breakpoints to flush the compilation queue. I'll leave this open to investigate removing mimic in the future. |
https://github.com/eclipse/openj9/blob/master/runtime/compiler/control/HookedByTheJit.cpp#L3018
When jitClassesRedefined is called with an empty list, the JIT falls back to mimicInterpreterFrameShape.
I can't recall or think of any reason for this.
The text was updated successfully, but these errors were encountered: