Encoding:

POOL32S

010110

rt

rs

rd

0

DADD

100010000

6

5

5

5

2

9

Format:

DADD rd, rs, rt

microMIPS64

Doubleword Add

Purpose:

Doubleword Add

To add 64-bit integers. If overflow occurs, then trap.

Description:

 GPR[rd] = GPR[rs] + GPR[rt]

The 64-bit doubleword value in GPR rt is added to the 64-bit value in GPR rs to produce a 64-bit result. If the addition results in 64-bit 2's complement arithmetic overflow, then the destination register is not modified and an Integer

Overflow exception occurs. If it does not overflow, the 64-bit result is placed into GPR rd.

Restrictions:

Operation:

temp = (GPR[rs]63||GPR[rs]) + (GPR[rt]63||GPR[rt])
if (temp64 != temp63) then
   SignalException(IntegerOverflow)
else
   GPR[rd] = temp63..0
endif

Exceptions:

Integer Overflow, Reserved Instruction

Programming Notes:

DADDU performs the same arithmetic operation but does not trap on overflow.