Add a print_xml_feature visitor class which turns a target description into xml. Both gdb and gdbserver can do this. gdb/ * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing. (print_xml_feature::visit_post): Likewise. (print_xml_feature::visit): Likewise. * common/tdesc.h (tdesc_get_features_xml): Use const tdesc. (print_xml_feature): Add new class. * regformats/regdat.sh: Null xmltarget on feature targets. * target-descriptions.c (struct target_desc): Add xmltarget. (maintenance_check_tdesc_xml_convert): Add unittest function. (tdesc_get_features_xml): Add function to get xml. (maintenance_check_xml_descriptions): Test xml generation. * xml-tdesc.c (string_read_description_xml): Add function. * xml-tdesc.h (string_read_description_xml): Add declaration. gdbserver/ * gdb/gdbserver/server.c (get_features_xml): Remove cast. * tdesc.c (void target_desc::accept): Fill in function. (tdesc_get_features_xml): Remove old xml creation. (print_xml_feature::visit_pre): Add xml vistor. * tdesc.h (struct target_desc): Make xmltarget mutable. (tdesc_get_features_xml): Remove declaration. |
||
---|---|---|
.. | ||
arm | ||
i386 | ||
rs6000 | ||
aarch64.dat | ||
microblaze-with-stack-protect.dat | ||
mips-dsp-linux.dat | ||
mips-linux.dat | ||
mips64-dsp-linux.dat | ||
mips64-linux.dat | ||
nios2-linux.dat | ||
reg-arm.dat | ||
reg-bfin.dat | ||
reg-cf.dat | ||
reg-cris.dat | ||
reg-crisv32.dat | ||
reg-ia64.dat | ||
reg-m32r.dat | ||
reg-m68k.dat | ||
reg-sh.dat | ||
reg-sparc64.dat | ||
reg-spu.dat | ||
reg-tilegx.dat | ||
reg-tilegx32.dat | ||
reg-xtensa.dat | ||
regdat.sh | ||
regdef.h | ||
s390-gs-linux64.dat | ||
s390-linux32.dat | ||
s390-linux32v1.dat | ||
s390-linux32v2.dat | ||
s390-linux64.dat | ||
s390-linux64v1.dat | ||
s390-linux64v2.dat | ||
s390-te-linux64.dat | ||
s390-tevx-linux64.dat | ||
s390-vx-linux64.dat | ||
s390x-gs-linux64.dat | ||
s390x-linux64.dat | ||
s390x-linux64v1.dat | ||
s390x-linux64v2.dat | ||
s390x-te-linux64.dat | ||
s390x-tevx-linux64.dat | ||
s390x-vx-linux64.dat | ||
tic6x-c62x-linux.dat | ||
tic6x-c64x-linux.dat | ||
tic6x-c64xp-linux.dat |