Format |
Syntax: |
Operation: |
Operands: |
Architecture revision |
Opcode | ||||||||||||
1 |
psubxh.sh Rd, Rx, Ry |
Rd[31:16] = ASR(SE(Rx[31:16], 17) - SE(Ry[15:0], 17), 1); Rd[15:0] = ASR(SE(Rx[15:0], 17) - SE(Ry[31:16], 17), 1); |
{d, x, y} ∈ {0, 1, …, 15} |
Rev1+ |
|
Subtract the bottom halfword of Ry from the top halfword of Rx and the top halfword of Ry from the bottom halfword of Rx. The resulting halfwords are halved in order to avoid any overflow and then packed together in the destination register.
Q: |
Not affected. |
V: |
Not affected. |
N: |
Not affected. |
Z: |
Not affected. |
C: |
Not affected. |