mirror of https://gitee.com/openkylin/qemu.git
target/mips: Extract cpu_supports*/cpu_set* translate.c
Move cpu_supports*() and cpu_set_exception_base() from translate.c to cpu.c. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20201206233949.3783184-9-f4bug@amsat.org>
This commit is contained in:
parent
07741e6754
commit
ffa657ee70
|
@ -315,3 +315,21 @@ bool cpu_supports_isa(const CPUMIPSState *env, uint64_t isa_mask)
|
|||
{
|
||||
return (env->cpu_model->insn_flags & isa_mask) != 0;
|
||||
}
|
||||
|
||||
bool cpu_type_supports_isa(const char *cpu_type, uint64_t isa)
|
||||
{
|
||||
const MIPSCPUClass *mcc = MIPS_CPU_CLASS(object_class_by_name(cpu_type));
|
||||
return (mcc->cpu_def->insn_flags & isa) != 0;
|
||||
}
|
||||
|
||||
bool cpu_type_supports_cps_smp(const char *cpu_type)
|
||||
{
|
||||
const MIPSCPUClass *mcc = MIPS_CPU_CLASS(object_class_by_name(cpu_type));
|
||||
return (mcc->cpu_def->CP0_Config3 & (1 << CP0C3_CMGCR)) != 0;
|
||||
}
|
||||
|
||||
void cpu_set_exception_base(int vp_index, target_ulong address)
|
||||
{
|
||||
MIPSCPU *vp = MIPS_CPU(qemu_get_cpu(vp_index));
|
||||
vp->env.exception_base = address;
|
||||
}
|
||||
|
|
|
@ -31766,24 +31766,6 @@ void cpu_mips_realize_env(CPUMIPSState *env)
|
|||
mvp_init(env);
|
||||
}
|
||||
|
||||
bool cpu_type_supports_cps_smp(const char *cpu_type)
|
||||
{
|
||||
const MIPSCPUClass *mcc = MIPS_CPU_CLASS(object_class_by_name(cpu_type));
|
||||
return (mcc->cpu_def->CP0_Config3 & (1 << CP0C3_CMGCR)) != 0;
|
||||
}
|
||||
|
||||
bool cpu_type_supports_isa(const char *cpu_type, uint64_t isa)
|
||||
{
|
||||
const MIPSCPUClass *mcc = MIPS_CPU_CLASS(object_class_by_name(cpu_type));
|
||||
return (mcc->cpu_def->insn_flags & isa) != 0;
|
||||
}
|
||||
|
||||
void cpu_set_exception_base(int vp_index, target_ulong address)
|
||||
{
|
||||
MIPSCPU *vp = MIPS_CPU(qemu_get_cpu(vp_index));
|
||||
vp->env.exception_base = address;
|
||||
}
|
||||
|
||||
void cpu_state_reset(CPUMIPSState *env)
|
||||
{
|
||||
CPUState *cs = env_cpu(env);
|
||||
|
|
Loading…
Reference in New Issue