RFR: 8290324: Move atomic operations outside of os_xxx.hpp

Ioi Lam iklam at openjdk.org
Thu Jul 14 21:53:39 UTC 2022


The os_xxx.hpp files inject extra methods/fields that are specific to atomic operations into the `os` class. However, the injected methods/fields are used only by a specific os/cpu combination. Therefore, they should not be inside the `os` class, which should contain only APIs that are used across platforms.

- For ports where the `atomic_copy64()` function is used in a single file, I moved it as an inline function in that file
- Otherwise it's moved to `atomic_<os>_<cpu>.hpp`
- The linux/arm port is a little more involved, but the new code should be a little cleaner than the old code.

-------------

Commit messages:
 - 8290324: Move atomic operations outside of os_xxx.hpp

Changes: https://git.openjdk.org/jdk/pull/9501/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=9501&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8290324
  Stats: 296 lines in 15 files changed: 128 ins; 127 del; 41 mod
  Patch: https://git.openjdk.org/jdk/pull/9501.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9501/head:pull/9501

PR: https://git.openjdk.org/jdk/pull/9501


More information about the hotspot-runtime-dev mailing list