mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-21 02:24:17 +08:00
2002-08-03 Andrew Cagney <cagney@redhat.com>
* m68hc11-tdep.c (m68hc11_pseudo_register_read): Replace m68hc11_fetch_pseudo_register. (m68hc11_pseudo_register_write): Replace m68hc11_store_pseudo_register. (m68hc11_gdbarch_init): Update.
This commit is contained in:
@ -1,3 +1,11 @@
|
|||||||
|
2002-08-03 Andrew Cagney <cagney@redhat.com>
|
||||||
|
|
||||||
|
* m68hc11-tdep.c (m68hc11_pseudo_register_read): Replace
|
||||||
|
m68hc11_fetch_pseudo_register.
|
||||||
|
(m68hc11_pseudo_register_write): Replace
|
||||||
|
m68hc11_store_pseudo_register.
|
||||||
|
(m68hc11_gdbarch_init): Update.
|
||||||
|
|
||||||
Fri Aug 2 15:53:50 2002 Andrew Cagney <cagney@redhat.com>
|
Fri Aug 2 15:53:50 2002 Andrew Cagney <cagney@redhat.com>
|
||||||
|
|
||||||
* gdbarch.sh: Include "gdb_string.h".
|
* gdbarch.sh: Include "gdb_string.h".
|
||||||
|
@ -218,11 +218,11 @@ m68hc11_which_soft_register (CORE_ADDR addr)
|
|||||||
/* Fetch a pseudo register. The 68hc11 soft registers are treated like
|
/* Fetch a pseudo register. The 68hc11 soft registers are treated like
|
||||||
pseudo registers. They are located in memory. Translate the register
|
pseudo registers. They are located in memory. Translate the register
|
||||||
fetch into a memory read. */
|
fetch into a memory read. */
|
||||||
void
|
static void
|
||||||
m68hc11_fetch_pseudo_register (int regno)
|
m68hc11_pseudo_register_read (struct gdbarch *gdbarch,
|
||||||
|
struct regcache *regcache,
|
||||||
|
int regno, void *buf)
|
||||||
{
|
{
|
||||||
char buf[MAX_REGISTER_RAW_SIZE];
|
|
||||||
|
|
||||||
m68hc11_initialize_register_info ();
|
m68hc11_initialize_register_info ();
|
||||||
|
|
||||||
/* Fetch a soft register: translate into a memory read. */
|
/* Fetch a soft register: translate into a memory read. */
|
||||||
@ -234,23 +234,24 @@ m68hc11_fetch_pseudo_register (int regno)
|
|||||||
{
|
{
|
||||||
memset (buf, 0, 2);
|
memset (buf, 0, 2);
|
||||||
}
|
}
|
||||||
supply_register (regno, buf);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Store a pseudo register. Translate the register store
|
/* Store a pseudo register. Translate the register store
|
||||||
into a memory write. */
|
into a memory write. */
|
||||||
static void
|
static void
|
||||||
m68hc11_store_pseudo_register (int regno)
|
m68hc11_pseudo_register_write (struct gdbarch *gdbarch,
|
||||||
|
struct regcache *regcache,
|
||||||
|
int regno, const void *buf)
|
||||||
{
|
{
|
||||||
m68hc11_initialize_register_info ();
|
m68hc11_initialize_register_info ();
|
||||||
|
|
||||||
/* Store a soft register: translate into a memory write. */
|
/* Store a soft register: translate into a memory write. */
|
||||||
if (soft_regs[regno].name)
|
if (soft_regs[regno].name)
|
||||||
{
|
{
|
||||||
char buf[MAX_REGISTER_RAW_SIZE];
|
const int regsize = 2;
|
||||||
|
char *tmp = alloca (regsize);
|
||||||
read_register_gen (regno, buf);
|
memcpy (tmp, buf, regsize);
|
||||||
target_write_memory (soft_regs[regno].addr, buf, 2);
|
target_write_memory (soft_regs[regno].addr, tmp, regsize);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1098,8 +1099,8 @@ m68hc11_gdbarch_init (struct gdbarch_info info,
|
|||||||
set_gdbarch_register_size (gdbarch, 2);
|
set_gdbarch_register_size (gdbarch, 2);
|
||||||
set_gdbarch_register_bytes (gdbarch, M68HC11_ALL_REGS * 2);
|
set_gdbarch_register_bytes (gdbarch, M68HC11_ALL_REGS * 2);
|
||||||
set_gdbarch_register_virtual_type (gdbarch, m68hc11_register_virtual_type);
|
set_gdbarch_register_virtual_type (gdbarch, m68hc11_register_virtual_type);
|
||||||
set_gdbarch_fetch_pseudo_register (gdbarch, m68hc11_fetch_pseudo_register);
|
set_gdbarch_pseudo_register_read (gdbarch, m68hc11_pseudo_register_read);
|
||||||
set_gdbarch_store_pseudo_register (gdbarch, m68hc11_store_pseudo_register);
|
set_gdbarch_pseudo_register_write (gdbarch, m68hc11_pseudo_register_write);
|
||||||
|
|
||||||
set_gdbarch_use_generic_dummy_frames (gdbarch, 1);
|
set_gdbarch_use_generic_dummy_frames (gdbarch, 1);
|
||||||
set_gdbarch_call_dummy_length (gdbarch, 0);
|
set_gdbarch_call_dummy_length (gdbarch, 0);
|
||||||
|
Reference in New Issue
Block a user