mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-26 19:44:11 +08:00
Tweak.
This commit is contained in:
parent
0f7d73858c
commit
ee61616c43
@ -2209,6 +2209,8 @@
|
||||
"add"
|
||||
*am33
|
||||
{
|
||||
int z, c, n, v;
|
||||
unsigned long sum;
|
||||
int srcreg1, srcreg2, dstreg;
|
||||
|
||||
PC = cia;
|
||||
@ -2234,7 +2236,18 @@
|
||||
else
|
||||
dstreg = REG_E0 + RD0;
|
||||
|
||||
genericAdd3 (State.regs[srcreg1], State.regs[srcreg2], dstreg);
|
||||
sum = source1 + source2;
|
||||
State.regs[dstreg] = sum;
|
||||
|
||||
z = (sum == 0);
|
||||
n = (sum & 0x80000000);
|
||||
c = (sum < source1) || (sum < source2);
|
||||
v = ((source1 & 0x80000000) == (source2 & 0x80000000)
|
||||
&& (source1 & 0x80000000) != (sum & 0x80000000));
|
||||
|
||||
PSW &= ~(PSW_Z | PSW_N | PSW_C | PSW_V);
|
||||
PSW |= ((z ? PSW_Z : 0) | ( n ? PSW_N : 0)
|
||||
| (c ? PSW_C : 0) | (v ? PSW_V : 0));
|
||||
}
|
||||
|
||||
// 1111 1101 1101 1000 Rn Rn IMM32; cmp imm24,Rn
|
||||
|
Loading…
Reference in New Issue
Block a user