RFR: 8375010: C2 VectorAPI: assert(vbox->is_CheckCastPP()) failed: should be expanded [v2]
Kerem Kat
krk at openjdk.org
Fri Jan 16 12:29:48 UTC 2026
On Thu, 15 Jan 2026 18:16:13 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:
>> Kerem Kat has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Simplify expand_vbox_node_helper by merging VectorBox Phi handling
>
> src/hotspot/share/opto/vector.cpp line 335:
>
>> 333: // value-numbered to a single node if all inputs were identical.
>> 334: if (vbox->is_Phi()) {
>> 335: assert(!vect->is_Phi() || vbox->as_Phi()->region() == vect->as_Phi()->region(), "");
>
> Isn't the assert too strong? I don't see why redundant phi elimination can't result in a dominating `Phi` node.
>
> So, the predicate to choose between `vect->in(i)` and `vect` is `vect->is_Phi() && vect->as_Phi()->region() == vbox->as_Phi()->region()`.
Yes, I was going to fix that separately in https://github.com/krk/jdk/commit/43d0649aaafde05b1e516129e3249d8cb8aad5b9, for [JDK-8374903](https://bugs.openjdk.org/browse/JDK-8374903)
I will merge the fixes and add the second issue to this PR.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/29200#discussion_r2698331270
More information about the hotspot-compiler-dev
mailing list