RFR: 8290840: Refactor the "os" class [v10]

Ioi Lam iklam at openjdk.org
Thu Aug 4 01:19:37 UTC 2022


> Please see [JDK-8290840](https://bugs.openjdk.org/browse/JDK-8290840) for the detailed proposal.
> 
> The `os` class, declared in os.hpp, forms the major part of the HotSpot porting interface. Its structure has gradually deteriorated over the years as new ports are created and new APIs are added.
> 
> This RFE tries to address the following:
> 
> - Clearly specify where a porting API should be declared and defined among the various `os*.cpp` and `os*.hpp` files.
> - Avoid the inappropriate inclusion of OS-specific APIs (such as the `os::Linux class`) by platform-independent source files.

Ioi Lam has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 17 additional commits since the last revision:

 - Merge branch 'master' of https://github.com/openjdk/jdk into 8290840-refactor-the-os-class
 - fixed more inline.hpp #include order
 - Revert "simplified rarely-defined function os::resolve_function_descriptor()"
   
   This reverts commit 72efa9c0f81105d2f95e06e64e0123a8ac3a1745.
 - @stefank comments
 - clarified comments about inline functions declared in os.hpp
 - Merge branch 'master' into 8290840-refactor-the-os-class
 - made workaround_expand_exec_shield_cs_limit() static; added PPC comments for os::resolve_function_descriptor()
 - fixed whitespace
 - clarify comment
 - PLATFORM_PRINT_NATIVE_STACK -> HAVE_PLATFORM_PRINT_NATIVE_STACK
 - ... and 7 more: https://git.openjdk.org/jdk/compare/ea1ca6a2...7764c9e4

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/9600/files
  - new: https://git.openjdk.org/jdk/pull/9600/files/8ed25f4e..7764c9e4

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=9600&range=09
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=9600&range=08-09

  Stats: 759 lines in 80 files changed: 311 ins; 344 del; 104 mod
  Patch: https://git.openjdk.org/jdk/pull/9600.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9600/head:pull/9600

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


More information about the hotspot-dev mailing list