* simops.c: Fix return address computation for "call" instructions.

This commit is contained in:
Jeff Law 1997-06-10 18:32:40 +00:00
parent a5f269e919
commit 0a8fa63cb8
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,11 @@
Tue Jun 10 12:31:32 1997 Jeffrey A Law (law@cygnus.com)
* simops.c: Fix return address computation for "call" instructions.
Thu May 22 01:43:11 1997 Jeffrey A Law (law@cygnus.com)
* interp.c (sim_open): Fix typo.
Wed May 21 23:27:58 1997 Jeffrey A Law (law@cygnus.com)
* interp.c (sim_resume): Add missing case in big switch

View File

@ -2535,7 +2535,7 @@ void OP_CD000000 (insn, extension)
unsigned long mask;
sp = State.regs[REG_SP];
next_pc = State.regs[REG_PC] + 2;
next_pc = State.regs[REG_PC] + 5;
State.mem[sp] = next_pc & 0xff;
State.mem[sp+1] = (next_pc & 0xff00) >> 8;
State.mem[sp+2] = (next_pc & 0xff0000) >> 16;
@ -2601,7 +2601,7 @@ void OP_DD000000 (insn, extension)
unsigned long mask;
sp = State.regs[REG_SP];
next_pc = State.regs[REG_PC] + 2;
next_pc = State.regs[REG_PC] + 7;
State.mem[sp] = next_pc & 0xff;
State.mem[sp+1] = (next_pc & 0xff00) >> 8;
State.mem[sp+2] = (next_pc & 0xff0000) >> 16;