[vectorIntrinsics] RFR: 8253585: Add basic vector mask implementation for Arm SVE [v2]
Wang Huang
whuang at openjdk.java.net
Wed Nov 4 09:20:06 UTC 2020
On Wed, 4 Nov 2020 04:04:08 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:
>> Summary: Add the SVE match rule support for vector mask ops.
>>
>> ======
>>
>> Currently the vector mask related operations like vector mask load/store, vector mask compare and vector blend are not supported for Arm SVE. This patch adds the basic backend implementation for them.
>>
>> BTW, this is a basic version for vector mask operations that does not use the SVE predicate features. And we will make it happen in future.
>
> Xiaohong Gong has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit:
>
> 8253585: Add basic vector mask implementation for Arm SVE
src/hotspot/cpu/aarch64/aarch64_sve.ad line 1200:
> 1198: n->in(1)->bottom_type()->is_vect()->element_basic_type() == T_BOOLEAN);
> 1199: match(Set dst (VectorLoadMask (LoadVector mem)));
> 1200: ins_cost(SVE_COST);
2 * SVE_COST?
src/hotspot/cpu/aarch64/aarch64_sve.ad line 1220:
> 1218: match(Set mem (StoreVector mem (VectorStoreMask src size)));
> 1219: effect(TEMP tmp);
> 1220: ins_cost(SVE_COST);
2 * SVE_COST ?
src/hotspot/cpu/aarch64/aarch64-asmtest.py line 1482:
> 1480: ])
> 1481:
> 1482: generate(SpecialCases, [["ccmn", "__ ccmn(zr, zr, 3u, Assembler::LE);", "ccmn\txzr, xzr, #3, LE"],
extra space ?
-------------
PR: https://git.openjdk.java.net/panama-vector/pull/20
More information about the panama-dev
mailing list