[all-commits] [llvm/llvm-project] 6dc94c: [Clang][AArch64][SME] Add vector read/write (mova)...
Bryan Chan via All-commits
all-commits at lists.llvm.org
Thu Jul 20 02:57:48 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 6dc94c54e51f416d03c42e7d61624419e03a3af6
https://github.com/llvm/llvm-project/commit/6dc94c54e51f416d03c42e7d61624419e03a3af6
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2023-07-20 (Thu, 20 Jul 2023)
Changed paths:
M clang/include/clang/Basic/TargetBuiltins.h
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/Basic/arm_sve_sme_incl.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CodeGenFunction.h
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_read.c
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_write.c
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
M clang/utils/TableGen/SveEmitter.cpp
Log Message:
-----------
[Clang][AArch64][SME] Add vector read/write (mova) intrinsics
This patch adds support for the following SME ACLE intrinsics (as defined
in https://arm-software.github.io/acle/main/acle.html):
- svread_hor_za8[_s8]_m // also for u8
- svread_hor_za16[_s16]_m // also for u16, f16, bf16
- svread_hor_za32[_s32]_m // also for u32, f32
- svread_hor_za64[_s64]_m // also for u64, f64
- svread_hor_za128[_s8]_m // also for s16, s32, s64, u8, u16, u32, u64, bf16, f16, f32, f64
- svread_ver_za8[_s8]_m // also for u8
- svread_ver_za16[_s16]_m // also for u16, f16, bf16
- svread_ver_za32[_s32]_m // also for u32, f32
- svread_ver_za64[_s64]_m // also for u64, f64
- svread_ver_za128[_s8]_m // also for s16, s32, s64, u8, u16, u32, u64, bf16, f16, f32, f64
- svwrite_hor_za8[_s8]_m // also for u8
- svwrite_hor_za16[_s16]_m // also for u16, f16, bf16
- svwrite_hor_za32[_s32]_m // also for u32, f32
- svwrite_hor_za64[_s64]_m // also for u64, f64
- svwrite_hor_za128[_s8]_m // also for s16, s32, s64, u8, u16, u32, u64, bf16, f16, f32, f64
- svwrite_ver_za8[_s8]_m // also for u8
- svwrite_ver_za16[_s16]_m // also for u16, f16, bf16
- svwrite_ver_za32[_s32]_m // also for u32, f32
- svwrite_ver_za64[_s64]_m // also for u64, f64
- svwrite_ver_za128[_s8]_m // also for s16, s32, s64, u8, u16, u32, u64, bf16, f16, f32, f64
Co-authored-by: Sagar Kulkarni <sagar.kulkarni1 at huawei.com>
Reviewed By: sdesmalen, kmclaughlin
Differential Revision: https://reviews.llvm.org/D128648
Commit: 578b0bd4e621304a1ce367e87a53e59e404dec9b
https://github.com/llvm/llvm-project/commit/578b0bd4e621304a1ce367e87a53e59e404dec9b
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2023-07-20 (Thu, 20 Jul 2023)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/Basic/arm_sve_sme_incl.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Sema/SemaChecking.cpp
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_zero.c
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
Log Message:
-----------
[Clang][AArch64][SME] Add ZA zeroing intrinsics
This patch adds support for the following SME ACLE intrinsics (as defined
in https://arm-software.github.io/acle/main/acle.html):
- svzero_mask_za
- svzero_za
Co-authored-by: Sagar Kulkarni <sagar.kulkarni1 at huawei.com>
Reviewed By: sdesmalen
Differential Revision: https://reviews.llvm.org/D134677
Commit: f225898a7c6105aa34e64f9c7dbfed7ce3443331
https://github.com/llvm/llvm-project/commit/f225898a7c6105aa34e64f9c7dbfed7ce3443331
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2023-07-20 (Thu, 20 Jul 2023)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CodeGenFunction.h
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ldr.c
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
Log Message:
-----------
[Clang][AArch64][SME] Add intrinsics for ZA array load/store (LDR/STR)
This patch adds support for the following SME ACLE intrinsics (as defined
in https://arm-software.github.io/acle/main/acle.html):
- svldr_vnum_za
- svstr_vnum_za
Co-authored-by: Sagar Kulkarni <sagar.kulkarni1 at huawei.com>
Reviewed By: sdesmalen
Differential Revision: https://reviews.llvm.org/D134678
Commit: 15d16a79a01f4fac718556809ecd00914dd7d7a2
https://github.com/llvm/llvm-project/commit/15d16a79a01f4fac718556809ecd00914dd7d7a2
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2023-07-20 (Thu, 20 Jul 2023)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_cnt.c
Log Message:
-----------
[Clang][AArch64][SME] Add intrinsics for reading streaming vector length
This patch adds support for the following SME ACLE intrinsics (as defined
in https://arm-software.github.io/acle/main/acle.html):
- svcntsb
- svcntsh
- svcntsw
- svcntsd
Co-authored-by: Sagar Kulkarni <sagar.kulkarni1 at huawei.com>
Reviewed By: sdesmalen
Differential Revision: https://reviews.llvm.org/D134679
Commit: 4ae900c063634e19346b88913e28204a3fc47825
https://github.com/llvm/llvm-project/commit/4ae900c063634e19346b88913e28204a3fc47825
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2023-07-20 (Thu, 20 Jul 2023)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i32.c
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i64.c
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
Log Message:
-----------
[Clang][AArch64][SME] Add intrinsics for adding vector elements to ZA tile
This patch adds support for the following SME ACLE intrinsics (as defined
in https://arm-software.github.io/acle/main/acle.html):
- svaddha_za32[_u32]_m // also for s32
- svaddva_za32[_u32]_m // also for s32
- svaddha_za64[_u64]_m // also for s64
- svaddva_za64[_u64]_m // also for s64
The _za64 versions are available only when the sme-i16i64 feature is enabled.
Co-authored-by: Sagar Kulkarni <sagar.kulkarni1 at huawei.com>
Reviewed By: sdesmalen
Differential Revision: https://reviews.llvm.org/D134680
Commit: aebde82b29a80b2849e2b5b1b0030f598edee9a4
https://github.com/llvm/llvm-project/commit/aebde82b29a80b2849e2b5b1b0030f598edee9a4
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2023-07-20 (Thu, 20 Jul 2023)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za32.c
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za64.c
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za32.c
A clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za64.c
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
Log Message:
-----------
[Clang][AArch64][SME] Add outer product intrinsics
This patch adds support for the following SME ACLE intrinsics (as defined
in https://arm-software.github.io/acle/main/acle.html):
- svmopa_za32[_bf16]_m // also for s8, u8, f16, f32
- svmops_za32[_bf16]_m // also for s8, u8, f16, f32
- svsumopa_za32[_s8]_m
- svsumops_za32[_s8]_m
- svusmopa_za32[_u8]_m
- svusmops_za32[_u8]_m
When the sme-f64f64 feature is enabled, the following intrinsics are supported:
- svmopa_za64_f64_m
- svmops_za64_f64_m
When the sme-i16i64 feature is enabled, the following intrinsics are supported:
- svmopa_za64[_s16]_m // also for u16
- svmops_za64[_s16]_m // also for u16
- svsumopa_za64[_s16]_m
- svsumops_za64[_s16]_m
- svusmopa_za64[_u16]_m
- svusmops_za64[_u16]_m
Co-authored-by: Sagar Kulkarni <sagar.kulkarni1 at huawei.com>
Reviewed By: sdesmalen
Differential Revision: https://reviews.llvm.org/D134681
Commit: 2c38740ca661a10866a796db105752e15372ddce
https://github.com/llvm/llvm-project/commit/2c38740ca661a10866a796db105752e15372ddce
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2023-07-20 (Thu, 20 Jul 2023)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
A clang/test/Driver/aarch64-implied-sme-features.c
Log Message:
-----------
[Clang][AArch64][SME] Generate target features from +(no)sme.* options
Reviewed By: sdesmalen
Differential Revision: https://reviews.llvm.org/D142702
Compare: https://github.com/llvm/llvm-project/compare/697f60598ec3...2c38740ca661
More information about the All-commits
mailing list