diff options
author | Nathan Froyd <froydnj@codesourcery.com> | 2010-06-08 13:30:03 -0700 |
---|---|---|
committer | Aurelien Jarno <aurelien@aurel32.net> | 2010-06-09 16:10:51 +0200 |
commit | aecf13769852a4e14b51e8403860b18871826298 (patch) | |
tree | d24306bb1f1dc5d2bdd1a72f18566440bed31582 | |
parent | 0fddbbf2559579ab6274c50819001f4eb9896b2a (diff) |
hw: honor low bit in mipssim machine
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
-rw-r--r-- | hw/mips_mipssim.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/hw/mips_mipssim.c b/hw/mips_mipssim.c index a747de596c..293d99ebee 100644 --- a/hw/mips_mipssim.c +++ b/hw/mips_mipssim.c @@ -106,7 +106,10 @@ static void main_cpu_reset(void *opaque) CPUState *env = s->env; cpu_reset(env); - env->active_tc.PC = s->vector; + env->active_tc.PC = s->vector & ~(target_ulong)1; + if (s->vector & 1) { + env->hflags |= MIPS_HFLAG_M16; + } } static void |