mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
Make MAXTL dynamic, bounds check tl when indexing
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4942 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
e7d05e6f1d
commit
c19148bd8f
4 changed files with 56 additions and 51 deletions
|
@ -72,7 +72,7 @@ void cpu_save(QEMUFile *f, void *opaque)
|
|||
qemu_put_be64s(f, &env->dtlb_tte[i]);
|
||||
}
|
||||
qemu_put_be32s(f, &env->mmu_version);
|
||||
for (i = 0; i < MAXTL; i++) {
|
||||
for (i = 0; i < MAXTL_MAX; i++) {
|
||||
qemu_put_be64s(f, &env->ts[i].tpc);
|
||||
qemu_put_be64s(f, &env->ts[i].tnpc);
|
||||
qemu_put_be64s(f, &env->ts[i].tstate);
|
||||
|
@ -103,7 +103,7 @@ void cpu_save(QEMUFile *f, void *opaque)
|
|||
qemu_put_be64s(f, &env->gsr);
|
||||
qemu_put_be32s(f, &env->gl);
|
||||
qemu_put_be64s(f, &env->hpstate);
|
||||
for (i = 0; i < MAXTL; i++)
|
||||
for (i = 0; i < MAXTL_MAX; i++)
|
||||
qemu_put_be64s(f, &env->htstate[i]);
|
||||
qemu_put_be64s(f, &env->hintp);
|
||||
qemu_put_be64s(f, &env->htba);
|
||||
|
@ -165,7 +165,7 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id)
|
|||
qemu_get_be64s(f, &env->dtlb_tte[i]);
|
||||
}
|
||||
qemu_get_be32s(f, &env->mmu_version);
|
||||
for (i = 0; i < MAXTL; i++) {
|
||||
for (i = 0; i < MAXTL_MAX; i++) {
|
||||
qemu_get_be64s(f, &env->ts[i].tpc);
|
||||
qemu_get_be64s(f, &env->ts[i].tnpc);
|
||||
qemu_get_be64s(f, &env->ts[i].tstate);
|
||||
|
@ -175,7 +175,7 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id)
|
|||
qemu_get_be32s(f, &env->asi);
|
||||
qemu_get_be32s(f, &env->pstate);
|
||||
qemu_get_be32s(f, &env->tl);
|
||||
env->tsptr = &env->ts[env->tl];
|
||||
env->tsptr = &env->ts[env->tl & MAXTL_MASK];
|
||||
qemu_get_be32s(f, &env->cansave);
|
||||
qemu_get_be32s(f, &env->canrestore);
|
||||
qemu_get_be32s(f, &env->otherwin);
|
||||
|
@ -197,7 +197,7 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id)
|
|||
qemu_get_be64s(f, &env->gsr);
|
||||
qemu_get_be32s(f, &env->gl);
|
||||
qemu_get_be64s(f, &env->hpstate);
|
||||
for (i = 0; i < MAXTL; i++)
|
||||
for (i = 0; i < MAXTL_MAX; i++)
|
||||
qemu_get_be64s(f, &env->htstate[i]);
|
||||
qemu_get_be64s(f, &env->hintp);
|
||||
qemu_get_be64s(f, &env->htba);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue