RFR: 8342676: Unsigned Vector Min / Max transforms [v6]

Sandhya Viswanathan sviswanathan at openjdk.org
Fri Apr 25 00:13:49 UTC 2025


On Mon, 14 Apr 2025 13:50:17 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> Adding following IR transforms for unsigned vector Min / Max nodes.
>> 
>> => UMinV (UMinV(a, b), UMaxV(a, b)) => UMinV(a, b)
>> => UMinV (UMinV(a, b), UMaxV(b, a)) => UMinV(a, b)
>> => UMaxV (UMinV(a, b), UMaxV(a, b)) => UMaxV(a, b)
>> => UMaxV (UMinV(a, b), UMaxV(b, a)) => UMaxV(a, b)
>> => UMaxV (a, a) => a
>> => UMinV (a, a) => a
>> 
>> New IR validation test accompanies the patch.
>> 
>> This is a follow-up PR for https://github.com/openjdk/jdk/pull/20507
>> 
>> Best Regards,
>> Jatin
>
> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Comment refinement

test/hotspot/jtreg/compiler/vectorapi/VectorUnsignedMinMaxOperationsTest.java line 371:

> 369:             IntVector vec1 = IntVector.fromArray(ispec, int_in1, i);
> 370:             IntVector vec2 = IntVector.fromArray(ispec, int_in2, i);
> 371:             // UMaxV (UMinV vec2, vec1) (UMaxV vec1, vec2) => UMinV vec1 vec2

The above comment should be:
// UMaxV (UMinV vec2, vec1) (UMaxV vec1, vec2) => UMaxV vec1 vec2

test/hotspot/jtreg/compiler/vectorapi/VectorUnsignedMinMaxOperationsTest.java line 452:

> 450:             IntVector vec1 = IntVector.fromArray(ispec, int_in1, i);
> 451:             IntVector vec2 = IntVector.fromArray(ispec, int_in2, i);
> 452:             // UMaxV (UMinV vec1, vec2) (UMaxV vec2, vec1) => UMinV vec1 vec2

The above comment should be:
// UMaxV (UMinV vec1, vec2) (UMaxV vec2, vec1) => UMaxV vec1 vec2

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21604#discussion_r2059390266
PR Review Comment: https://git.openjdk.org/jdk/pull/21604#discussion_r2059392536


More information about the hotspot-compiler-dev mailing list