target/ppc: Retain hflags_nmsr only for migration
We have eliminated all normal uses of hflags_nmsr. We need not even compute it except when we want to migrate. Rename the field to emphasize this. Remove the fixme comment for migrating access_type. This value is only ever used with the current executing instruction, and is never live when the cpu is halted for migration. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20210315184615.1985590-6-richard.henderson@linaro.org> Reviewed-by: Cédric Le Goater <clg@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
da77d2b037
commit
f7a7b6525c
@ -1105,8 +1105,8 @@ struct CPUPPCState {
|
||||
#endif
|
||||
|
||||
/* These resources are used only in QEMU core */
|
||||
target_ulong hflags; /* hflags is MSR & HFLAGS_MASK */
|
||||
target_ulong hflags_nmsr; /* specific hflags, not coming from MSR */
|
||||
target_ulong hflags;
|
||||
target_ulong hflags_compat_nmsr; /* for migration compatibility */
|
||||
int immu_idx; /* precomputed MMU index to speed up insn accesses */
|
||||
int dmmu_idx; /* precomputed MMU index to speed up data accesses */
|
||||
|
||||
|
@ -104,8 +104,6 @@ void hreg_compute_hflags(CPUPPCState *env)
|
||||
*/
|
||||
uint32_t le = extract32(env->spr[SPR_HID0], 3, 1);
|
||||
env->hflags |= le << MSR_LE;
|
||||
/* Retain for backward compatibility with migration. */
|
||||
env->hflags_nmsr = le << MSR_LE;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -310,6 +310,10 @@ static int cpu_pre_save(void *opaque)
|
||||
}
|
||||
}
|
||||
|
||||
/* Retain migration compatibility for pre 6.0 for 601 machines. */
|
||||
env->hflags_compat_nmsr = (env->flags & POWERPC_FLAG_HID0_LE
|
||||
? env->hflags & MSR_LE : 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -829,9 +833,8 @@ const VMStateDescription vmstate_ppc_cpu = {
|
||||
/* Supervisor mode architected state */
|
||||
VMSTATE_UINTTL(env.msr, PowerPCCPU),
|
||||
|
||||
/* Internal state */
|
||||
VMSTATE_UINTTL(env.hflags_nmsr, PowerPCCPU),
|
||||
/* FIXME: access_type? */
|
||||
/* Backward compatible internal state */
|
||||
VMSTATE_UINTTL(env.hflags_compat_nmsr, PowerPCCPU),
|
||||
|
||||
/* Sanity checking */
|
||||
VMSTATE_UINTTL_TEST(mig_msr_mask, PowerPCCPU, cpu_pre_2_8_migration),
|
||||
|
Loading…
Reference in New Issue
Block a user