RFR: 8338021: Support saturating vector operators in VectorAPI [v2]

Sandhya Viswanathan sviswanathan at openjdk.org
Wed Aug 28 16:08:25 UTC 2024


On Wed, 28 Aug 2024 00:12:26 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:

>> Hey @jaskarth , Central idea behind introducing VectorReinterpretNode after unsigned vector IR is to facilitate unboxing-boxing optimization, this explicit reinterpretation ensures type compatibility between value being boxed and box type which is always signed vector types.
>> 
>> As mentioned previously my plan is to address is handle  value range related concerns in a follow up patch along with intrisification and auto-vectorization of newly created scalar saturating IR, this patch is not generating scalar IR with newly defined unsigned types.
>
> Wonder if it would have been simpler if we added unsigned vector operators like Op_SaturatingUnsignedAddVB etc. We are not adding unsigned data types to Java, only supporting unsigned (saturating) operations on existing signed integral types.

If the aim is to reduce the number of nodes, we could merge the Op_SaturatingAddVB, Op_SaturatingAddVS, Op_SaturatingAddVI, and Op_SaturatingAddVL into one Op_SaturatingAddV. Likewise for unsigned saturating add into Op_SaturatingUnsignedAddV.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20507#discussion_r1734951862


More information about the core-libs-dev mailing list