From: Petar Jovanovic <pet...@mips.com> compute_hflags() will reset DSP h-flags, so MX bit should be initially set for usermode in cpu_state_reset() if DSP ASE is implemented. This change will bring back user-mode support for DSP ASE, since one of the recent changes broke it.
Signed-off-by: Petar Jovanovic <pet...@mips.com> --- target-mips/translate.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/target-mips/translate.c b/target-mips/translate.c index 206ba83..0443704 100644 --- a/target-mips/translate.c +++ b/target-mips/translate.c @@ -15933,10 +15933,8 @@ void cpu_state_reset(CPUMIPSState *env) if (env->CP0_Config1 & (1 << CP0C1_FP)) { env->CP0_Status |= (1 << CP0St_CU1); } - if (env->cpu_model->insn_flags & ASE_DSPR2) { - env->hflags |= MIPS_HFLAG_DSP | MIPS_HFLAG_DSPR2; - } else if (env->cpu_model->insn_flags & ASE_DSP) { - env->hflags |= MIPS_HFLAG_DSP; + if (env->CP0_Config3 & (1 << CP0C3_DSPP)) { + env->CP0_Status |= (1 << CP0St_MX); } #else if (env->hflags & MIPS_HFLAG_BMASK) { -- 1.7.5.4