RFR: 8372754: Add wrapper for <cstdlib>

Kim Barrett kbarrett at openjdk.org
Wed Dec 10 22:30:27 UTC 2025


Please review this change that adds a HotSpot wrapper for <cstdlib>.  It also
includes the forbidden function declarations for functions declared there,
moving them from forbiddenFunctions.hpp and friends.

The AIX-specific workaround for its macro-based renaming of malloc/calloc is
also moved to this wrapper, so there is a single location for it. Also cleaned
it up a bit, based on further investigation of the problem.

Also changed uses of <cstdlib> and <stdlib.h> to include the wrapper instead.
There are still a couple of includes of <stdlib.h> in the hotspot directory,
because they can't use the hotspot wrapper: os/windows/include/jvm_md.h and
share/adlc/adlc.hpp.  I looked at removing the one in windows jvm_md.h, but
there are a lot of dependencies on that implicit include in non-HotSpot code.

While updating to use the wrapper, I also did a small amount of include
cleanup here and there.  The changes around immediate_aarch64.hpp are perhaps
a little less trivial than I should have made here.

Testing: mach5 tier1

This should probably be retested by aix port maintainer folks, although I
don't think I made any relevant changes since you last tested it.

This change also resolves:

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

Commit messages:
 - add wrapper for <cstdlib>

Changes: https://git.openjdk.org/jdk/pull/28562/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28562&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8372754
  Stats: 221 lines in 34 files changed: 152 ins; 59 del; 10 mod
  Patch: https://git.openjdk.org/jdk/pull/28562.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28562/head:pull/28562

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


More information about the hotspot-dev mailing list