RFR: 8287794: Reverse*VNode::Identity problem

Xiaohong Gong xgong at openjdk.org
Mon Jul 25 04:03:51 UTC 2022


On Sat, 23 Jul 2022 17:39:27 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

> Hi All,
> 
> - This bug fix patch fixes a missing case during reverse[bits|bytes] identity transformation.
> - Unlike AARCH64(SVE), X86(AVX512) ISA has no direct instruction to reverse[bits|bytes] of a vector lane hence a predicated operation is supported through blend instruction.
> - New IR framework based tests has been added to test transforms relevant to AVX2, AVX512 and SVE.
> 
> Kindly review and share your feedback.
> 
> Best Regards,
> Jatin

src/hotspot/share/opto/vectornode.cpp line 1857:

> 1855:   if (n->is_predicated_using_blend()) {
> 1856:     return n;
> 1857:   }

The change in this patch looks fine to me! Just a concern the previous codes, for patterns like:

VectorBlend X (ReverseBytesV (ReverseBytesV Y)) MASK

we will miss the transformation to:

VectorBlend X Y MASK

right? Thanks!

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

PR: https://git.openjdk.org/jdk/pull/9623


More information about the hotspot-compiler-dev mailing list