This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH v2 09/12] [PowerPC] Add support for TAR
> From: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
> Cc: uweigand@de.ibm.com, edjunior@gmail.com
> Date: Thu, 9 Aug 2018 23:52:07 -0300
>
> From: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
>
> This patch adds support for the Target Address Register for powerpc
> linux native and core file targets, and in the powerpc linux server
> stub.
>
> gdb/ChangeLog:
> YYYY-MM-DD Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
> Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
>
> * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
> (tdesc_powerpc_isa207_vsx64l): Declare.
> * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
> (struct ppc_linux_features) <isa207>: New field.
> (ppc_linux_no_features): Add initializer for isa207 field.
> * arch/ppc-linux-common.c (ppc_linux_match_description): Return
> new tdescs.
> * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
> (NT_PPC_TAR): Define if not already defined.
> * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
> rs6000/powerpc-isa207-vsx64l.
> (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
> rs6000/powerpc-isa207-vsx64l.xml.
> * features/rs6000/power-tar.xml: New file.
> * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
> * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
> * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
> * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
> * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
> * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
> * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
> fetch_regset with the TAR regset.
> (store_register, store_ppc_registers): Call store_regset with the
> TAR regset.
> (ppc_linux_nat_target::read_description): Set isa207 field in the
> features struct if needed.
> * ppc-linux-tdep.c: Include
> features/rs6000/powerpc-isa207-vsx32l.c and
> features/rs6000/powerpc-isa207-vsx64l.c.
> (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
> (ppc_linux_iterate_over_regset_sections): Call back with the tar
> regset.
> (ppc_linux_core_read_description): Check if the tar section is
> present and set isa207 in the features struct.
> (_initialize_ppc_linux_tdep): Call
> initialize_tdesc_powerpc_isa207_vsx32l and
> initialize_tdesc_powerpc_isa207_vsx64l.
> * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
> * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
> (enum) <PPC_TAR_REGNUM>: New enum value.
> * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
> feature.
> (ppc_process_record_op31): Record changes to TAR.
>
> gdb/gdbserver/ChangeLog:
> YYYY-MM-DD Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
>
> * configure.srv (ipa_ppc_linux_regobj): Add
> powerpc-isa207-vsx64l-ipa.o and powerpc-isa207-vsx32l-ipa.o.
> (powerpc*-*-linux*): Add powerpc-isa207-vsx32l.o and
> powerpc-isa207-vsx64l.o to srv_regobj, add rs6000/power-tar.xml,
> rs6000/powerpc-isa207-vsx32l.xml, and
> rs6000/powerpc-isa207-vsx64l.xml to srv_xmlfiles.
> * linux-ppc-tdesc-init.h (enum ppc_linux_tdesc)
> <PPC_TDESC_ISA207_VSX>: New enum value.
> (init_registers_powerpc_isa207_vsx32l): Declare.
> (init_registers_powerpc_isa207_vsx64l): Declare.
> * linux-ppc-low.c (ppc_fill_tarregset): New function.
> (ppc_store_tarregset): New function.
> (ppc_regsets): Add entry for the TAR regset.
> (ppc_arch_setup): Set isa207 in features struct when needed. Set
> size for the TAR regsets.
> (ppc_get_ipa_tdesc_idx): Return PPC_TDESC_ISA207_VSX.
> (initialize_low_arch): Call init_registers_powerpc_isa207_vsx32l
> and init_registers_powerpc_isa207_vsx64l.
> * linux-ppc-ipa.c (get_ipa_tdesc): Handle PPC_TDESC_ISA207_VSX.
> (initialize_low_tracepoint): Call
> init_registers_powerpc_isa207_vsx32l and
> init_registers_powerpc_isa207_vsx64l.
>
> gdb/testsuite/ChangeLog:
> YYYY-MM-DD Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
>
> * gdb.arch/powerpc-tar.c: New file.
> * gdb.arch/powerpc-tar.exp: New file.
>
> gdb/doc/ChangeLog:
> YYYY-MM-DD Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
>
> * gdb.texinfo (PowerPC Features): Describe new feature
> "org.gnu.gdb.power.tar".
OK for the gdb.texinfo part.
Thanks.