12.5 __qadd16 intrinsic
This intrinsic inserts a
QADD16 instruction into the instruction stream generated by the compiler.
you to perform two 16-bit integer arithmetic additions in parallel,
saturating the results to the 16-bit signed integer range -215 ≤ x ≤
215 - 1.
unsigned int __qadd16(unsigned int
, unsigned int
holds the first two 16-bit summands
holds the second two 16-bit summands.
__qadd16 intrinsic returns:
The returned results are saturated to the 16-bit signed integer
range -215 ≤ x ≤ 215 - 1.
unsigned int add_halfwords(unsigned int val1, unsigned int val2)
unsigned int res;
res = __qadd16(val1, val2); /* res[15:0] = val1[15:0] + val2[15:0]
res[16:31] = val1[31:16] + val2[31:16]