* Makefile.in (mips-tdep.o): Update.

* mips-tdep.c (struct register_alias, mips_o32_aliases)
	(mips_n32_n64_aliases, mips_register_aliases): New.
	(mips_register_name): Call tdesc_register_name.
	(mips_tdesc_register_reggroup_p): New.
	(mips_pseudo_register_type, value_of_mips_user_reg): New.
	(mips_gdbarch_init): Add target-described register support.
	Register aliases for register names.
	* target-descriptions.c (tdesc_register_name): Make global.
	(tdesc_register_in_reggroup_p): New function, broken out from
	tdesc_register_reggroup_p.
	(tdesc_register_reggroup_p): Use it.
	* target-descriptions.h (tdesc_register_name)
	(tdesc_register_in_reggroup_p): New prototypes.
	* NEWS: Correct formatting.  Mention MIPS register support.
	* features/mips-cp0.xml, features/mips-fpu.xml,
	features/mips64-cp0.xml, gdb/features/mips64-fpu.xml, mips-cpu.xml,
	features/mips64-cpu.xml: New files.

	* gdb.xml/tdesc-regs.exp: Add MIPS support.  Allow multiple
	required features to be included.

	* gdb.texinfo (MIPS Features): New subsection.
This commit is contained in:
Daniel Jacobowitz
2007-06-13 18:27:00 +00:00
parent 17a912b682
commit f8b73d13b7
16 changed files with 627 additions and 27 deletions

View File

@@ -140,6 +140,18 @@ const char *tdesc_feature_name (const struct tdesc_feature *feature);
struct type *tdesc_named_type (const struct tdesc_feature *feature,
const char *id);
/* Return the name of register REGNO, from the target description or
from an architecture-provided pseudo_register_name method. */
const char *tdesc_register_name (int regno);
/* Check whether REGNUM is a member of REGGROUP using the target
description. Return -1 if the target description does not
specify a group. */
int tdesc_register_in_reggroup_p (struct gdbarch *gdbarch, int regno,
struct reggroup *reggroup);
/* Methods for constructing a target description. */
struct target_desc *allocate_target_description (void);