From fcfaf40d78bb2ce2212b9dcdec77a6aab2104db1 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Mon, 2 Dec 1996 19:35:55 +0000 Subject: [PATCH] * simops.c: Fix "mov imm8,an" and "mov imm16,dn". Fixes 80 or so c-torture execution failures. 400 to go. --- sim/mn10300/ChangeLog | 4 ++++ sim/mn10300/simops.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sim/mn10300/ChangeLog b/sim/mn10300/ChangeLog index f191d159458..7695f4fc7d9 100644 --- a/sim/mn10300/ChangeLog +++ b/sim/mn10300/ChangeLog @@ -1,3 +1,7 @@ +Mon Dec 2 12:31:40 1996 Jeffrey A Law (law@cygnus.com) + + * simops.c: Fix "mov imm8,an" and "mov imm16,dn". + Sun Dec 1 16:05:42 1996 Jeffrey A Law (law@cygnus.com) * simops.c: Fix overflow computation for many instructions. diff --git a/sim/mn10300/simops.c b/sim/mn10300/simops.c index abb5b0cd562..217cd16101c 100644 --- a/sim/mn10300/simops.c +++ b/sim/mn10300/simops.c @@ -89,7 +89,7 @@ void OP_F1D0 () /* mov imm8, an */ void OP_9000 () { - State.regs[REG_D0 + ((insn & 0x300) >> 8)] = insn & 0xff; + State.regs[REG_A0 + ((insn & 0x300) >> 8)] = insn & 0xff; } /* mov am, an */ @@ -445,7 +445,7 @@ void OP_2C0000 () unsigned long value; value = SEXT16 (insn & 0xffff); - State.regs[REG_A0 + ((insn & 0x30000) >> 16)] = value; + State.regs[REG_D0 + ((insn & 0x30000) >> 16)] = value; } /* mov imm32,dn */ -- 2.30.2