Non-Confidential | ![]() | ARM DUI0375E | ||
| ||||
Home > ARMv6 SIMD Instruction Intrinsics > __shadd8 intrinsic |
This intrinsic inserts a SHADD8
instruction into the instruction stream generated by the compiler.
unsigned int __shadd8(unsigned int val1
, unsigned int val2
)
val1
val2
__shadd8
intrinsic returns:unsigned int add_and_halve(unsigned int val1, unsigned int val2) { unsigned int res; res = __shadd8(val1,val2); /* res[7:0] = (val1[7:0] + val2[7:0]) >> 1 res[15:8] = (val1[15:8] + val2[15:8]) >> 1 res[23:16] = (val1[23:16] + val2[23:16]) >> 1 res[31:24] = (val1[31:24] + val2[31:24]) >> 1 */ return res; }