Skip to content

Commit 7e53c9e

Browse files
committed
Add alpha support for 9.7 shift right narrow intrinsics
This change adds support for new svqshrn, svqshrun operations under FEAT_SVE2p3 and FEAT_SME2p3.
1 parent ac64193 commit 7e53c9e

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

main/acle.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -501,6 +501,8 @@ Armv8.4-A [[ARMARMv84]](#ARMARMv84). Support is added for the Dot Product intrin
501501
* Added [**Alpha**](#current-status-and-anticipated-changes)
502502
support for SVE2.3 (FEAT_SVE2p3) and SME2.3 absolute difference accumulation
503503
intrinsics.
504+
* Added [**Alpha**](#current-status-and-anticipated-changes)
505+
support for SVE2.3 (FEAT_SVE2p3) and SME2.3 shift right narrow intrinsics.
504506

505507
### References
506508

@@ -13640,6 +13642,7 @@ Multi-vector saturating rounding shift right narrow and interleave
1364013642

1364113643
``` c
1364213644
// Variants are also available for _u16[_u32_x2]
13645+
// and also _s8[_s16_x2] and _u8[_u16_x2] if __ARM_FEATURE_SVE2p3 || __ARM_FEATURE_SME2p3.
1364313646
svint16_t svqrshrn[_n]_s16[_s32_x2](svint32x2_t zn, uint64_t imm);
1364413647
```
1364513648

@@ -13648,6 +13651,7 @@ Multi-vector saturating rounding shift right narrow and interleave
1364813651
Multi-vector saturating rounding shift right unsigned narrow and interleave
1364913652

1365013653
``` c
13654+
// Variant for _u8[_s16_x2] is available if __ARM_FEATURE_SVE2p3 || __ARM_FEATURE_SME2p3.
1365113655
svuint16_t svqrshrun[_n]_u16[_s32_x2](svint32x2_t zn, uint64_t imm);
1365213656
```
1365313657

@@ -14023,6 +14027,24 @@ Integer convert to floating-point (top and bottom).
1402314027
svfloat16_t svcvtb_f16[_s8](svint8_t zn);
1402414028
```
1402514029

14030+
#### SQSHRN, UQSHRN
14031+
14032+
Multi-vector saturating shift right narrow and interleave.
14033+
14034+
``` c
14035+
// Variants are also available for _s8[_s16_x2], _u16[_u32_x2] and _u8[_u16_x2].
14036+
svint16_t svqshrn[_n]_s16[_s32_x2](svint32x2_t zn, uint64_t imm);
14037+
```
14038+
14039+
#### SQSHRUN
14040+
14041+
Signed saturating shift right narrow by immediate to interleaved unsigned integer.
14042+
14043+
``` c
14044+
// Variant for _u8[_s16_x2] is also available.
14045+
svuint16_t svqshrun[_n]_u16[_s32_x2](svint32x2_t zn, uint64_t imm);
14046+
```
14047+
1402614048
#### SUBP
1402714049

1402814050
Subtract pairwise.

0 commit comments

Comments
 (0)