On Wed, Aug 30, 2017 at 07:52:22PM -0300, Philippe Mathieu-Daudé wrote:
> Signed-off-by: Philippe Mathieu-Daudé
> Tested-by: Igor Mammedov
> Tested-by: James Hogan
> ---
> target/mips/cpu.c | 3 +++
> target/mips/translate.c | 1 -
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/target/mips/cpu.c b/target/mips/cpu.c
> index 68bf423e9d..e3ef835599 100644
> --- a/target/mips/cpu.c
> +++ b/target/mips/cpu.c
> @@ -123,6 +123,7 @@ static void mips_cpu_disas_set_info(CPUState *s,
> disassemble_info *info) {
> static void mips_cpu_realizefn(DeviceState *dev, Error **errp)
> {
> CPUState *cs = CPU(dev);
> +MIPSCPU *cpu = MIPS_CPU(dev);
> MIPSCPUClass *mcc = MIPS_CPU_GET_CLASS(dev);
> Error *local_err = NULL;
>
> @@ -132,6 +133,8 @@ static void mips_cpu_realizefn(DeviceState *dev, Error
> **errp)
> return;
> }
>
> +cpu_mips_realize_env(&cpu->env);
> +
This changes the order between cpu_mips_realize_env() and
cpu_exec_initfn(), but cpu_exec_initfn() don't have anything that
depends on cpu_mips_realize_env() being called first.
Reviewed-by: Eduardo Habkost
> cpu_reset(cs);
> qemu_init_vcpu(cs);
>
> diff --git a/target/mips/translate.c b/target/mips/translate.c
> index 5fc7979ac5..94c38e8755 100644
> --- a/target/mips/translate.c
> +++ b/target/mips/translate.c
> @@ -20535,7 +20535,6 @@ MIPSCPU *cpu_mips_init(const char *cpu_model)
> cpu = MIPS_CPU(object_new(TYPE_MIPS_CPU));
> env = &cpu->env;
> env->cpu_model = def;
> -cpu_mips_realize_env(env);
>
> object_property_set_bool(OBJECT(cpu), true, "realized", NULL);
>
> --
> 2.14.1
>
>
--
Eduardo