On Sat, Oct 22, 2011 at 4:36 PM, Andreas Färber <andreas.faer...@web.de>wrote:

> Am 22.10.2011 12:11, schrieb kha...@kics.edu.pk:
> > From: Khansa Butt <kha...@kics.edu.pk>
>
> Commit message should mention here at least that new registers are
> introduced and that load/save format is being changed.
>
> > Signed-off-by: Khansa Butt <kha...@kics.edu.pk>
> > Signed-off-by: Ehsan Ul Haq <ehsan.ul...@kics.edu.pk>
> > Signed-off-by: Abdul Qadeer <qad...@kics.edu.pk>
> > Signed-off-by: Abdul Waheed <awah...@kics.edu.pk>
> > ---
>
> > diff --git a/target-mips/cpu.h b/target-mips/cpu.h
> > index 79e2558..9180ee9 100644
> > --- a/target-mips/cpu.h
> > +++ b/target-mips/cpu.h
> > @@ -173,6 +173,13 @@ struct TCState {
> >      target_ulong CP0_TCSchedule;
> >      target_ulong CP0_TCScheFBack;
> >      int32_t CP0_Debug_tcstatus;
> > +    /* Multiplier registers for Octeon */
> > +    target_ulong MPL0;
> > +    target_ulong MPL1;
> > +    target_ulong MPL2;
> > +    target_ulong P0;
> > +    target_ulong P1;
> > +    target_ulong P2;
> >  };
> >
> >  typedef struct CPUMIPSState CPUMIPSState;
>
> > diff --git a/target-mips/machine.c b/target-mips/machine.c
> > index be72b36..a274ce2 100644
> > --- a/target-mips/machine.c
> > +++ b/target-mips/machine.c
> > @@ -25,6 +25,12 @@ static void save_tc(QEMUFile *f, TCState *tc)
> >      qemu_put_betls(f, &tc->CP0_TCSchedule);
> >      qemu_put_betls(f, &tc->CP0_TCScheFBack);
> >      qemu_put_sbe32s(f, &tc->CP0_Debug_tcstatus);
> > +    qemu_put_betls(f, &tc->MPL0);
> > +    qemu_put_betls(f, &tc->MPL1);
>
> MPL2 is not being saved but loaded below.
>
> > +    qemu_put_betls(f, &tc->P0);
> > +    qemu_put_betls(f, &tc->P1);
> > +    qemu_put_betls(f, &tc->P2);
> > +
> >  }
> >
> >  static void save_fpu(QEMUFile *f, CPUMIPSFPUContext *fpu)
> > @@ -173,6 +179,12 @@ static void load_tc(QEMUFile *f, TCState *tc)
> >      qemu_get_betls(f, &tc->CP0_TCSchedule);
> >      qemu_get_betls(f, &tc->CP0_TCScheFBack);
> >      qemu_get_sbe32s(f, &tc->CP0_Debug_tcstatus);
> > +    qemu_get_betls(f, &tc->MPL0);
> > +    qemu_get_betls(f, &tc->MPL1);
> > +    qemu_get_betls(f, &tc->MPL2);
> > +    qemu_get_betls(f, &tc->P0);
> > +    qemu_get_betls(f, &tc->P1);
> > +    qemu_get_betls(f, &tc->P2);
> >  }
> >
> >  static void load_fpu(QEMUFile *f, CPUMIPSFPUContext *fpu)
>
> You're saving new fields, so you'll need to bump the version somewhere.
> For loading, since you're adding at the end, you might be able to make
> your additions conditional on the to-be-bumped version.
>

I 'm not able to understand " bump the version somewhere"  kindly
explain this.


>
> I'm wondering whether those register and serialization additions could
> and should be limited to TARGET_MIPS64.
>
> you want me to limit these registers to TARGET_OCTEON

Reply via email to