RFR: 8365163: [ubsan] left-shift issue in globalDefinitions.hpp

Afshin Zafari azafari at openjdk.org
Sun Aug 17 06:56:02 UTC 2025


There was a left-shift of negative value UB in `set_high` function where the high value sign bit is on and is left-shifted 32 bits to put it in high word of the destination address.
To address it, first the left 32 bits of the provided `high` arg is cleared and then left-shifted 32 bits. 

Tests:
mach5 tiers 1-5 {macosx-aarch64, linux-x64, windows-x64} x {debug, product}

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

Commit messages:
 - 8365163: [ubsan] left-shift issue in globalDefinitions.hpp

Changes: https://git.openjdk.org/jdk/pull/26809/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26809&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8365163
  Stats: 37 lines in 1 file changed: 22 ins; 15 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/26809.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26809/head:pull/26809

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


More information about the hotspot-dev mailing list