RFR: 8264018: AArch64: NEON loadV2 and storeV2 addressing is wrong

Ningsheng Jian njian at openjdk.java.net
Wed Mar 24 10:35:41 UTC 2021


On Wed, 24 Mar 2021 10:26:39 GMT, Andrew Dinn <adinn at openjdk.org> wrote:

>> AArch64 c2 loadV2 and storeV2 are used for Vector API mask value load/store with size of halfword. Their load/store immediate offset should be similar to other vector load/store, e.g. loadV4/storeV4, valid only for unscaled signed offset of imm9 or scaled unsigned offset of imm12:scale. This patch also groups other loadVs/storeVs together in the ad file.
>> 
>> Verified with tier1 and jtreg vector api cases, though I cannot reproduce this issue.
>
> Looks good.

> I admire your decision to tidy up the files, but I can't easily see what exactly has changed.

I should explain the change in my PR comment better. I have two commits in this PR, the first commit is the main change to fix the issue, which adds vmem2 opclass for loadv2 and storev2, as their imm address ranges should be different from others. The second commit is the code tidy up.

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

PR: https://git.openjdk.java.net/jdk/pull/3168


More information about the hotspot-compiler-dev mailing list