From: Edgar E. Iglesias Date: Mon, 7 Jun 2010 09:54:27 +0000 (+0200) Subject: microblaze: Make MSR_UM and MSR_VM part of the tb flags X-Git-Tag: v0.13.0-rc0~352 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fd1dc858370d9a9ac7ea2512812c3a152ee6484b;p=thirdparty%2Fqemu.git microblaze: Make MSR_UM and MSR_VM part of the tb flags Signed-off-by: Edgar E. Iglesias --- diff --git a/target-microblaze/cpu.h b/target-microblaze/cpu.h index 33167977f2d..ff8c8c8a802 100644 --- a/target-microblaze/cpu.h +++ b/target-microblaze/cpu.h @@ -217,8 +217,7 @@ typedef struct CPUMBState { #define DRTB_FLAG (1 << 18) #define D_FLAG (1 << 19) /* Bit in ESR. */ /* TB dependant CPUState. */ -#define IFLAGS_TB_MASK (D_FLAG | IMM_FLAG | DRTI_FLAG \ - | DRTE_FLAG | DRTB_FLAG | MSR_EE_FLAG) +#define IFLAGS_TB_MASK (D_FLAG | IMM_FLAG | DRTI_FLAG | DRTE_FLAG | DRTB_FLAG) uint32_t iflags; struct { @@ -323,8 +322,8 @@ static inline void cpu_get_tb_cpu_state(CPUState *env, target_ulong *pc, { *pc = env->sregs[SR_PC]; *cs_base = 0; - env->iflags |= env->sregs[SR_MSR] & MSR_EE; - *flags = env->iflags & IFLAGS_TB_MASK; + *flags = (env->iflags & IFLAGS_TB_MASK) | + (env->sregs[SR_MSR] & (MSR_UM | MSR_VM | MSR_EE)); } #if !defined(CONFIG_USER_ONLY)