RFR: 8356700: Declare incompressible scope in fill_words / zero_memory assembler routines

Anjian-Wen duke at openjdk.org
Mon May 12 02:52:20 UTC 2025


The correctness of the logic depends on the fixed instruction size of the store instructions
emitted by the loop in MacroAssembler::fill_words and MacroAssembler::zero_memory assembler
routines. These store instructions won't be compressed into 16-bit format due to negative
offset immediate. But it will be safer to make it explict by declaring an incompressible scope
when emitting these store instructions. This also renames IncompressibleRegion to IncompressibleScope.

Tier1 tested on linux-riscv64 platforms.

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

Commit messages:
 - RISCV: Declare incompressible scope in fill_words / zero_memory assembler routines

Changes: https://git.openjdk.org/jdk/pull/25172/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25172&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8356700
  Stats: 63 lines in 8 files changed: 7 ins; 1 del; 55 mod
  Patch: https://git.openjdk.org/jdk/pull/25172.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25172/head:pull/25172

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


More information about the hotspot-dev mailing list