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

Ioi Lam iklam at openjdk.org
Tue Aug 2 06:46:38 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 incrementally with four additional commits since the last revision:

 - clarify comment
 - PLATFORM_PRINT_NATIVE_STACK -> HAVE_PLATFORM_PRINT_NATIVE_STACK
 - simplified rarely-defined function os::resolve_function_descriptor()
 - Made workaround_expand_exec_shield_cs_limit() a static function in os_linux.cpp

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/9600/files
  - new: https://git.openjdk.org/jdk/pull/9600/files/560e67c9..1c7f8ebe

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

  Stats: 221 lines in 12 files changed: 89 ins; 118 del; 14 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