On Thu, 9 Jul 2026 14:49:45 GMT, Aleksey Shipilev <[email protected]> wrote:

>> Andrew Haley has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   More
>
> src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.cpp line 285:
> 
>> 283:   cbnzw(r_profile_rng, not_zero);
>> 284:   stop("non-zero required before step");
>> 285:   bind(not_zero);
> 
> Want to guard this with `ASSERT`? Also I suspect we can legitimately have 
> zero as LCG state, so it can fire in product builds?

Still bothers me. `state` *is* `r_profile_rng`, right? So test that?

And the second part of my original comment is unresolved: isn't state `0` 
normally reachable? Isn't `LGC(69069, 1, 2^32)` full-period in 2^32? So `0` is 
trivially reachable, and we should be hitting this assert with `-XX:-UseCRC32`?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28541#discussion_r3570264223

Reply via email to