RFR: 8371716: C2: Phi node fails Value()'s verification when speculative types clash [v2]

Marc Chevalier mchevalier at openjdk.org
Wed Nov 19 11:04:48 UTC 2025


On Wed, 19 Nov 2025 10:54:38 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> src/hotspot/share/opto/cfgnode.cpp line 1365:
>> 
>>> 1363:     ft = t->filter_speculative(first_ft);
>>> 1364: #ifdef ASSERT
>>> 1365:     // The following logic has been moved into TypeOopPtr::filter.
>> 
>> Why does this mean? What logic are you referring to? The one here? But then you say it was moved to TypeOopPtr::filter ...but it is still here? Can you clarify?
>
> Or are you saying it is moved "from" rather than "into", i.e. this is some sort of code duplication?

This block is a duplication of the existing one, to go after the second filtering as @dafedafe noticed. I have no idea what is the comment for. As I told @dafedafe, if it stays, I'll factor it out, but it is premature cleanup at this point.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28331#discussion_r2541524849


More information about the hotspot-compiler-dev mailing list