-
Notifications
You must be signed in to change notification settings - Fork 6.1k
8305236: Some LoadLoad barriers in the interpreter are unnecessary after JDK-8220051 #13244
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 sunny868! A progress list of the required criteria for merging this PR into |
/label remove hotspot-compiler |
/label add hotspot-runtime |
This should be reviewed by hotspot-runtime folks. |
@TobiHartmann |
@TobiHartmann |
Thanks @TobiHartmann |
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 really needs approval by someone involved in the Aarch64 and RiscV ports, but given notice_safepoints
is now only used by JVMTI and called from a VM operation at a safepoint, I concur that these loadload
barriers have no role to play in "seeing" the updated dispatch table.
Thanks.
May I suggest changing the PR and JBS issue title to: 8305236: Some LoadLoad barriers in the interpreter are unnecessary after JDK-8220051 |
|
@sunny868 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 256 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. As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@dholmes-ora, @RealFYang, @theRealAph) but any other Committer may sponsor as well. ➡️ To flag this PR as ready for integration with the above commit message, type |
@sunny868 Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information. |
Done |
Thanks @dholmes-ora to review. @theRealAph @RealFYang Please help confirm if there is still a problem with the patch. |
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.
That looks reasonable to me. I am performing some tests on linux-riscv64 platform.
Some StoreStore barriers is unnecessary also in interpreter. I had create a PR #13320, please review it together. |
Please do the corresponding stress tests on LoongArch, @sunny868 . |
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.
Performed tier1-3 tests on linux-riscv64, result looks good. Also run jcstress test overnight.
Better to have an ACK from the aarch64 reviewers.
/integrate |
The jcstress test runned OK on LoongArch. |
@dholmes-ora can you sponsor it for me? thank you. |
I did not see such an ACK. |
@theRealAph What is your opinion on this PR? |
/label add aarch64 |
@sunny868
|
I don't think they ever had any such role to play, and I suspect they never have achieved anything. |
/sponsor |
Going to push as commit 2c70828.
Your commit was automatically rebased without conflicts. |
@RealFYang @sunny868 Pushed as commit 2c70828. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
After JDK-8220051, Interpreter::notice_safepoints() only be executed at a safe point, so LoadLoad barrier is useless.
Barrier directives are generally time-consuming, so this patch removes LoadLoad be used for aarch64 and riscv.
Jtreg tier1-2 testing for aarch64 has been done.
Please help review it.
Thanks.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/13244/head:pull/13244
$ git checkout pull/13244
Update a local copy of the PR:
$ git checkout pull/13244
$ git pull https://git.openjdk.org/jdk.git pull/13244/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 13244
View PR using the GUI difftool:
$ git pr show -t 13244
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/13244.diff
Webrev
Link to Webrev Comment