-
Notifications
You must be signed in to change notification settings - Fork 6.1k
8340576: Some JVMCI flags are inconsistent #21120
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
Conversation
|
👋 Welcome back dnsimon! A progress list of the required criteria for merging this PR into |
|
@dougxc This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be: You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 50 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. ➡️ To integrate this PR with the above commit message to the |
| CHECK_NOT_SET(JVMCIHostThreads, UseJVMCICompiler) | ||
| CHECK_NOT_SET(LibJVMCICompilerThreadHidden, UseJVMCICompiler) | ||
|
|
||
| if ((UseJVMCICompiler || EnableJVMCI) && |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't UseJVMCICompiler require EnableJVMCI?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This will conflict with my change b755046.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No problem - I'll resolve it once your PR is merged.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Based just off the flag docs, I think its easy to think that +EnableJVMCI is a prerequisite to enabling the other JVMCI flags, along the line of +UnlockExperimentalVMOptions. (That was for sure my newbie reading.)
Perhaps its docs (here) should be updated to say "Defaults to true if UseJVMCICompiler is true"?
TBH I can't wrap my head around what +EnableJVMCI means; these options have a few chains of "this enables that" making it hard to grok the interactions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've pushed e26e68d to try clarify this a bit.
I know it's a little confusing and apologize. When JVMCI is no longer experimental, this should become much clearer.
|
Looks good to me. |
Webrevs
|
|
Studying these recent changes led me back to #14851 which added jtreg propeties:
The latter now feels misleading, since libgraal can be "enabled" for use by non-CompilerBroker compilations, without being used as the JIT compiler. (I'm here b/c we're assembling a distro doing exactly that.) Would it make sense to rename the latter, to reduce ambiguity in the tests? |
Sounds reasonable to me. Maybe Want to take the lead on this? |
I like that alternative, and yes I'll work up the patch. I find myself need to fix several jtreg tests to handle this kind of configuration, so it's relevant to my goals. |
|
@dougxc I cut an issue https://bugs.openjdk.org/projects/JDK/issues/JDK-8340974 and posted a PR #21190 This is my first JDK issue and fix; apologies if I'm getting the process wrong. I wasn't sure if I should tag you on either (or how). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a nice cleanup.
|
Thanks for the reviews. /integrate |
|
Going to push as commit 5d062e2.
Your commit was automatically rebased without conflicts. |
This PR replaces some uses of
UseJVMCICompilerwithEnableJVMCIso that JVMCI code paths are taken when JVMCI is only used for non-CompilerBroker compilations.Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/21120/head:pull/21120$ git checkout pull/21120Update a local copy of the PR:
$ git checkout pull/21120$ git pull https://git.openjdk.org/jdk.git pull/21120/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 21120View PR using the GUI difftool:
$ git pr show -t 21120Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/21120.diff
Webrev
Link to Webrev Comment