-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
8300247: Harden C1 xchg on AArch64 and PPC #12065
Conversation
/contributor add @TheRealMDoerr |
/contributor @xmas92 |
👋 Welcome back eosterlund! A progress list of the required criteria for merging this PR into |
@fisk |
@fisk Syntax:
User names can only be used for users in the census associated with this repository. For other contributors you need to supply the full name and email address. |
Webrevs
|
@fisk 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 204 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 |
Thanks for including my PPC64 code! |
Thanks for the review, @theRealAph! |
Hi, I think we could also relax the same assertion for riscv too.
|
@RealFYang Sure - fixed! |
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.
Looks good.
Thanks for the review! |
/integrate |
Going to push as commit 28545dc.
Your commit was automatically rebased without conflicts. |
In the C1 xchg operation, AArch64 and PPC don't deal well with the input register and output register being the same. In some new code, that can happen. This change aims at solving that issue.
As for AArch64, the xchg implementation in the macro assembler already deals well with the input and output register being the same. So we just need to remove an assert. As for the PPC implementation, @TheRealMDoerr has written a variation that uses a temp operand ensuring that they are not the same register.
Progress
Issue
Reviewers
Contributors
<mdoerr@openjdk.org>
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk pull/12065/head:pull/12065
$ git checkout pull/12065
Update a local copy of the PR:
$ git checkout pull/12065
$ git pull https://git.openjdk.org/jdk pull/12065/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 12065
View PR using the GUI difftool:
$ git pr show -t 12065
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/12065.diff