aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog19
-rw-r--r--gdb/arm-tdep.c4
-rw-r--r--gdb/config/nm-gnu.h2
-rw-r--r--gdb/cris-tdep.c4
-rw-r--r--gdb/doc/ChangeLog5
-rw-r--r--gdb/doc/gdbint.texinfo8
-rw-r--r--gdb/gdbarch.c26
-rw-r--r--gdb/gdbarch.h12
-rwxr-xr-xgdb/gdbarch.sh3
-rw-r--r--gdb/irix5-nat.c2
-rw-r--r--gdb/mcore-tdep.c1
-rw-r--r--gdb/mn10300-tdep.c1
-rw-r--r--gdb/ns32k-tdep.c2
-rw-r--r--gdb/regcache.c8
-rw-r--r--gdb/regcache.h4
-rw-r--r--gdb/remote-sds.c6
-rw-r--r--gdb/remote-vx.c2
-rw-r--r--gdb/remote.c6
-rw-r--r--gdb/sh64-tdep.c3
-rw-r--r--gdb/v850-tdep.c1
-rw-r--r--gdb/xstormy16-tdep.c1
21 files changed, 46 insertions, 74 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 5c3b2ab..64c61bf 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,24 @@
2004-08-02 Andrew Cagney <cagney@gnu.org>
+ * gdbarch.sh (deprecated_register_bytes): Delete.
+ * gdbarch.h, gdbarch.c: Re-generate.
+ * regcache.c (deprecated_register_bytes): New function.
+ * regcache.h (deprecated_register_bytes): Declare.
+ * xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
+ * v850-tdep.c (v850_gdbarch_init): Update.
+ * sh64-tdep.c (sh64_gdbarch_init): Update.
+ * ns32k-tdep.c (ns32k_gdbarch_init_32082): Update.
+ * mn10300-tdep.c (mn10300_gdbarch_init): Update.
+ * mcore-tdep.c (mcore_gdbarch_init): Update.
+ * cris-tdep.c (cris_gdbarch_init): Update.
+ * arm-tdep.c (arm_gdbarch_init): Update.
+ * remote.c (init_remote_state): Update.
+ * remote-vx.c (vx_prepare_to_store): Update.
+ * remote-sds.c (sds_fetch_registers, sds_prepare_to_store): Update.
+ * irix5-nat.c (fetch_core_registers): Update.
+ * cris-tdep.c (cris_register_bytes_ok): Update.
+ * config/nm-gnu.h (CHILD_PREPARE_TO_STORE): Update.
+
* mips-tdep.c (mips_gdbarch_init, mips_insn16_frame_cache)
(mips_insn16_frame_this_id, mips_insn16_frame_prev_register)
(mips_insn16_frame_unwind, mips_insn16_frame_sniffer)
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index 952b18f..43de3b1 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -2710,10 +2710,6 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_sp_regnum (gdbarch, ARM_SP_REGNUM);
set_gdbarch_pc_regnum (gdbarch, ARM_PC_REGNUM);
set_gdbarch_deprecated_register_byte (gdbarch, arm_register_byte);
- set_gdbarch_deprecated_register_bytes (gdbarch,
- (NUM_GREGS * INT_REGISTER_SIZE
- + NUM_FREGS * FP_REGISTER_SIZE
- + NUM_SREGS * STATUS_REGISTER_SIZE));
set_gdbarch_num_regs (gdbarch, NUM_GREGS + NUM_FREGS + NUM_SREGS);
set_gdbarch_register_type (gdbarch, arm_register_type);
diff --git a/gdb/config/nm-gnu.h b/gdb/config/nm-gnu.h
index ea6308a..bff33dd 100644
--- a/gdb/config/nm-gnu.h
+++ b/gdb/config/nm-gnu.h
@@ -30,7 +30,7 @@
extern char *gnu_target_pid_to_str (int pid);
/* Before storing, we need to read all the registers. */
-#define CHILD_PREPARE_TO_STORE() deprecated_read_register_bytes (0, NULL, DEPRECATED_REGISTER_BYTES)
+#define CHILD_PREPARE_TO_STORE() deprecated_read_register_bytes (0, NULL, deprecated_register_bytes ())
/* Don't do wait_for_inferior on attach. */
#define ATTACH_NO_WAIT
diff --git a/gdb/cris-tdep.c b/gdb/cris-tdep.c
index 0d1123d..be90dbf 100644
--- a/gdb/cris-tdep.c
+++ b/gdb/cris-tdep.c
@@ -1320,7 +1320,7 @@ cris_register_name (int regno)
static int
cris_register_bytes_ok (long bytes)
{
- return (bytes == DEPRECATED_REGISTER_BYTES);
+ return (bytes == deprecated_register_bytes ());
}
/* Extract from an array regbuf containing the raw register state a function
@@ -3850,8 +3850,6 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
internal_error (__FILE__, __LINE__, "cris_gdbarch_init: unknown CRIS version");
}
- set_gdbarch_deprecated_register_bytes (gdbarch, register_bytes);
-
/* Returns the register offset for the first byte of register regno's space
in the saved register state. */
set_gdbarch_deprecated_register_byte (gdbarch, cris_register_offset);
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog
index e41c243..90cea68 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,3 +1,8 @@
+2004-08-02 Andrew Cagney <cagney@gnu.org>
+
+ * gdbint.texinfo (Target Architecture Definition): Delete
+ description of DEPRECATED_REGISTER_BYTES.
+
2004-07-30 Baurjan Ismagulov <ibr@ata.cs.hun.edu.tr>
* gdb.texinfo (Source Path): Document the new behavior of
diff --git a/gdb/doc/gdbint.texinfo b/gdb/doc/gdbint.texinfo
index 76fa057..2f8e04a 100644
--- a/gdb/doc/gdbint.texinfo
+++ b/gdb/doc/gdbint.texinfo
@@ -3626,14 +3626,6 @@ reserved for that breakpoint, and @var{real_pc} set to @var{funaddr}.
This method replaces @code{CALL_DUMMY_LOCATION},
@code{DEPRECATED_REGISTER_SIZE}.
-@item DEPRECATED_REGISTER_BYTES
-@findex DEPRECATED_REGISTER_BYTES
-The total amount of space needed to store @value{GDBN}'s copy of the
-machine's register state.
-
-This is no longer needed. @value{GDBN} instead computes the size of the
-register buffer at run-time.
-
@item REGISTER_NAME(@var{i})
@findex REGISTER_NAME
Return the name of register @var{i} as a string. May return @code{NULL}
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index 0345070..5e7741b 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -146,7 +146,6 @@ struct gdbarch
gdbarch_register_name_ftype *register_name;
gdbarch_register_type_ftype *register_type;
gdbarch_deprecated_register_virtual_type_ftype *deprecated_register_virtual_type;
- int deprecated_register_bytes;
gdbarch_deprecated_register_byte_ftype *deprecated_register_byte;
gdbarch_deprecated_register_raw_size_ftype *deprecated_register_raw_size;
gdbarch_deprecated_register_virtual_size_ftype *deprecated_register_virtual_size;
@@ -291,7 +290,6 @@ struct gdbarch startup_gdbarch =
0, /* register_name */
0, /* register_type */
0, /* deprecated_register_virtual_type */
- 0, /* deprecated_register_bytes */
generic_register_byte, /* deprecated_register_byte */
generic_register_size, /* deprecated_register_raw_size */
generic_register_size, /* deprecated_register_virtual_size */
@@ -1198,14 +1196,6 @@ gdbarch_dump (struct gdbarch *current_gdbarch, struct ui_file *file)
fprintf_unfiltered (file,
"gdbarch_dump: deprecated_register_byte = <0x%lx>\n",
(long) current_gdbarch->deprecated_register_byte);
-#ifdef DEPRECATED_REGISTER_BYTES
- fprintf_unfiltered (file,
- "gdbarch_dump: DEPRECATED_REGISTER_BYTES # %s\n",
- XSTRING (DEPRECATED_REGISTER_BYTES));
-#endif
- fprintf_unfiltered (file,
- "gdbarch_dump: deprecated_register_bytes = %s\n",
- paddr_d (current_gdbarch->deprecated_register_bytes));
#ifdef DEPRECATED_REGISTER_RAW_SIZE_P
fprintf_unfiltered (file,
"gdbarch_dump: %s # %s\n",
@@ -2621,22 +2611,6 @@ set_gdbarch_deprecated_register_virtual_type (struct gdbarch *gdbarch,
}
int
-gdbarch_deprecated_register_bytes (struct gdbarch *gdbarch)
-{
- gdb_assert (gdbarch != NULL);
- if (gdbarch_debug >= 2)
- fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_bytes called\n");
- return gdbarch->deprecated_register_bytes;
-}
-
-void
-set_gdbarch_deprecated_register_bytes (struct gdbarch *gdbarch,
- int deprecated_register_bytes)
-{
- gdbarch->deprecated_register_bytes = deprecated_register_bytes;
-}
-
-int
gdbarch_deprecated_register_byte_p (struct gdbarch *gdbarch)
{
gdb_assert (gdbarch != NULL);
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index afddb7a..7b07130 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -481,18 +481,6 @@ extern void set_gdbarch_deprecated_register_virtual_type (struct gdbarch *gdbarc
#define DEPRECATED_REGISTER_VIRTUAL_TYPE(reg_nr) (gdbarch_deprecated_register_virtual_type (current_gdbarch, reg_nr))
#endif
-/* DEPRECATED_REGISTER_BYTES can be deleted. The value is computed
- from REGISTER_TYPE. */
-
-extern int gdbarch_deprecated_register_bytes (struct gdbarch *gdbarch);
-extern void set_gdbarch_deprecated_register_bytes (struct gdbarch *gdbarch, int deprecated_register_bytes);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_REGISTER_BYTES)
-#error "Non multi-arch definition of DEPRECATED_REGISTER_BYTES"
-#endif
-#if !defined (DEPRECATED_REGISTER_BYTES)
-#define DEPRECATED_REGISTER_BYTES (gdbarch_deprecated_register_bytes (current_gdbarch))
-#endif
-
/* If the value returned by DEPRECATED_REGISTER_BYTE agrees with the
register offsets computed using just REGISTER_TYPE, this can be
deleted. See: maint print registers. NOTE: cagney/2002-05-02: This
diff --git a/gdb/gdbarch.sh b/gdb/gdbarch.sh
index 563781d..7c687a3 100755
--- a/gdb/gdbarch.sh
+++ b/gdb/gdbarch.sh
@@ -463,9 +463,6 @@ f:=:const char *:register_name:int regnr:regnr
M::struct type *:register_type:int reg_nr:reg_nr
# REGISTER_TYPE is a direct replacement for DEPRECATED_REGISTER_VIRTUAL_TYPE.
F:=:struct type *:deprecated_register_virtual_type:int reg_nr:reg_nr
-# DEPRECATED_REGISTER_BYTES can be deleted. The value is computed
-# from REGISTER_TYPE.
-v:=:int:deprecated_register_bytes
# If the value returned by DEPRECATED_REGISTER_BYTE agrees with the
# register offsets computed using just REGISTER_TYPE, this can be
# deleted. See: maint print registers. NOTE: cagney/2002-05-02: This
diff --git a/gdb/irix5-nat.c b/gdb/irix5-nat.c
index 129742f..5cf6055 100644
--- a/gdb/irix5-nat.c
+++ b/gdb/irix5-nat.c
@@ -210,7 +210,7 @@ static void
fetch_core_registers (char *core_reg_sect, unsigned core_reg_size,
int which, CORE_ADDR reg_addr)
{
- if (core_reg_size == DEPRECATED_REGISTER_BYTES)
+ if (core_reg_size == deprecated_register_bytes ())
{
memcpy ((char *) deprecated_registers, core_reg_sect, core_reg_size);
}
diff --git a/gdb/mcore-tdep.c b/gdb/mcore-tdep.c
index 0313a6c..f2a283a 100644
--- a/gdb/mcore-tdep.c
+++ b/gdb/mcore-tdep.c
@@ -1041,7 +1041,6 @@ mcore_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_deprecated_register_virtual_size (gdbarch, mcore_register_size);
set_gdbarch_deprecated_register_raw_size (gdbarch, mcore_register_size);
set_gdbarch_deprecated_register_byte (gdbarch, mcore_register_byte);
- set_gdbarch_deprecated_register_bytes (gdbarch, MCORE_REG_SIZE * MCORE_NUM_REGS);
set_gdbarch_num_regs (gdbarch, MCORE_NUM_REGS);
set_gdbarch_pc_regnum (gdbarch, 64);
set_gdbarch_sp_regnum (gdbarch, 0);
diff --git a/gdb/mn10300-tdep.c b/gdb/mn10300-tdep.c
index 624ce67..e9b7200 100644
--- a/gdb/mn10300-tdep.c
+++ b/gdb/mn10300-tdep.c
@@ -1290,7 +1290,6 @@ mn10300_gdbarch_init (struct gdbarch_info info,
set_gdbarch_num_regs (gdbarch, num_regs);
set_gdbarch_register_name (gdbarch, register_name);
set_gdbarch_deprecated_register_size (gdbarch, 4);
- set_gdbarch_deprecated_register_bytes (gdbarch, num_regs * gdbarch_deprecated_register_size (gdbarch));
set_gdbarch_deprecated_register_raw_size (gdbarch, mn10300_register_raw_size);
set_gdbarch_deprecated_register_byte (gdbarch, mn10300_register_byte);
set_gdbarch_deprecated_register_virtual_size (gdbarch, mn10300_register_virtual_size);
diff --git a/gdb/ns32k-tdep.c b/gdb/ns32k-tdep.c
index 500f3a0..8813cb2 100644
--- a/gdb/ns32k-tdep.c
+++ b/gdb/ns32k-tdep.c
@@ -475,7 +475,6 @@ ns32k_gdbarch_init_32082 (struct gdbarch *gdbarch)
set_gdbarch_num_regs (gdbarch, NS32K_NUM_REGS_32082);
set_gdbarch_register_name (gdbarch, ns32k_register_name_32082);
- set_gdbarch_deprecated_register_bytes (gdbarch, NS32K_REGISTER_BYTES_32082);
set_gdbarch_deprecated_register_byte (gdbarch, ns32k_register_byte_32082);
}
@@ -485,7 +484,6 @@ ns32k_gdbarch_init_32382 (struct gdbarch *gdbarch)
set_gdbarch_num_regs (gdbarch, NS32K_NUM_REGS_32382);
set_gdbarch_register_name (gdbarch, ns32k_register_name_32382);
- set_gdbarch_deprecated_register_bytes (gdbarch, NS32K_REGISTER_BYTES_32382);
set_gdbarch_deprecated_register_byte (gdbarch, ns32k_register_byte_32382);
}
diff --git a/gdb/regcache.c b/gdb/regcache.c
index ccc82a3..d933d59 100644
--- a/gdb/regcache.c
+++ b/gdb/regcache.c
@@ -943,6 +943,14 @@ register_offset_hack (struct gdbarch *gdbarch, int regnum)
return descr->register_offset[regnum];
}
+/* Hack to keep code using register_bytes working. */
+
+int
+deprecated_register_bytes (void)
+{
+ return current_regcache->descr->sizeof_raw_registers;
+}
+
/* Return the contents of register REGNUM as an unsigned integer. */
ULONGEST
diff --git a/gdb/regcache.h b/gdb/regcache.h
index 9653dd9..ed9c990 100644
--- a/gdb/regcache.h
+++ b/gdb/regcache.h
@@ -113,6 +113,10 @@ extern void regcache_raw_collect (const struct regcache *regcache,
extern int register_offset_hack (struct gdbarch *gdbarch, int regnum);
+/* Similar. The total number of bytes occupied by a regcache. */
+
+extern int deprecated_register_bytes (void );
+
/* The type of a register. This function is slightly more efficient
then its gdbarch vector counterpart since it returns a precomputed
diff --git a/gdb/remote-sds.c b/gdb/remote-sds.c
index 967ad3e..7f16c74 100644
--- a/gdb/remote-sds.c
+++ b/gdb/remote-sds.c
@@ -456,10 +456,10 @@ sds_fetch_registers (int regno)
{
unsigned char buf[PBUFSIZ];
int i, retlen;
- char *regs = alloca (DEPRECATED_REGISTER_BYTES);
+ char *regs = alloca (deprecated_register_bytes ());
/* Unimplemented registers read as all bits zero. */
- memset (regs, 0, DEPRECATED_REGISTER_BYTES);
+ memset (regs, 0, deprecated_register_bytes ());
buf[0] = 18;
buf[1] = 1;
@@ -493,7 +493,7 @@ static void
sds_prepare_to_store (void)
{
/* Make sure the entire registers array is valid. */
- deprecated_read_register_bytes (0, (char *) NULL, DEPRECATED_REGISTER_BYTES);
+ deprecated_read_register_bytes (0, (char *) NULL, deprecated_register_bytes ());
}
/* Store register REGNO, or all registers if REGNO == -1, from the contents
diff --git a/gdb/remote-vx.c b/gdb/remote-vx.c
index a121bed..7f4ed0f 100644
--- a/gdb/remote-vx.c
+++ b/gdb/remote-vx.c
@@ -466,7 +466,7 @@ static void
vx_prepare_to_store (void)
{
/* Fetch all registers, if any of them are not yet fetched. */
- deprecated_read_register_bytes (0, NULL, DEPRECATED_REGISTER_BYTES);
+ deprecated_read_register_bytes (0, NULL, deprecated_register_bytes ());
}
/* Copy LEN bytes to or from remote inferior's memory starting at MEMADDR
diff --git a/gdb/remote.c b/gdb/remote.c
index 95b0bde..30ae26d 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -250,8 +250,8 @@ init_remote_state (struct gdbarch *gdbarch)
int regnum;
struct remote_state *rs = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct remote_state);
- if (DEPRECATED_REGISTER_BYTES != 0)
- rs->sizeof_g_packet = DEPRECATED_REGISTER_BYTES;
+ if (deprecated_register_bytes () != 0)
+ rs->sizeof_g_packet = deprecated_register_bytes ();
else
rs->sizeof_g_packet = 0;
@@ -268,7 +268,7 @@ init_remote_state (struct gdbarch *gdbarch)
/* ...name = REGISTER_NAME (regnum); */
/* Compute packet size by accumulating the size of all registers. */
- if (DEPRECATED_REGISTER_BYTES == 0)
+ if (deprecated_register_bytes () == 0)
rs->sizeof_g_packet += register_size (current_gdbarch, regnum);
}
diff --git a/gdb/sh64-tdep.c b/gdb/sh64-tdep.c
index a753213..97a4681 100644
--- a/gdb/sh64-tdep.c
+++ b/gdb/sh64-tdep.c
@@ -2850,9 +2850,6 @@ sh64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
/* The number of real registers is the same whether we are in
ISA16(compact) or ISA32(media). */
set_gdbarch_num_regs (gdbarch, SIM_SH64_NR_REGS);
- set_gdbarch_deprecated_register_bytes (gdbarch,
- ((SIM_SH64_NR_FP_REGS + 1) * 4)
- + (SIM_SH64_NR_REGS - SIM_SH64_NR_FP_REGS -1) * 8);
set_gdbarch_register_name (gdbarch, sh64_register_name);
set_gdbarch_register_type (gdbarch, sh64_register_type);
diff --git a/gdb/v850-tdep.c b/gdb/v850-tdep.c
index a06d75d..79dbafc 100644
--- a/gdb/v850-tdep.c
+++ b/gdb/v850-tdep.c
@@ -1191,7 +1191,6 @@ v850_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_pc_regnum (gdbarch, E_PC_REGNUM);
set_gdbarch_register_name (gdbarch, v850_register_name);
set_gdbarch_deprecated_register_size (gdbarch, v850_reg_size);
- set_gdbarch_deprecated_register_bytes (gdbarch, E_ALL_REGS_SIZE);
set_gdbarch_deprecated_register_byte (gdbarch, v850_register_byte);
set_gdbarch_deprecated_register_raw_size (current_gdbarch, gdbarch, v850_register_raw_size);
set_gdbarch_deprecated_register_virtual_size (gdbarch, v850_register_raw_size);
diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c
index eb965fd..771a48e 100644
--- a/gdb/xstormy16-tdep.c
+++ b/gdb/xstormy16-tdep.c
@@ -1127,7 +1127,6 @@ xstormy16_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_pc_regnum (gdbarch, E_PC_REGNUM);
set_gdbarch_register_name (gdbarch, xstormy16_register_name);
set_gdbarch_deprecated_register_size (gdbarch, xstormy16_reg_size);
- set_gdbarch_deprecated_register_bytes (gdbarch, E_ALL_REGS_SIZE);
set_gdbarch_deprecated_register_byte (gdbarch, xstormy16_register_byte);
set_gdbarch_deprecated_register_raw_size (gdbarch, xstormy16_register_raw_size);
set_gdbarch_deprecated_register_virtual_size (gdbarch, xstormy16_register_raw_size);