RFR: 8286941: Add mask IR for partial vector operations for ARM SVE [v9]

Xiaohong Gong xgong at openjdk.org
Fri Nov 28 01:37:17 UTC 2025


On Thu, 27 Nov 2025 15:57:38 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> Xiaohong Gong has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Save vect_type to ReductionNode and VectorMaskOpNode
>
> src/hotspot/share/opto/vectornode.cpp line 996:
> 
>> 994:   }
>> 995:   return LoadNode::Ideal(phase, can_reshape);
>> 996: }
> 
> @XiaohongGong Extremely late review 😉 
> 
> Does this not prevent us from doing the `LoadNode::Ideal` optimizations for the cases where `vector_needs_partial_operations` returns true?
> 
> See also: https://bugs.openjdk.org/browse/JDK-8371603

If `vector_needs_partial_operations` returns true, then the original `LoadVectorNode` is transformed to a `LoadVectorMaskedNode`, which is also a kind of `LoadVectorNode`. So in the next IGVN iteration, it will do `LoadNode::Ideal` optimizations. So you are right that we just want to avoid missing the optimizations from `LoadNode::Ideal` for any cases.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/9037#discussion_r2570252362


More information about the hotspot-compiler-dev mailing list