aboutsummaryrefslogtreecommitdiff
path: root/sim
diff options
context:
space:
mode:
Diffstat (limited to 'sim')
-rw-r--r--sim/mn10300/ChangeLog5
-rw-r--r--sim/mn10300/simops.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/sim/mn10300/ChangeLog b/sim/mn10300/ChangeLog
index 8a488e6..ab8c87c 100644
--- a/sim/mn10300/ChangeLog
+++ b/sim/mn10300/ChangeLog
@@ -1,3 +1,8 @@
+Tue Jan 21 15:03:04 1997 Jeffrey A Law (law@cygnus.com)
+
+ * simops.c: Undo last change to "rol" and "ror", original code
+ was correct!
+
Thu Jan 16 11:28:14 1997 Jeffrey A Law (law@cygnus.com)
* simops.c: Fix "rol" and "ror".
diff --git a/sim/mn10300/simops.c b/sim/mn10300/simops.c
index 26146a1..caa2d75 100644
--- a/sim/mn10300/simops.c
+++ b/sim/mn10300/simops.c
@@ -2219,7 +2219,7 @@ void OP_F284 (insn, extension)
c = (value & 0x1);
value >>= 1;
- value |= (c) ? 0x80000000 : 0;
+ value |= ((PSW & PSW_C) != 0) ? 0x80000000 : 0;
State.regs[REG_D0 + REG0 (insn)] = value;
z = (value == 0);
n = (value & 0x80000000) != 0;
@@ -2238,7 +2238,7 @@ void OP_F280 (insn, extension)
c = (value & 0x80000000) ? 1 : 0;
value <<= 1;
- value |= c;
+ value |= ((PSW & PSW_C) != 0);
State.regs[REG_D0 + REG0 (insn)] = value;
z = (value == 0);
n = (value & 0x80000000) != 0;