RFR: 8290892: C2: Intrinsify Reference.reachabilityFence [v19]

Vladimir Ivanov vlivanov at openjdk.org
Mon Nov 3 21:07:59 UTC 2025


On Thu, 30 Oct 2025 15:08:09 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> Vladimir Ivanov has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Fix merge
>
> src/hotspot/share/opto/compile.cpp line 4029:
> 
>> 4027:       Node* in = n->in(j);
>> 4028:       if (in->is_DecodeNarrowPtr() && (is_uncommon || !in->has_non_debug_uses())) {
>> 4029:         n->set_req(j, in->in(1));
> 
> Can you say why you changed this code here? Is it equivalent?

It's a refactoring and it is equivalent except reachability fence handling in `Node::has_non_debug_uses()`.

> Could you assert dead->is_dead() here?

Isn't it too strong here? `Node::is_dead()` requires all inputs to be nulled, but  `PhaseIterGVN::remove_globally_dead_node()` zaps node input array with nulls.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25315#discussion_r2487849689
PR Review Comment: https://git.openjdk.org/jdk/pull/25315#discussion_r2487851194


More information about the hotspot-compiler-dev mailing list