RFR: 8365991: AArch64: Ignore BlockZeroingLowLimit when UseBlockZeroing is false [v8]

Patrick Zhang qpzhang at openjdk.org
Mon Nov 24 09:22:43 UTC 2025


On Fri, 21 Nov 2025 16:15:07 GMT, Andrew Haley <aph at openjdk.org> wrote:

>> Patrick Zhang has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Improve the comments for zero_words funcs
>>   
>>   Signed-off-by: Patrick Zhang <patrick at os.amperecomputing.com>
>
> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 6207:
> 
>> 6205:   assert(ptr == r10 && cnt == r11, "mismatch in register usage");
>> 6206:   RuntimeAddress zero_blocks = RuntimeAddress(StubRoutines::aarch64::zero_blocks());
>> 6207:   assert(zero_blocks.target() != nullptr, "zero_blocks stub has not been generated");
> 
> What is the point of this change?

There are duplicates of getting the address of `zero_blocks()` and the assertion.

The first was originally introduced by [1] and got subsequently duplicated nearby with [2]. Was there a specific reason to have one copy placed after the `br(LO, around)` and another before it? I tried removing one instance and tests did not report any issue. 

[1] 8179444: AArch64: Put zero_words on a diet, https://github.com/openjdk/jdk/commit/1ce2a362524b7b911062fcef4ace12a355bff651#diff-fe18bdf6585d1a0d4d510f382a568c4428334d4ad941581ecc10ec60ccafca4aR4971-R4972 
[2] 8270947: AArch64: C1: use zero_words to initialize all objects
https://github.com/openjdk/jdk/commit/6c68ce2d396c6fe02201daf2bdb8c164de807cc1#diff-0f4150a9c607ccd590bf256daa800c0276144682a92bc6bdced5e8bc1bb81f3aR4625-R4626

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

PR Review Comment: https://git.openjdk.org/jdk/pull/26917#discussion_r2555186546


More information about the hotspot-dev mailing list