RFR: 8227369: pd_disjoint_words_atomic() needs to be atomic
David Holmes
dholmes at openjdk.java.net
Wed Feb 23 04:33:06 UTC 2022
Replace the common "atomic" switch+loop code chunks in the pd code with a shared version that uses Atomic::load/store.
See details in the bug report that show how current code is actually replaced by `memcpy` (in some places at least) whereas the new code is not.
Platforms affected:
- all x86
- Zero
- Windows Aarch64
- PPC
Testing: tiers 1-3
Additional builds: tiers 4 and 5
- builds covered: x86 and Zero
GHA
- builds covered: Windows-Aarch64
The only build affected and not tested is PPC. It would be great if someone could take this for a spin on PPC.
For platforms not affected by this change, i.e. those that already specialise the code, I make not claims regarding the atomicity or otherwise of those specialized versions. That would be for someone interested in those specific platforms to check out.
Thanks,
David
-------------
Commit messages:
- 8227369: pd_disjoint_words_atomic() needs to be atomic
Changes: https://git.openjdk.java.net/jdk/pull/7567/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=7567&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8227369
Stats: 88 lines in 5 files changed: 24 ins; 58 del; 6 mod
Patch: https://git.openjdk.java.net/jdk/pull/7567.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/7567/head:pull/7567
PR: https://git.openjdk.java.net/jdk/pull/7567
More information about the hotspot-dev
mailing list