Synopsis
int __smlsd(int16x2 val1,
int16x2 val2,
int val3);
Description
__smlsd inserts a SMLSD instruction. __smlsd returns the equivalent of
- res = val1[0] * val2[0] - val1[1] * val2[1] + val3
where [0] is the lower 16 bits and [1] is the upper 16 bits.
This operation sets the Q flag if overflow occurs on the addition.