X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Freggroups.h;h=593f5469f6e94290e7a1e9719a628c0369b2bb1b;hb=d043f8c867f85f1c36cc957da8204fe2907b3aea;hp=50f0274fd728889a84349fda633c789ce019b1cc;hpb=28e7fd62340426746f9c896cbc40c5d374ec47aa;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/reggroups.h b/gdb/reggroups.h index 50f0274fd7..593f5469f6 100644 --- a/gdb/reggroups.h +++ b/gdb/reggroups.h @@ -1,6 +1,6 @@ /* Register groupings for GDB, the GNU debugger. - Copyright (C) 2002-2013 Free Software Foundation, Inc. + Copyright (C) 2002-2019 Free Software Foundation, Inc. Contributed by Red Hat. @@ -41,6 +41,10 @@ extern struct reggroup *const restore_reggroup; /* Create a new local register group. */ extern struct reggroup *reggroup_new (const char *name, enum reggroup_type type); +/* Create a new register group allocated onto the gdbarch obstack. */ +extern struct reggroup *reggroup_gdbarch_new (struct gdbarch *gdbarch, + const char *name, + enum reggroup_type type); /* Add a register group (with attribute values) to the pre-defined list. */ extern void reggroup_add (struct gdbarch *gdbarch, struct reggroup *group); @@ -49,11 +53,16 @@ extern void reggroup_add (struct gdbarch *gdbarch, struct reggroup *group); extern const char *reggroup_name (struct reggroup *reggroup); extern enum reggroup_type reggroup_type (struct reggroup *reggroup); -/* Interator for the architecture's register groups. Pass in NULL, - returns the first group. Pass in a group, returns the next group, - or NULL when the last group is reached. */ +/* Iterators for the architecture's register groups. Pass in NULL, returns + the first (for next), or last (for prev) group. Pass in a group, + returns the next or previous group, or NULL when either the end or the + beginning of the group list is reached. */ extern struct reggroup *reggroup_next (struct gdbarch *gdbarch, struct reggroup *last); +extern struct reggroup *reggroup_prev (struct gdbarch *gdbarch, + struct reggroup *curr); +/* Find a reggroup by name. */ +extern reggroup *reggroup_find (struct gdbarch *gdbarch, const char *name); /* Is REGNUM a member of REGGROUP? */ extern int default_register_reggroup_p (struct gdbarch *gdbarch, int regnum,