[vectorIntrinsics+mask] RFR: 8266287: Basic mask IR implementation for the Vector API masking feature support [v3]
Xiaohong Gong
xgong at openjdk.java.net
Mon Jun 21 09:56:40 UTC 2021
> Based on [1], this patch adds the C2 compiler mid-end changes for the masking feature support. It mainly contains:
> 1) Generation of the mask IRs for vector mask, including:
> - Mask generations, e.g. load/compare/maskAll
> - Mask operations, e.g. and/or/xor
> 2) Conversions between vector and mask after loading mask values from memory and before storing mask values into memory
> 3) Generation of the vector IRs which need the mask value as the control
> - The mask value is appended to the original vector node's input list
>
> With this change, the bottom type of the vector mask will be set to `"TypeVectMask"` if the platform supports the masking feature and the backend implementations are added.
>
> Note that this patch only contains the compiler mid-end changes. The backend implementations for SVE/AVX-512 will be in the
> followed-up patches.
>
> [1] https://github.com/openjdk/panama-vector/pull/57
Xiaohong Gong has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains five commits:
- Try to reuse the same vector mask IRs
- Merge branch panama-vector:vectorIntrinsics+mask' into JDK-8266287
- Use "Flag_is_predicated_vector" for masked vector nodes
- Merge branch 'vectorIntrinsics+mask'
- 8266287: Basic mask IR implementation for the Vector API masking feature support
-------------
Changes: https://git.openjdk.java.net/panama-vector/pull/78/files
Webrev: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=78&range=02
Stats: 307 lines in 15 files changed: 237 ins; 21 del; 49 mod
Patch: https://git.openjdk.java.net/panama-vector/pull/78.diff
Fetch: git fetch https://git.openjdk.java.net/panama-vector pull/78/head:pull/78
PR: https://git.openjdk.java.net/panama-vector/pull/78
More information about the panama-dev
mailing list