Sadd, Add two signed integers with saturation sadd – Texas Instruments TMS320C67X/C67X+ DSP User Manual
Page 265
Add Two Signed Integers With Saturation
SADD
3-205
Instruction Set
SPRU733
Add Two Signed Integers With Saturation
SADD
Syntax
SADD (.unit) src1, src2, dst
.unit = .L1 or .L2
Compatibility
C62x, C64x, C67x, and C67x+ CPU
Opcode
31
29
28
27
23
22
18
17
13
12
11
5
4
3
2
1
0
creg
z
dst
src2
src1
x
op
1 1 0 s p
3
1
5
5
5
1
7
1
1
Opcode map field used...
For operand type...
Unit
Opfield
src1
src2
dst
sint
xsint
sint
.L1, .L2
001 0011
src1
src2
dst
xsint
slong
slong
.L1, .L2
011 0001
src1
src2
dst
scst5
xsint
sint
.L1, .L2
001 0010
src1
src2
dst
scst5
slong
slong
.L1, .L2
011 0000
Description
src1 is added to src2 and saturated, if an overflow occurs according to the
following rules:
1) If the dst is an int and src1 + src2 > 2
31
− 1, then the result is 2
31
− 1.
2) If the dst is an int and src1 + src2 < −2
31
, then the result is −2
31
.
3) If the dst is a long and src1 + src2 > 2
39
− 1, then the result is 2
39
− 1.
4) If the dst is a long and src1 + src2 < −2
39
, then the result is −2
39
.
The result is placed in dst. If a saturate occurs, the SAT bit in the control status
register (CSR) is set one cycle after dst is written.
Execution
if (cond)
src1 +s src2
→
dst
else nop