RFR: 8291809: Convert compiler/c2/cr7200264/TestSSE2IntVect.java to IR verification test [v2]

Emanuel Peter epeter at openjdk.org
Mon Jan 22 16:42:30 UTC 2024


On Thu, 18 Jan 2024 12:04:00 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> They are shifted by 32 bit, so maybe that creates something odd?
>
> I see this in the old code:
> `@summary 7192963 changes disabled shift vectors`

@dlunde Ok, you are right, these do not have any LShiftVI, but they vectorize none the less. The reason is that shifting an int by 32 bits is a no-op. `SHIFT` is a known constant at compile time. For a int-shift we only consider the lowest 5 bits, so shift by 32 is same as shift by 0.
Hence, I would now put a negative rule for `LSHIFT_VI`, but a posisitve for `LoadVector` and `StoreVector`.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/17428#discussion_r1462122237


More information about the hotspot-compiler-dev mailing list