diff options
author | CarolineConcatto <51754594+CarolineConcatto@users.noreply.github.com> | 2023-11-21 10:08:57 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-21 10:08:57 +0000 |
commit | c77d79b6fe6aa55ef50a3b828581068a21dce71d (patch) | |
tree | b56cea96e85264ca093490902fafc7795b513010 /llvm/lib/CodeGen/MachineSink.cpp | |
parent | 19cdc0a13480806e474de6a7e6e200b1eccc7a13 (diff) | |
download | llvm-c77d79b6fe6aa55ef50a3b828581068a21dce71d.zip llvm-c77d79b6fe6aa55ef50a3b828581068a21dce71d.tar.gz llvm-c77d79b6fe6aa55ef50a3b828581068a21dce71d.tar.bz2 |
[SVE2.1][Clang][LLVM]Add 128bits builtin in Clang and LLVM intrinisc (#71930)
This patch implements the builtins in Clang
and the LLVM-IR intrinsic for the following:
EXTQ
// Variants are also available for:
// _s8, _s16, _u16, _s32, _u32, _s64, _u64
// _bf16, _f16, _f32, _f64
svuint8_t svextq_lane[_u8](svuint8_t zdn, svuint8_t zm, uint64_t imm);
TBLQ and TBXQ
// Variants are also available for:
// _u8, _u16, _s16, _u32, _s32, _u64, _s64
// _bf16, _f16, _f32, _f64
svint8_t svtblq[_s8](svint8_t zn, svuint8_t zm);
svint8_t svtbxq[_s8](svint8_t zn, svuint8_t zm);
UZPQ1, UZPQ2, ZIPQ1 and ZIPQ2
// Variants are also available for:
// _s8, _u16, _s16, _u32, _s32, _u64, _s64
// _bf16, _f16, _f32, _f64
svuint8_t svuzpq1[_u8](svuint8_t zn, svuint8_t zm); svuint8_t
svuzpq2[_u8](svuint8_t zn, svuint8_t zm); svuint8_t
svzipq1[_u8](svuint8_t zn, svuint8_t zm); svuint8_t
svzipq2[_u8](svuint8_t zn, svuint8_t zm);
PMOV
// Variants are available for:
// _s8, _u16, _s16, _s32, _u32, _s64, _u64
svbool_t svpmov_lane[_u8](svuint8_t zn, uint64_t imm); svbool_t
svpmov[_u8](svuint8_t zn); // The immediate is zero svuint8_t
svpmov_u8_z(svbool_t pn); // The immediate is zero
// Variants are available for:
// _s16, _s32, _u32, _s64, _u64
svuint16_t svpmov_lane[_u16]_m(svuint16_t zd, svbool_t pn, uint64_t
imm);
According to the PR#257[1]
[1]ARM-software/acle#257
Co-authored-by: Hassnaa Hamdi <hassnaa.hamdi@arm.com>
Diffstat (limited to 'llvm/lib/CodeGen/MachineSink.cpp')
0 files changed, 0 insertions, 0 deletions