|
From: | Bruno Piazera Larsen |
Subject: | RE: [PATCH] target/ppc: code motion from translate_init.c.inc to gdbstub.c |
Date: | Tue, 13 Apr 2021 12:48:20 +0000 |
All the code and git related feedback as been done, with the exception of
> > +gchar *ppc_gdb_arch_name(CPUState *cs);
> > + > > + > > #endif /* PPC_CPU_H */ > > diff --git a/target/ppc/gdbstub.c b/target/ppc/gdbstub.c > > index c28319fb97..0c016b8483 100644 > > --- a/target/ppc/gdbstub.c > > +++ b/target/ppc/gdbstub.c > > @@ -20,6 +20,10 @@ > > #include "qemu/osdep.h" > > #include "cpu.h" > > #include "exec/gdbstub.h" > > +#ifdef CONFIG_TCG > > +#include "exec/helper-proto.h" > > +#endif >
We still need to figure out where to move the vscr helpers so that both
> TCG and !TCG code can see them. But we cannot build without TCG > currently anyway so I guess it's ok to leave the ifdef. Actually, since we're moving the helpers away, I think it's better to remove the ifdefs...
The helper-proto.h is here only for the vscr, so it's going away before we support the !tcg build anyway. Thoughts?
>
> +
> > +void ppc_cpu_gdb_init(CPUState *cs, PowerPCCPUClass *pcc) > > +{ > > + > > + if (pcc->insns_flags & PPC_FLOAT) { > > + gdb_register_coprocessor(cs, gdb_get_float_reg, gdb_set_float_reg, > > + 33, "power-fpu.xml", 0); > > + } > > + if (pcc->insns_flags & PPC_ALTIVEC) { > > + gdb_register_coprocessor(cs, gdb_get_avr_reg, gdb_set_avr_reg, > > + 34, "power-altivec.xml", 0); > > + } > > + if (pcc->insns_flags & PPC_SPE) { > > + gdb_register_coprocessor(cs, gdb_get_spe_reg, gdb_set_spe_reg, > > + 34, "power-spe.xml", 0); > > + } > > + if (pcc->insns_flags2 & PPC2_VSX) { > > + gdb_register_coprocessor(cs, gdb_get_vsx_reg, gdb_set_vsx_reg, > > + 32, "power-vsx.xml", 0); > > + } > > +#ifndef CONFIG_USER_ONLY > > + gdb_register_coprocessor(cs, gdb_get_spr_reg, gdb_set_spr_reg, > > + pcc->gdb_num_sprs, "power-spr.xml", 0); > > +#endif > > +} >
>
Same here.
This function was actually created by me, wasn't in the translate_init.c.inc. Since we're moving gdb fuinctions to gdbstub.c, I thought it made sense to hide the logic behind how
to register coprocessors correctly as well. that's why there is no removal of this function on the diff. Should I move it back to ppc_cpu_realize or is this a good plan?
Bruno Piazera Larsen Instituto de Pesquisas ELDORADO Departamento Computação Embarcada Analista de Software Trainee |
[Prev in Thread] | Current Thread | [Next in Thread] |