All ARM DSP instructions are supported as intrinsic functions. To use the ARM DSP intrinsics, include the armintr.h header.
The following ARM DSP Instructions have intrinsic functions defined for them.
| Function | Corresponding ARM DSP instruction | Description |
|---|---|---|
| _SmulAddLo_SW_SL | SMLAxy | A signed-integer multiply and accumulate operation: 16x16-bit multiply followed by a 32-bit add. |
| _SmulAddWLo_SW_SL | SMLAWy | A 32x16-bit multiply operation, followed by a 32-bit add of the upper 32 bits of the 48 bit product. |
| _SmulAddHi_SW_SQ | SMLALxy | A 16x16-bit multiply operation, followed by a 64-bit add of the product, with a 64-bit integer. |
| _SmulLo_SW_SL | SMULxy | A signed-integer 16x16-bit multiply operation. |
| _SmulWLo_SW_SL | SMULWy | A signed-integer 32x16-bit multiply operation, returning the upper 32-bits. |
| _AddSatInt | QADD | A saturating add instruction. |
| _SubSatInt | QSUB | A saturating subtract instruction. |
| _DAddSatInt | QDADD | An instruction to double an integer and saturate, and then add to a second integer and saturate. |
| _DSubSatInt | QDSUB | An instruction to double an integer and saturate, and then subtract from a second integer and saturate. |
| _ReadCoProcessor | MRRC | An operation to transfer values from a coprocessor to two ARM registers. |
| _WriteCoProcessor | MCRR | An operation to transfer two ARM register values to a coprocessor. |
See Also
ARM10 Intrinsic Functions | ARM XSCALE Intrinsic Functions
Send Feedback on this topic to the authors