Repository navigation
8369207: _Copy_conjoint_{jshorts,jints,jlongs}_atomic on Linux/BSD AArch64 do not prevent tearing - #27647
8369207: _Copy_conjoint_{jshorts,jints,jlongs}_atomic on Linux/BSD AArch64 do not prevent tearing#27647jcking wants to merge 1 commit into
Conversation
…D AArch64 do not prevent tearing Signed-off-by: Justin King <jcking@google.com>
|
👋 Welcome back jcking! A progress list of the required criteria for merging this PR into |
|
❗ This change is not yet ready to be integrated. |
That would be much better. |
#27642 is already going to move it to |
|
Moving this back to draft until discussions in #27642 finish. |
|
@jcking This pull request has been inactive for more than 8 weeks and will be automatically closed if another 8 weeks passes without any activity. To avoid this, simply issue a |
|
@jcking This pull request has been inactive for more than 16 weeks and will now be automatically closed. If you would like to continue working on this pull request in the future, feel free to reopen it! This can be done using the |
Ensure the compiler cannot optimize the copy loops by replacing them with
memcpywhich is allowed to copy byte by byte potentially introducing tearing. Currently there is nothing preventing the compiler from doing this. We addvolatilewhich prevents the compiler from making this optimization in the future.Currently the code generates to
ldpandstp, this change does have the side affect of forcing it to doldrandstr. If that seems unacceptable from a performance standpoint we can hand-roll assembly to doldpandstp.Progress
Issue
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/27647/head:pull/27647$ git checkout pull/27647Update a local copy of the PR:
$ git checkout pull/27647$ git pull https://git.openjdk.org/jdk.git pull/27647/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 27647View PR using the GUI difftool:
$ git pr show -t 27647Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/27647.diff
Using Webrev
Link to Webrev Comment