const struct target_desc *target_current_description (void);
/* Record architecture-specific functions to call for pseudo-register
- support. If tdesc_use_registers is called and NUM_PSEUDO_REGS
+ support. If tdesc_use_registers is called and gdbarch_num_pseudo_regs
is greater than zero, then these should be called as well.
They are equivalent to the gdbarch methods with similar names,
except that they will only be called for pseudo registers. */
/* Update GDBARCH to use the target description for registers. Fixed
register assignments are taken from EARLY_DATA, which is freed.
All registers which have not been assigned fixed numbers are given
- numbers above the current value of NUM_REGS. NUM_REGS and various
- register-related predicates are updated to refer to the target
- description. This function should only be called from the
- architecture's gdbarch initialization routine, and only after
+ numbers above the current value of gdbarch_num_regs.
+ gdbarch_num_regs and various register-related predicates are updated to
+ refer to the target description. This function should only be called from
+ the architecture's gdbarch initialization routine, and only after
successfully validating the required registers. */
void tdesc_use_registers (struct gdbarch *gdbarch,
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);