diff options
author | Elena Zannoni <ezannoni@kwikemart.cygnus.com> | 2000-07-24 14:29:23 +0000 |
---|---|---|
committer | Elena Zannoni <ezannoni@kwikemart.cygnus.com> | 2000-07-24 14:29:23 +0000 |
commit | 7f1b25859d7894b8ec513894c42352243988e6a5 (patch) | |
tree | 75e878058fbab2cc1fa24e96fd52fdf68328b156 /gdb/gdbarch.h | |
parent | 0aba1244556ea8cb395fa0590d772e74fb9512b5 (diff) | |
download | gdb-7f1b25859d7894b8ec513894c42352243988e6a5.zip gdb-7f1b25859d7894b8ec513894c42352243988e6a5.tar.gz gdb-7f1b25859d7894b8ec513894c42352243988e6a5.tar.bz2 |
2000-07-24 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbarch.sh: Add FETCH_PSEUDO_REGISTER and STORE_PSEUDO_REGISTER
to the gdbarch structure.
* gdbarch.c: Regenerate.
* gdbarch.h: Regenerate.
* inferior.h (FETCH_PSEUDO_REGISTER, STORE_PSEUDO_REGISTER):
Delete macros.
* regcache.c (write_register, read_register, write_register_bytes,
write_register_gen, read_register_bytes, read_register_gen):
Rename ARCH_FECTH_PSEUDO_REGISTERS to FETCH_PSEUDO_REGISTERS and
ARCH_STORE_PSEUDO_REGISTER to STORE_PSEUDO_REGISTER.
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r-- | gdb/gdbarch.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h index 5561417..51c83aa 100644 --- a/gdb/gdbarch.h +++ b/gdb/gdbarch.h @@ -604,6 +604,34 @@ extern void set_gdbarch_register_convert_to_raw (struct gdbarch *gdbarch, gdbarc #endif /* Default (function) for non- multi-arch platforms. */ +#if (GDB_MULTI_ARCH == 0) && !defined (FETCH_PSEUDO_REGISTER) +#define FETCH_PSEUDO_REGISTER(regnum) (internal_error ("FETCH_PSEUDO_REGISTER"), 0) +#endif + +typedef void (gdbarch_fetch_pseudo_register_ftype) (int regnum); +extern void gdbarch_fetch_pseudo_register (struct gdbarch *gdbarch, int regnum); +extern void set_gdbarch_fetch_pseudo_register (struct gdbarch *gdbarch, gdbarch_fetch_pseudo_register_ftype *fetch_pseudo_register); +#if GDB_MULTI_ARCH +#if (GDB_MULTI_ARCH > 1) || !defined (FETCH_PSEUDO_REGISTER) +#define FETCH_PSEUDO_REGISTER(regnum) (gdbarch_fetch_pseudo_register (current_gdbarch, regnum)) +#endif +#endif + +/* Default (function) for non- multi-arch platforms. */ +#if (GDB_MULTI_ARCH == 0) && !defined (STORE_PSEUDO_REGISTER) +#define STORE_PSEUDO_REGISTER(regnum) (internal_error ("STORE_PSEUDO_REGISTER"), 0) +#endif + +typedef void (gdbarch_store_pseudo_register_ftype) (int regnum); +extern void gdbarch_store_pseudo_register (struct gdbarch *gdbarch, int regnum); +extern void set_gdbarch_store_pseudo_register (struct gdbarch *gdbarch, gdbarch_store_pseudo_register_ftype *store_pseudo_register); +#if GDB_MULTI_ARCH +#if (GDB_MULTI_ARCH > 1) || !defined (STORE_PSEUDO_REGISTER) +#define STORE_PSEUDO_REGISTER(regnum) (gdbarch_store_pseudo_register (current_gdbarch, regnum)) +#endif +#endif + +/* Default (function) for non- multi-arch platforms. */ #if (GDB_MULTI_ARCH == 0) && !defined (POINTER_TO_ADDRESS) #define POINTER_TO_ADDRESS(type, buf) (unsigned_pointer_to_address (type, buf)) #endif |