diff options
| author | Leon Alrae | 2015-07-14 12:08:13 +0200 |
|---|---|---|
| committer | Leon Alrae | 2015-07-15 15:07:25 +0200 |
| commit | fe87c2b36ae9c1c9a5279f3891f3bce1b573baa0 (patch) | |
| tree | 8551e02eaa3bd9427dcf916a077070acf9282335 /target-mips | |
| parent | target-mips: fix ASID synchronisation for MIPS MT (diff) | |
| download | qemu-fe87c2b36ae9c1c9a5279f3891f3bce1b573baa0.tar.gz qemu-fe87c2b36ae9c1c9a5279f3891f3bce1b573baa0.tar.xz qemu-fe87c2b36ae9c1c9a5279f3891f3bce1b573baa0.zip | |
target-mips: correct DERET instruction
Fix Debug Mode flag clearing, and when DERET is placed between LL and SC
do not make SC fail.
Signed-off-by: Leon Alrae <leon.alrae@imgtec.com>
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Diffstat (limited to 'target-mips')
| -rw-r--r-- | target-mips/op_helper.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/target-mips/op_helper.c b/target-mips/op_helper.c index d457a29f3e..9c28631dc1 100644 --- a/target-mips/op_helper.c +++ b/target-mips/op_helper.c @@ -2154,10 +2154,9 @@ void helper_deret(CPUMIPSState *env) debug_pre_eret(env); set_pc(env, env->CP0_DEPC); - env->hflags &= MIPS_HFLAG_DM; + env->hflags &= ~MIPS_HFLAG_DM; compute_hflags(env); debug_post_eret(env); - env->lladdr = 1; } #endif /* !CONFIG_USER_ONLY */ |
