Available on ARM only.
Expand description
Β§References
- Section 8.5 β32-bit SIMD intrinsicsβ of ACLE
Intrinsics that could live here
- [x] __sel
- [ ] __ssat16
- [ ] __usat16
- [ ] __sxtab16
- [ ] __sxtb16
- [ ] __uxtab16
- [ ] __uxtb16
- [x] __qadd8
- [x] __qsub8
- [x] __sadd8
- [x] __shadd8
- [x] __shsub8
- [x] __ssub8
- [ ] __uadd8
- [ ] __uhadd8
- [ ] __uhsub8
- [ ] __uqadd8
- [ ] __uqsub8
- [x] __usub8
- [x] __usad8
- [x] __usada8
- [x] __qadd16
- [x] __qasx
- [x] __qsax
- [x] __qsub16
- [x] __sadd16
- [x] __sasx
- [x] __shadd16
- [ ] __shasx
- [ ] __shsax
- [x] __shsub16
- [ ] __ssax
- [ ] __ssub16
- [ ] __uadd16
- [ ] __uasx
- [ ] __uhadd16
- [ ] __uhasx
- [ ] __uhsax
- [ ] __uhsub16
- [ ] __uqadd16
- [ ] __uqasx
- [x] __uqsax
- [ ] __uqsub16
- [ ] __usax
- [ ] __usub16
- [x] __smlad
- [ ] __smladx
- [ ] __smlald
- [ ] __smlaldx
- [x] __smlsd
- [ ] __smlsdx
- [ ] __smlsld
- [ ] __smlsldx
- [x] __smuad
- [x] __smuadx
- [x] __smusd
- [x] __smusdx
MacrosΒ§
- dsp_
call π
FunctionsΒ§
- arm_
qadd8 π β - arm_
qadd16 π β - arm_
qasx π β - arm_
qsax π β - arm_
qsub8 π β - arm_
qsub16 π β - arm_
sadd8 π β - arm_
sadd16 π β - arm_
sasx π β - arm_sel π β
- arm_
shadd8 π β - arm_
shadd16 π β - arm_
shsub8 π β - arm_
shsub16 π β - arm_
smlad π β - arm_
smlsd π β - arm_
smuad π β - arm_
smuadx π β - arm_
smusd π β - arm_
smusdx π β - arm_
ssub8 π β - arm_
usad8 π β - arm_
usub8 π β - __qadd8β
Experimental - Saturating four 8-bit integer additions
- __
qadd16 βExperimental - Saturating two 16-bit integer additions
- __qasxβ
Experimental - Returns the 16-bit signed saturated equivalent of
- __qsaxβ
Experimental - Returns the 16-bit signed saturated equivalent of
- __qsub8β
Experimental - Saturating two 8-bit integer subtraction
- __
qsub16 βExperimental - Saturating two 16-bit integer subtraction
- __sadd8β
Experimental - Returns the 8-bit signed saturated equivalent of
- __
sadd16 βExperimental - Returns the 16-bit signed saturated equivalent of
- __sasxβ
Experimental - Returns the 16-bit signed equivalent of
- __selβ
Experimental - Select bytes from each operand according to APSR GE flags
- __
shadd8 βExperimental - Signed halving parallel byte-wise addition.
- __
shadd16 βExperimental - Signed halving parallel halfword-wise addition.
- __
shsub8 βExperimental - Signed halving parallel byte-wise subtraction.
- __
shsub16 βExperimental - Signed halving parallel halfword-wise subtraction.
- __smladβ
Experimental - Dual 16-bit Signed Multiply with Addition of products and 32-bit accumulation.
- __smlsdβ
Experimental - Dual 16-bit Signed Multiply with Subtraction of products and 32-bit accumulation and overflow detection.
- __smuadβ
Experimental - Signed Dual Multiply Add.
- __
smuadx βExperimental - Signed Dual Multiply Add Reversed.
- __smusdβ
Experimental - Signed Dual Multiply Subtract.
- __
smusdx βExperimental - Signed Dual Multiply Subtract Reversed.
- __ssub8β
Experimental - Inserts a
SSUB8
instruction. - __usad8β
Experimental - Sum of 8-bit absolute differences.
- __
usada8 βExperimental - Sum of 8-bit absolute differences and constant.
- __usub8β
Experimental - Inserts a
USUB8
instruction.
Type AliasesΒ§
- int8x4_
t Experimental - ARM-specific vector of four packed
i8
packed into a 32-bit integer. - int16x2_
t Experimental - ARM-specific vector of two packed
i16
packed into a 32-bit integer. - uint8x4_
t Experimental - ARM-specific vector of four packed
u8
packed into a 32-bit integer. - uint16x2_
t Experimental - ARM-specific vector of two packed
u16
packed into a 32-bit integer.