On Wed, 7 May 2025 10:24:14 GMT, erifan <d...@openjdk.org> wrote: >> src/hotspot/share/opto/vectornode.cpp line 2231: >> >>> 2229: } >>> 2230: if (in1->Opcode() != Op_VectorMaskCmp || in1->outcnt() > 1 || >>> 2231: !((VectorMaskCmpNode*) in1)->predicate_can_be_inverted() || >> >> Do you plan to extend your testcase / matching logic to cover following >> equivalent patterns: >> >> - compare.xor(maskAll(true)) >> - compare.xor(VectorMask.fromLong(SPECIES, -1L)) > > Hi @jatin-bhateja It is feasible. But I was thinking about whether another > solution would be better, which is to turn `VectorMask.fromLong(SPECIES, > -1L)` into `MaskAll(true)` in the mid-end. In this way, we don't need to > check this pattern in this optimization. What do you think ?
Yes, that's the right approach. For this PR, I think you can mix some test points covering compare, xor(maskAll(true)). ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/24674#discussion_r2077373581