Browse Source

Check Mode not Bank in order to determine rocesor mode.

dberlin-typesystem-branch
Nick Clifton 26 years ago
parent
commit
dac07255f9
  1. 5
      sim/arm/ChangeLog
  2. 3
      sim/arm/armsupp.c

5
sim/arm/ChangeLog

@ -1,3 +1,8 @@
2001-05-08 Jens-Christian Lache <lache@tu-harburg.de>
* armsupp.c (ARMul_FixCPSR): Check Mode not Bank in order to
determine rocesor mode.
2001-04-18 matthew green <mrg@redhat.com>
* armcopro.c (write_cp15_reg): Set CHANGEMODE if endianness changes.

3
sim/arm/armsupp.c

@ -206,7 +206,8 @@ void
ARMul_FixCPSR (ARMul_State * state, ARMword instr, ARMword rhs)
{
state->Cpsr = ARMul_GetCPSR (state);
if (state->Bank != USERBANK)
if (state->Mode != USER26MODE
&& state->Mode != USER32MODE)
{ /* In user mode, only write flags */
if (BIT (16))
SETPSR_C (state->Cpsr, rhs);

Loading…
Cancel
Save