User`s guide

Inline Assembly Language and Intrinsics
Intrinsic Functions
148
Targeting MC56F83xx/DSP5685x Controllers
Example
short s1 = 0x4000; /* 0.5 */
short s2 = 0x2000; /* 0.25 */
short result;
result = add(s1,s2);
// Expected value of result: 0x6000 = 0.75
sub
Subtraction of two 16-bit integer or fractional values, returning a 16-bit result.
Assumptions
OMR’s SA bit was set to 1 at least 3 cycles before this code, that is, saturation on data
ALU results enabled.
Prototype
Word16 sub(Word16 src_dst, Word16 src2)
Example
short s1 = 0x4000; /* 0.5 */
short s2 = 0xE000; /* -0.25 */
short result;
result = sub(s1,s2);
// Expected value of result: 0x6000 = 0.75