X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fuser-regs.h;h=06aee241e1eec8cd9554023917f0bcbde3c925c9;hb=9b30da15e72bd4e8265169bfd511272aa3875738;hp=d845c8a32633fa3153a6feba6e8f4e4ee5541229;hpb=e6e5e94cb843195fef8afb195338f22dddc4d796;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/user-regs.h b/gdb/user-regs.h index d845c8a326..06aee241e1 100644 --- a/gdb/user-regs.h +++ b/gdb/user-regs.h @@ -1,6 +1,6 @@ /* Per-frame user registers, for GDB, the GNU debugger. - Copyright 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 2002-2019 Free Software Foundation, Inc. Contributed by Red Hat. @@ -8,7 +8,7 @@ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -17,9 +17,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + along with this program. If not, see . */ #ifndef USER_REGS_H #define USER_REGS_H @@ -31,13 +29,14 @@ specific registers are present when the architecture is selected. These registers are assigned register numbers outside the - architecture's register range [0 .. NUM_REGS + NUM_PSEUDO_REGS). + architecture's register range + [0 .. gdbarch_num_regs + gdbarch_num_pseudo_regs]. Their values should be constructed using per-frame information. */ /* TODO: cagney/2003-06-27: Need to think more about how these registers are added, read, and modified. At present they are kind of assumed to be read-only. Should it, for instance, return a - register descriptor that contains all the relvent access methods. */ + register descriptor that contains all the relevant access methods. */ struct frame_info; struct gdbarch; @@ -57,15 +56,17 @@ extern const char *user_reg_map_regnum_to_name (struct gdbarch *gdbarch, bytes as, at the time the register is being added, the type needed to describe the register has not bee initialized. */ -typedef struct value *(user_reg_read_ftype) (struct frame_info *frame); +typedef struct value *(user_reg_read_ftype) (struct frame_info *frame, + const void *baton); extern struct value *value_of_user_reg (int regnum, struct frame_info *frame); /* Add a builtin register (present in all architectures). */ extern void user_reg_add_builtin (const char *name, - user_reg_read_ftype *read); + user_reg_read_ftype *read, + const void *baton); /* Add a per-architecture frame register. */ extern void user_reg_add (struct gdbarch *gdbarch, const char *name, - user_reg_read_ftype *read); + user_reg_read_ftype *read, const void *baton); #endif