Andrew Cagney
a66a9c2331
2003-03-12 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (regcache_cooked_write_signed): New function.
(regcache_cooked_write_unsigned): New function.
(regcache_cooked_read_unsigned): Fix regnum in range assertion.
(regcache_cooked_read_signed): Fix regnum in range assertion.
* regcache.h (regcache_cooked_write_signed): Declare.
(regcache_cooked_write_unsigned): Declare.
2003-03-12 20:50:13 +00:00
Andrew Cagney
5602984a0d
2003-03-10 Andrew Cagney <cagney@redhat.com>
...
* regcache.h (regcache_cooked_read_ftype): Define.
(regcache_save, regcache_restore): Add a cooked_read parameter.
* regcache.c (regcache_save, regcache_restore): Update.
(do_cooked_read): New function.
(regcache_cpy): Pass do_cooked_read to regcache_save and
regcache_restore.
2003-03-10 19:08:47 +00:00
Andrew Cagney
a0ed55327d
2003-03-03 Andrew Cagney <cagney@redhat.com>
...
Make MAX_REGISTER_RAW_SIZE and MAX_REGISTER_VIRTUAL_SIZE optional.
* gdbarch.sh (DEPRECATED_MAX_REGISTER_RAW_SIZE): Variable with
predicate. Replace MAX_REGISTER_RAW_SIZE.
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto for
MAX_REGISTER_VIRTUAL_SIZE.
* regcache.c (legacy_max_register_raw_size): New function.
(legacy_max_register_virtual_size): New function.
* defs.h (MAX_REGISTER_VIRTUAL_SIZE): Define.
(MAX_REGISTER_RAW_SIZE): Define.
(legacy_max_register_raw_size): Declare.
(legacy_max_register_virtual_size): Declare.
* config/sparc/tm-sparc.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Update.
* config/sparc/tm-sp64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto.
* config/pa/tm-hppa.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto.
* config/pa/tm-hppa64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
* config/ia64/tm-ia64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
* config/i386/tm-ptx.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* vax-tdep.c (vax_gdbarch_init): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* ns32k-tdep.c (ns32k_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68k-tdep.c (m68k_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_gdbarch_init): Update.
* hppa-tdep.c (hppa_gdbarch_init): Update.
* h8300-tdep.c (h8300_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
* d10v-tdep.c (d10v_gdbarch_init): Do not set
max_register_raw_size or max_register_virtual_size.
2003-03-03 20:50:20 +00:00
Andrew Cagney
35cac7cfea
2003-03-01 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (register_type): New function with predicate.
(REGISTER_VIRTUAL_TYPE): Change to function with predicate.
* gdbarch.h, gdbarch.c: Re-generate.
* arch-utils.c (generic_register_byte): Use generic_register_size.
(generic_register_size): When available, use
gdbarch_register_type.
* regcache.c (init_regcache_descr): When available, initialize the
register type array using gdbarch_register_type. If the
architecture supplies gdbarch_register_type, do not use the legacy
regcache layout.
* d10v-tdep.c (d10v_register_type): Replace
d10v_register_virtual_type.
(d10v_gdbarch_init): Set register_type instead of
register_virtual_type.
2003-03-01 17:59:12 +00:00
Andrew Cagney
08a617dae2
2003-02-28 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (register_size): New function.
* regcache.h (register_size): Declare
* d10v-tdep.c: Use register_size instead of REGISTER_RAW_SIZE, use
max_register_size instead of MAX_REGISTER_RAW_SIZE.
2003-02-28 17:47:43 +00:00
Andrew Cagney
524d7c188c
2002-11-14 Andrew Cagney <ac131313@redhat.com>
...
* regcache.h (deprecated_registers): Rename registers.
* a68v-nat.c, alpha-nat.c, arch-utils.c, core-sol2.c: Update.
* hp300ux-nat.c, hppab-nat.c, hppah-nat.c: Update.
* hppam3-nat.c, hpux-thread.c, i386gnu-nat.c: Update.
* ia64-aix-nat.c, ia64-linux-nat.c, ia64-tdep.c: Update.
* irix4-nat.c, irix5-nat.c, lynx-nat.c, m68k-tdep.c: Update.
* m68knbsd-nat.c, mips-linux-tdep.c, mipsm3-nat.c: Update.
* mipsv4-nat.c, ns32knbsd-nat.c, ppc-bdm.c: Update.
* ppc-sysv-tdep.c, ptx4-nat.c, regcache.c, remote-es.c: Update.
* remote-sds.c, remote-vx68.c, remote-vxmips.c: Update.
* remote-vxsparc.c, rs6000-tdep.c, sol-thread.c: Update.
* sparc-nat.c, sparc-tdep.c, sun3-nat.c, symm-nat.c: Update.
* v850ice.c: Update.
2002-11-14 20:37:29 +00:00
Andrew Cagney
73937e031a
2002-11-13 Andrew Cagney <cagney@redhat.com>
...
* regcache.h (deprecated_read_register_bytes): Rename
read_register_bytes.
(deprecated_write_register_bytes): Rename write_register_bytes.
* alpha-tdep.c, arm-tdep.c, cris-tdep.c, d10v-tdep.c: Update.
* dwarf2cfi.c, frv-tdep.c, hppa-tdep.c, ia64-tdep.c: Update.
* m68k-tdep.c, mcore-tdep.c, mips-tdep.c, mn10300-tdep.c: Update.
* ns32k-tdep.c, regcache.c, remote-sds.c, remote-vx.c: Update.
* remote.c, rs6000-tdep.c, s390-tdep.c, sh-tdep.c: Update.
* sparc-tdep.c, v850-tdep.c, vax-tdep.c, x86-64-tdep.c: Update.
* xstormy16-tdep.c, z8k-tdep.c, config/nm-gnu.h: Update.
* config/nm-m3.h, config/h8500/tm-h8500.h: Update.
* config/i386/nm-ptx4.h, config/i386/nm-symmetry.h: Update.
* config/m32r/tm-m32r.h, config/m68k/nm-sun3.h: Update.
* config/m68k/tm-delta68.h, config/m68k/tm-linux.h: Update.
* config/mn10200/tm-mn10200.h, config/pa/tm-hppa64.h: Update.
* config/sparc/nm-nbsd.h, config/sparc/nm-sun4os4.h: Update.
* config/sparc/nm-sun4sol2.h, config/sparc/tm-sparclet.h: Update.
2002-11-13 Andrew Cagney <ac131313@redhat.com>
* mi-main.c (mi_cmd_data_write_register_values): Use
deprecated_write_register_bytes instead of write_register_bytes.
2002-11-14 00:25:05 +00:00
Andrew Cagney
2d28509afb
2002-11-13 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (struct regcache): Replace passthough_p with
readonly_p.
(regcache_xmalloc): Initialize readonly_p.
(build_regcache): Initialize readonly_p.
(regcache_save): New function.
(regcache_restore): New function.
(regcache_cpy): Re-implement using regcache_save and
regcache_restore.
(regcache_raw_read): Update.
(regcache_cooked_read): When a read-only cache, checked for cached
pseudo register values.
(regcache_raw_write): Assert that the cache is not read-only.
Remove code handling a non-passthrough cache.
* regcache.h (regcache_save): Declare.
(regcache_restore): Declare.
2002-11-13 17:59:40 +00:00
Andrew Cagney
067df2e5b4
2002-11-13 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (struct regcache_descr): Add fields
sizeof_cooked_registers and sizeof_cooked_register_valid_p.
(init_legacy_regcache_descr): Compute the size of a cooked
register cache and then assign that to sizeof_raw_registers. Set
sizeof_raw_register_valid_p to sizeof_cooked_register_valid_p
(init_legacy_regcache_descr): Ditto.
2002-11-13 16:57:36 +00:00
Andrew Cagney
51b1fe4e63
2002-11-13 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (register_buffer): Move to near start of file, update
description.
(regcache_raw_read): Use.
(regcache_raw_write): Use.
(struct regcache): Rename raw_registers to registers and
raw_register_valid_p to register_valid_p.
(regcache_xmalloc): Update.
(regcache_xfree): Update.
(register_buffer): Update.
(regcache_cpy): Update.
(regcache_cpy_no_passthrough): Update.
(regcache_valid_p): Update.
(deprecated_grub_regcache_for_registers): Update.
(deprecated_grub_regcache_for_register_valid): Update.
(set_register_cached): Update.
(regcache_raw_write): Update.
2002-11-13 16:07:03 +00:00
Andrew Cagney
e600bd345d
2002-11-07 Andrew Cagney <ac131313@redhat.com>
...
* regcache.h (regcache_cooked_read_using_offset_hack)
(regcache_cooked_write_using_offset_hack): Delete declarations.
(register_changed): Delete declaration.
* regcache.c (regcache_cooked_read_using_offset_hack)
(regcache_cooked_write_using_offset_hack): Delete functions.
(cooked_xfer_using_offset_hack): Delete function.
(register_changed): Delete function.
2002-11-07 21:43:23 +00:00
Andrew Cagney
2b9e5f3fab
2002-11-07 Andrew Cagney <ac131313@redhat.com>
...
* regcache.c (deprecated_registers_fetched): Update.
* regcache.h (deprecated_registers_fetched): Rename
registers_fetched.
* remote-vxsparc.c (vx_read_register): Update.
* remote-vxmips.c (vx_read_register): Update.
* remote-vx68.c (vx_read_register): Update.
* irix5-nat.c (fetch_core_registers): Update.
* mipsm3-nat.c (fetch_inferior_registers): Update.
* sun3-nat.c (fetch_inferior_registers): Update.
* symm-nat.c (fetch_inferior_registers): Update.
* ns32knbsd-nat.c (fetch_inferior_registers): Update.
(fetch_core_registers): Update.
(fetch_kcore_registers): Update.
* mips-nat.c (fetch_inferior_registers): Update.
* corelow.c (get_core_registers): Update.
* a68v-nat.c (fetch_inferior_registers): Update.
2002-11-07 15:31:31 +00:00
Andrew Cagney
8262ee2317
2002-11-06 Andrew Cagney <ac131313@redhat.com>
...
* regcache.h (deprecated_register_valid): Rename register_valid.
* regcache.c: Update.
* ia64-aix-nat.c: Update.
* i386gnu-nat.c: Update.
* alpha-nat.c: Update.
* sparc-nat.c: Update.
* lynx-nat.c: Update.
* remote-mips.c: Update.
2002-11-07 02:40:28 +00:00
Andrew Cagney
b59ff9d5ff
2002-11-02 Andrew Cagney <cagney@redhat.com>
...
* reggroups.h, reggroups.c: New files.
* regcache.c: Include "reggroups.h".
(enum regcache_dump_what): Add `regcache_dump_groups'.
(regcache_dump): Contract size of the "Type" column. When
specified, dump the register's groups.
(maintenance_print_register_groups): New function.
(_initialize_regcache): Add command `maint print register-groups'.
* Makefile.in (COMMON_OBS): Add reggroups.o
(SFILES): Add reggroups.c.
(reggroups_h): Define.
(regcache.o, gdbarch.o): Update dependencies.
(reggroups.o): Specify dependencies.
* gdbarch.sh (register_reggroup_p): Add pure multi-arch method.
Add opaque declaration for `struct reggroup' in generated .h file.
Include "reggroups.h" in generated .c file.
gdbarch.h, gdbarch.c: Re-generate.
2002-11-02 15:13:34 +00:00
Andrew Cagney
4caf0990c1
2002-11-02 Andrew Cagney <cagney@redhat.com>
...
* regcache.h (deprecated_read_register_gen): Rename
read_register_gen.
(deprecated_write_register_gen): Rename write_register_gen.
* i387-tdep.c: Update.
* x86-64-linux-nat.c: Update
* wince.c: Update.
* thread-db.c: Update.
* win32-nat.c: Update.
* mips-tdep.c: Update.
* d10v-tdep.c: Update.
* cris-tdep.c: Update.
* remote-sim.c: Update.
* remote-rdi.c: Update.
* remote-rdp.c: Update.
* frame.c: Update.
* target.c: Update.
* blockframe.c: Update.
* x86-64-tdep.c: Update.
* xstormy16-tdep.c: Update.
* sh-tdep.c: Update.
* s390-tdep.c: Update.
* rs6000-tdep.c: Update.
* sparc-tdep.c: Update.
* i386-tdep.c: Update.
* dwarf2cfi.c: Update.
* regcache.c: Update.
2002-11-02 14:59:10 +00:00
Mark Kettenis
c00dcbe965
* regcache.c (regcache_raw_write_signed,
...
regcache_raw_write_unsigned): New functions.
* regcache.h (regcache_raw_write_signed,
regcache_raw_write_unsigned): New prototypes.
2002-08-25 23:44:30 +00:00
Andrew Cagney
d3b22ed57c
2002-08-25 Andrew Cagney <ac131313@redhat.com>
...
* regcache.h (register_offset_hack): Declare.
(regcache_cooked_read_using_offset_hack): Declare.
(regcache_cooked_write_using_offset_hack): Declare.
* regcache.c (register_offset_hack): New function.
(regcache_cooked_read_using_offset_hack): New function.
(regcache_cooked_write_using_offset_hack): New function.
(regcache_dump): Check that the registers, according to their
offset, are packed hard against each other.
(cooked_xfer_using_offset_hack): New function.
2002-08-25 18:47:16 +00:00
Andrew Cagney
bb4250135d
2002-08-25 Andrew Cagney <ac131313@redhat.com>
...
* regcache.c (struct regcache_descr): Add field register_type.
(init_legacy_regcache_descr): Pass a pre-allocated regcache_descr
in as a parameter
(init_regcache_descr): Initialize register_type. Pass the descr
to init_legacy_regcache_descr. Use register_type instead of
REGISTER_VIRTUAL_TYPE.
(register_type): New function.
(regcache_dump): Replace REGISTER_VIRTUAL_TYPE with register_type.
* regcache.h (register_type): Declare.
2002-08-25 15:36:11 +00:00
Andrew Cagney
0ed04cce6d
2002-08-25 Andrew Cagney <ac131313@redhat.com>
...
* regcache.c (max_register_size): New function.
(init_legacy_regcache_descr): Ensure that max_register_size is
large enough for REGISTER_VIRTUAL_SIZE.
* regcache.h (max_register_size): Declare.
2002-08-25 14:44:04 +00:00
Andrew Cagney
06c0b04e1c
2002-08-18 Andrew Cagney <ac131313@redhat.com>
...
* regcache.c (regcache_xfer_part): New function.
(regcache_raw_read_part): New function.
(regcache_raw_write_part): New function.
(regcache_cooked_read_part): New function.
(regcache_cooked_write_part): New function.
* regcache.h (regcache_raw_read_part): Declare.
(regcache_raw_write_part): Declare.
(regcache_cooked_read_part): Declare.
(regcache_cooked_write_part): Declare.
2002-08-19 00:43:41 +00:00
Andrew Cagney
53826de97c
2002-08-13 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (init_regcache_descr): Overallocate the
raw_register_valid_p array including space for NUM_PSEUDO_REGS.
(registers_changed): Replace NUM_REGS+NUM_PSEUDO_REGS with
num_raw_registers.
(set_register_cached): Add range checking assertions. Use
current_regcache.
2002-08-13 23:06:40 +00:00
Andrew Cagney
28fc674094
2002-08-13 Andrew Cagney <cagney@redhat.com>
...
* i386-tdep.c (i386_register_name): Handle mmx registers.
(mmx_regnum_p): New function.
(i386_mmx_names): New array.
(mmx_num_regs): New variable.
(i386_pseudo_register_read): New function.
(i386_pseudo_register_write): New function.
(mmx_regnum_to_fp_regnum): New function. Code from Fernando Nasser.
* regcache.c (regcache_raw_read_unsigned): New function.
(regcache_raw_read_signed): New function.
* regcache.h (regcache_raw_read_unsigned): Declare.
(regcache_raw_read_signed): Declare.
2002-08-13 14:32:28 +00:00
Andrew Cagney
a378f41926
2002-08-12 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (regcache_raw_read_as_address): Delete function.
(regcache_cooked_read_signed): New function.
(regcache_cooked_read_unsigned): New function.
* regcache.h (regcache_cooked_read_signed): Declare.
(regcache_cooked_read_unsigned): Declare.
(regcache_raw_read_as_address): Delete declaration.
* blockframe.c (generic_read_register_dummy): Use
regcache_cooked_read_unsigned.
* i386-tdep.c (i386_extract_struct_value_address): Use
regcache_cooked_read_unsigned.
2002-08-13 13:58:50 +00:00
Andrew Cagney
a7e3c2ad4b
2002-08-09 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (regcache_dump): Compare the register offset
with REGISTER_BYTE.
* arch-utils.c (generic_register_byte): New function.
* arch-utils.h (generic_register_byte): Declare.
* gdbarch.sh (REGISTER_BYTE): Default to generic_register_byte.
* gdbarch.h, gdbarch.c: Regenerate.
2002-08-10 02:00:16 +00:00
Andrew Cagney
af030b9af8
2002-08-09 Andrew Cagney <cagney@redhat.com>
...
* regcache.c: Include "gdbcmd.h"
(_initialize_regcache): Add commands "maintenance print
registers", "maintenance print raw-registers" and "maintenance
print cooked-registers".
(enum regcache_dump_what): Define.
(dump_endian_bytes): New function.
(regcache_dump): New function.
(regcache_print): New function.
(maintenance_print_registers): New function.
(maintenance_print_raw_registers): New function.
(maintenance_print_cooked_registers): New function.
* Makefile.in (regcache.o): Update dependencies.
2002-08-10 00:36:46 +00:00
Andrew Cagney
5c27f28ad0
2002-08-07 Andrew Cagney <ac131313@redhat.com>
...
* regcache.c (pseudo_register): Delete function.
(fetch_register): Delete function.
(store_register): Delete function.
(regcache_raw_read, legacy_read_register_gen): Use
target_fetch_registers instead of fetch_register.
(legacy_write_register_gen, regcache_raw_write): Use
target_store_register instead of store_register.
(write_register_bytes): Ditto.
* gdbarch.sh (FETCH_PSEUDO_REGISTER): Delete.
(STORE_PSEUDO_REGISTER): Delete.
* gdbarch.h, gdbarch.c: Regenerate.
2002-08-07 16:01:58 +00:00
Andrew Cagney
b66d6d2e12
Fri Aug 2 15:53:50 2002 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh: Include "gdb_string.h".
* gdbarch.c: Regenerate.
* regcache.c: Include "gdb_string.h".
* ax-general.c: Ditto.
* varobj.c: Ditto.
* std-regs.c: Ditto.
* fbsd-proc.c: Ditto.
* thread.c: Ditto.
* Makefile.in (regcache.o): Update dependencies.
(thread.o, gdbarch.o): Ditto.
(ax-general.o, gdbarch.o): Ditto.
(varobj.o, std-regs.o): Ditto.
(fbsd-proc.o): Specify dependencies.
2002-08-02 20:51:21 +00:00
Andrew Cagney
29e1842b36
2002-08-02 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (regcache_cooked_read): Rename rawnum parameter to
regnum.
(regcache_cooked_write): Ditto.
2002-08-02 19:06:21 +00:00
Andrew Cagney
68365089fc
Add the cooked register interface.
2002-08-02 18:08:31 +00:00
Andrew Cagney
d8124050fd
2002-08-02 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (pseudo_register_read, pseudo_register_write):
Replace the architecture methods register_read and register_write.
* gdbarch.h, gdbarch.c: Regenerate.
* regcache.c (init_regcache_descr): Update.
(read_register_gen): Update.
(write_register_gen): Update.
(supply_register): Update comment.
* sh-tdep.c (sh_gdbarch_init): Update.
(sh_pseudo_register_read, sh64_pseudo_register_read): Add
`regcache' and `gdbarch' parameters. Make `buffer' a void
pointer. Update code.
(sh_pseudo_register_write, sh64_pseudo_register_write): Add
`regcache' and `gdbarch' parameters. Make `buffer' a constant
void pointer. Update code.
(sh64_register_write): Delete.
(sh4_register_read): Delete.
(sh64_register_read): Delete.
(sh4_register_write): Delete.
(sh_sh4_register_convert_to_raw): Make `from' parameter a constant
void pointer, `to' parameter a void pointer.
(sh_sh64_register_convert_to_raw): Ditto.
2002-08-02 14:48:19 +00:00
Andrew Cagney
d138e37abc
2002-07-25 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (struct regcache_descr): Rename nr_registers to
nr_cooked_registers. Revise comments describing the structure
member fields.
(init_regcache_descr): Update.
(init_legacy_regcache_descr): Update.
(read_register_gen, write_register_gen): When a cooked register in
the raw register range, directly access the value from the raw
register cache.
2002-07-29 19:54:42 +00:00
Andrew Cagney
1aaa5f999f
2002-07-24 Andrew Cagney <cagney@redhat.com>
...
* regcache.c (regcache_raw_write): Change buf parameter to a
constant void pointer.
(regcache_raw_read): Change buf parameter to a void pointer.
(legacy_write_register_gen): Change myaddr parameter a constant
void pointer.
(supply_register): Change val parameter to a const void pointer.
* regcache.h (regcache_raw_write): Update declaration.
(regcache_raw_read): Update declaration.
(supply_register): Update declaration.
2002-07-24 19:43:43 +00:00
Andrew Cagney
0818c12a55
2002-07-24 Andrew Cagney <cagney@redhat.com>
...
* regcache.h (regcache_raw_read, regcache_raw_write): Replace
regcache_read and regcache_write.
(regcache_raw_read_as_address): Replace regcache_read_as_address.
* regcache.c: Update.
* sh-tdep.c (sh64_push_arguments): Update comment.
(sh_pseudo_register_read): Update.
(sh_pseudo_register_write): Update.
(sh4_register_read): Update.
(sh4_register_write): Update.
(sh64_pseudo_register_read): Update.
(sh64_pseudo_register_write): Update.
(sh64_register_read): Update.
(sh64_register_write): Update.
* i386-tdep.c (i386_extract_return_value): Update.
(i386_extract_struct_value_address): Update.
(i386_extract_return_value): Update.
* blockframe.c (generic_read_register_dummy): Update.
(generic_call_dummy_register_unwind): Update
* infrun.c (write_inferior_status_register): Update.
2002-07-24 14:38:55 +00:00
Andrew Cagney
36160dc4b2
* infcmd.c (print_return_value): Remove compatibility code calling
...
deprecated_grub_regcache_for_registers.
* values.c: Include "regcache.h".
(value_being_returned): Update. Use
deprecated_grub_regcache_for_registers to extract the register
buffer address.
* value.h (value_being_returned): Change ``retbuf'' parameter to a
``struct regcache''.
* Makefile.in (values.o): Add dependency on $(regcache_h).
* inferior.h (run_stack_dummy): Change type of second parameter to
a ``struct regcache''.
* valops.c (hand_function_call): Change type of retbuf to ``struct
regcache''. Allocate using regcache_xmalloc, clean using
make_cleanup_regcache_xfree.
* infcmd.c (run_stack_dummy): Update. Use
regcache_cpu_no_passthrough instead of memcpy to copy the buffer.
* regcache.c (do_regcache_xfree): New function.
(make_cleanup_regcache_xfree): New function.
* regcache.h (make_cleanup_regcache_xfree): Declare.
2002-07-03 20:36:54 +00:00
Andrew Cagney
0b434a0046
From 2002-06-27 John David Anglin <dave@hiauly1.hia.nrc.ca>:
...
* regcache.c (supply_register): Add missing argument to
register_buffer call.
2002-06-27 18:28:23 +00:00
Andrew Cagney
37e7137227
* regcache.h: Update comments describing the regcache_cpy family
...
of functions.
(regcache_save, regcache_restore): Delete declaration.
(regcache_save_no_passthrough): Delete declaration.
(regcache_restore_no_passthrough): Delete declaration.
* regcache.c (regcache_save): Delete function.
(regcache_save_no_passthrough): Delete function.
(regcache_restore): Delete function.
(regcache_restore_no_passthrough): Delete function.
2002-06-22 21:18:32 +00:00
Andrew Cagney
3fadccb31d
* regcache.h: Update copyright.
...
(struct regcache, struct gdbarch): Add opaque declarations.
(current_regcache): Declare global variable.
(regcache_read, regcache_write): Add gdbarch parameter.
(regcache_save, regcache_save_no_passthrough)
(regcache_restore, regcache_restore_no_passthrough)
(regcache_dup, regcache_dup_no_passthrough)
(regcache_cpy, regcache_cpy_no_passthrough)
(deprecated_grub_regcache_for_registers)
(deprecated_grub_regcache_for_register_valid)
(regcache_valid_p): Add function declarations.
* regcache.c: Update copyright.
(regcache_descr_handle): New global variable.
(struct regcache_descr): Define.
(init_legacy_regcache_descr, init_regcache_descr): New functions.
(regcache_descr, xfree_regcache_descr): New functions.
(struct regcache): Define.
(regcache_xmalloc, regcache_xfree): New functions.
(regcache_cpy, regcache_cpy_no_passthrough): New functions.
(regcache_dup, regcache_dup_no_passthrough): New functions.
(regcache_valid_p, regcache_read_as_address): New functions.
(deprecated_grub_regcache_for_registers): New function.
(deprecated_grub_regcache_for_register_valid): New function.
(current_regcache): New global variable.
(register_buffer): Add regcache parameter. Update calls.
(regcache_read, regcache_write): Add regcache parameter. Rewrite.
(read_register_gen, write_register_gen): Update register_buffer
call. Test for legacy_p instead of gdbarch_register_read_p or
gdbarch_register_write_p.
(regcache_collect): Update register_buffer call.
(build_regcache): Rewrite. Use deprecated grub functions.
(regcache_save, regcache_save_no_passthrough): New functions.
(regcache_restore, regcache_restore_no_passthrough): New
functions.
(_initialize_regcache): Create the regcache_data_handle. Swap
current_regcache global variable.
* sh-tdep.c (sh_pseudo_register_read): Add current_regcache
parameter to regcache_read and regcache_write calls.
(sh4_register_read): Ditto.
(sh64_pseudo_register_read): Ditto.
(sh64_register_read): Ditto.
(sh_pseudo_register_write): Ditto.
(sh4_register_write): Ditto.
(sh64_pseudo_register_write): Ditto.
(sh64_register_write): Ditto.
* defs.h (XCALLOC): Define.
2002-06-20 03:13:51 +00:00
Andrew Cagney
c97dcfc7b8
* regcache.c (register_valid): Revise comments refering to "Not
...
available" and "unavailable".
* frame.c (frame_register_read): Ditto.
* findvar.c (value_of_register): Ditto.
2002-05-15 01:01:56 +00:00
Andrew Cagney
6d53172289
* config/m88k/tm-m88k.h: Update copyright.
...
(m88k_target_write_pc): Declare
(TARGET_WRITE_PC): Redefine using m88k_target_write_pc.
(M88K_NNPC_REGNUM): Rename NNPC_REGNUM.
(SHIFT_INST_REGS): Update definition.
* m88k-tdep.c (m88k_target_write_pc): New function. Implement
using old definition of TARGET_WRITE_PC.
* regcache.c (generic_target_write_pc): Delete code handling
NNPC_REGNUM.
* gdbarch.sh (NNPC_REGNUM): Delete.
* gdbarch.h, gdbarch.c: Regenerate.
* gdbint.texinfo (Target Architecture Definition): Delete
documentation on NNPC_REGNUM.
2002-05-13 17:20:59 +00:00
Andrew Cagney
8227c0ffb1
* h8500-tdep.c (h8500_write_fp): Delete function.
...
* dwarf2cfi.c (cfi_write_fp): Document as not used.
* mips-tdep.c (mips_gdbarch_init): Do not set write_fp.
* ia64-tdep.c (ia64_gdbarch_init): Do not set write_fp.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Do not set write_fp.
* rs6000-tdep.c (rs6000_gdbarch_init): Do not set write_fp.
* s390-tdep.c (s390_gdbarch_init): Do not set write_fp.
(s390_write_fp):
* sh-tdep.c (sh_gdbarch_init): Do not set write_fp.
* x86-64-tdep.c (i386_gdbarch_init): Do not set write_fp.
* d10v-tdep.c (d10v_gdbarch_init): Do not set write_fp.
(d10v_write_fp): Delete function.
* inferior.h (write_fp, generic_target_write_fp): Delete
declarations.
* regcache.c (generic_target_write_fp): Delete function.
(write_fp): Delete function.
* gdbarch.sh (TARGET_WRITE_FP): Delete.
* gdbarch.h, gdbarch.c: Regenerate.
* config/v850/tm-v850.h (TARGET_WRITE_FP): Delete macro.
* config/sparc/tm-sp64.h (TARGET_WRITE_FP): Delete macro.
(sparc64_write_fp): Delete declaration.
* config/h8500/tm-h8500.h (TARGET_WRITE_FP): Delete macro.
(h8500_write_fp): Delete declaration.
2002-04-06 00:02:52 +00:00
Martin Hunt
bdbe574731
2002-03-20 Martin M. Hunt <hunt@redhat.com>
...
* regcache.c (_initialize_regcache): No need to call
build_regcache() at this time; it gets called whenever
the gdbarch changes.
2002-03-21 02:13:05 +00:00
Michael Snyder
6af4589cb6
2002-02-05 Michael Snyder <msnyder@redhat.com>
...
* regcache.c (fetch_register): Call target_fetch_register
only if we don't call FETCH_PSEUDO_REGISTER.
(store_register): Call target_store_register only if we
don't call STORE_PSEUDO_REGISTER.
2002-02-06 03:16:38 +00:00
Michael Snyder
2076c72b06
2002-01-28 Michael Snyder <msnyder@redhat.com>
...
* regcache.c (legacy_read_register_gen): Need to be able to
read pseudo-register as well as real register.
(legacy_write_register_gen): Ditto.
2002-01-29 20:24:27 +00:00
Andrew Cagney
4ee3352dfb
* config/pa/tm-hppa.h (DEPRECATED_CLEAN_UP_REGISTER_VALUE): Rename
...
CLEAN_UP_REGISTER_VALUE.
* regcache.c (supply_register): Update only call.
2002-01-15 02:06:47 +00:00
Andrew Cagney
1c8649cd5f
Zap stray XCALLOC().
2001-12-07 15:00:59 +00:00
Andrew Cagney
31e9866ea6
Expand the regcache so that there is space for pseudo-registers.
2001-12-06 20:49:47 +00:00
Andrew Cagney
193cb69f7b
* TODO (register_buffer): Delete.
...
* regcache.c (register_buffer): Make static.
(regcache_collect): New function.
* regcache.h (register_buffer): Delete declaration.
(regcache_collect): Declare.
* remote.c (store_register_using_P): Rewrite using
regcache_collect.
(remote_store_registers): Ditto.
* go32-nat.c (store_register): Ditto.
2001-11-15 06:43:10 +00:00
Andrew Cagney
275f450c27
* regcache.c (read_register_bytes): When REGISTER_NAME indicates
...
that a register should be ignored, supply a value for the register
from the raw registers[] buffer.
2001-08-24 05:11:07 +00:00
Michael Snyder
1297a2f020
2001-08-10 Michael Snyder <msnyder@redhat.com>
...
* regcache.c (legacy_write_register_gen): Don't 'optimize out'
a write_register to a pseudo-reg. Target_store_pseudo_register
needs to get called, because these regs may be computed and may
have side-effects.
2001-08-10 21:52:17 +00:00
Andrew Cagney
01fb743397
Multi-arch CANNOT_FETCH_REGISTER() and CANNOT_STORE_REGISTER().
2001-06-15 23:50:46 +00:00