aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@gnu.org>2005-05-14 19:43:18 +0000
committerMark Kettenis <kettenis@gnu.org>2005-05-14 19:43:18 +0000
commit47a355223da42cb96d6a258bd09b55a7fa549149 (patch)
tree346e5ecfb87f0713748451e80fcd4677823f1e8c /gdb
parentc872b71745c25d14480c288107fb1e0c8d8ca5ac (diff)
downloadfsf-binutils-gdb-47a355223da42cb96d6a258bd09b55a7fa549149.zip
fsf-binutils-gdb-47a355223da42cb96d6a258bd09b55a7fa549149.tar.gz
fsf-binutils-gdb-47a355223da42cb96d6a258bd09b55a7fa549149.tar.bz2
* mips-tdep.c (mips_pseudo_register_read)
(mips_pseudo_register_write): Change type of last argument to `gdb_byte *'. (mips_register_to_value, mips_value_to_register): Change type of last argument to `gdb_byte *'. Remove casts that are no longer needed. (mips_fetch_instruction, fetch_mips_16): Use gdb_byte for buf. (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call) (mips_o32_push_dummy_call, mips_o32_return_value): Use `const gdb_byte *' for val and gdb_byte for valbuf. Remove casts that are no longer needed. (mips_eabi_return_value, mips_n32n64_return_value) (mips_o32_return_value, mips_o64_return_value): Change type of readbuf and writebuf arguments to `gdb_byte *'. (mips_read_fp_register_single): Change type of last argument to `gdb_byte *'. Use `gdb_byte *' for raw_buffer. (mips_read_fp_register_double): Change type of last argument to `gdb_byte *'. (mips_print_fp_register): Use `gdb_byte *' for raw_buffer. Remove casts that are no longer needed. (mips_print_register, print_gp_register_row): Use gdb_byte for raw_buffer. Remove casts that are no longer needed. (mips_single_step_through_delay): Use gdb_byte for buf. (mips_breakpoint_from_pc): Change return type to `const gdb_byte *'. Use gdb_byte for mips16_big_breakpoint, big_breakpoint, pmon_big_breakpoint, idt_big_breakpoint, mips16_little_breakpoint, little_breakpoint, pmon_little_breakpoint and idt_little_breakpoint. (mips_integer_to_address): Use `gdb_byte *' for tmp.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog30
-rw-r--r--gdb/mips-tdep.c94
2 files changed, 76 insertions, 48 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ee83172..611a65b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,35 @@
2005-05-14 Mark Kettenis <kettenis@gnu.org>
+ * mips-tdep.c (mips_pseudo_register_read)
+ (mips_pseudo_register_write): Change type of last argument to
+ `gdb_byte *'.
+ (mips_register_to_value, mips_value_to_register): Change type of
+ last argument to `gdb_byte *'. Remove casts that are no longer
+ needed.
+ (mips_fetch_instruction, fetch_mips_16): Use gdb_byte for buf.
+ (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
+ (mips_o32_push_dummy_call, mips_o32_return_value): Use `const
+ gdb_byte *' for val and gdb_byte for valbuf. Remove casts that
+ are no longer needed.
+ (mips_eabi_return_value, mips_n32n64_return_value)
+ (mips_o32_return_value, mips_o64_return_value): Change type of
+ readbuf and writebuf arguments to `gdb_byte *'.
+ (mips_read_fp_register_single): Change type of last argument to
+ `gdb_byte *'. Use `gdb_byte *' for raw_buffer.
+ (mips_read_fp_register_double): Change type of last argument to
+ `gdb_byte *'.
+ (mips_print_fp_register): Use `gdb_byte *' for raw_buffer. Remove
+ casts that are no longer needed.
+ (mips_print_register, print_gp_register_row): Use gdb_byte for
+ raw_buffer. Remove casts that are no longer needed.
+ (mips_single_step_through_delay): Use gdb_byte for buf.
+ (mips_breakpoint_from_pc): Change return type to `const gdb_byte
+ *'. Use gdb_byte for mips16_big_breakpoint, big_breakpoint,
+ pmon_big_breakpoint, idt_big_breakpoint, mips16_little_breakpoint,
+ little_breakpoint, pmon_little_breakpoint and
+ idt_little_breakpoint.
+ (mips_integer_to_address): Use `gdb_byte *' for tmp.
+
* config/m68k/obsd.mt (DEPRECATED_TM_FILE): Remove.
* config/i386/obsd.mt (DEPRECATED_TM_FILE): Remove.
* config/i386/obsd64.mt (DEPRECATED_TM_FILE): Remove.
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index 73125b3..ff86692 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -1,8 +1,8 @@
/* Target-dependent code for the MIPS architecture, for GDB, the GNU Debugger.
Copyright 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
- 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software
- Foundation, Inc.
+ 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+ Free Software Foundation, Inc.
Contributed by Alessandro Forin(af@cs.cmu.edu) at CMU
and by Per Bothner(bothner@cs.wisc.edu) at U.Wisconsin.
@@ -568,7 +568,7 @@ mips_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
static void
mips_pseudo_register_read (struct gdbarch *gdbarch, struct regcache *regcache,
- int cookednum, void *buf)
+ int cookednum, gdb_byte *buf)
{
int rawnum = cookednum % NUM_REGS;
gdb_assert (cookednum >= NUM_REGS && cookednum < 2 * NUM_REGS);
@@ -590,7 +590,7 @@ mips_pseudo_register_read (struct gdbarch *gdbarch, struct regcache *regcache,
static void
mips_pseudo_register_write (struct gdbarch *gdbarch,
struct regcache *regcache, int cookednum,
- const void *buf)
+ const gdb_byte *buf)
{
int rawnum = cookednum % NUM_REGS;
gdb_assert (cookednum >= NUM_REGS && cookednum < 2 * NUM_REGS);
@@ -654,18 +654,18 @@ mips_convert_register_p (int regnum, struct type *type)
static void
mips_register_to_value (struct frame_info *frame, int regnum,
- struct type *type, void *to)
+ struct type *type, gdb_byte *to)
{
- get_frame_register (frame, regnum + 0, (char *) to + 4);
- get_frame_register (frame, regnum + 1, (char *) to + 0);
+ get_frame_register (frame, regnum + 0, to + 4);
+ get_frame_register (frame, regnum + 1, to + 0);
}
static void
mips_value_to_register (struct frame_info *frame, int regnum,
- struct type *type, const void *from)
+ struct type *type, const gdb_byte *from)
{
- put_frame_register (frame, regnum + 0, (const char *) from + 4);
- put_frame_register (frame, regnum + 1, (const char *) from + 0);
+ put_frame_register (frame, regnum + 0, from + 4);
+ put_frame_register (frame, regnum + 1, from + 0);
}
/* Return the GDB type object for the "standard" data type of data in
@@ -847,7 +847,7 @@ mips_write_pc (CORE_ADDR pc, ptid_t ptid)
static ULONGEST
mips_fetch_instruction (CORE_ADDR addr)
{
- char buf[MIPS_INSN32_SIZE];
+ gdb_byte buf[MIPS_INSN32_SIZE];
int instlen;
int status;
@@ -1108,7 +1108,7 @@ extended_offset (unsigned int extension)
static unsigned int
fetch_mips_16 (CORE_ADDR pc)
{
- char buf[8];
+ gdb_byte buf[8];
pc &= 0xfffffffe; /* clear the low order bit */
target_read_memory (pc, buf, 2);
return extract_unsigned_integer (buf, 2);
@@ -2442,8 +2442,8 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
from first to last. */
for (argnum = 0; argnum < nargs; argnum++)
{
- char *val;
- char valbuf[MAX_REGISTER_SIZE];
+ const gdb_byte *val;
+ gdb_byte valbuf[MAX_REGISTER_SIZE];
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
int len = TYPE_LENGTH (arg_type);
@@ -2468,7 +2468,7 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
fprintf_unfiltered (gdb_stdlog, " push");
}
else
- val = (char *) value_contents (arg);
+ val = value_contents (arg);
/* 32-bit ABIs always start floating point arguments in an
even-numbered floating point register. Round the FP register
@@ -2652,7 +2652,7 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
static enum return_value_convention
mips_eabi_return_value (struct gdbarch *gdbarch,
struct type *type, struct regcache *regcache,
- void *readbuf, const void *writebuf)
+ gdb_byte *readbuf, const gdb_byte *writebuf)
{
if (TYPE_LENGTH (type) > 2 * mips_abi_regsize (gdbarch))
return RETURN_VALUE_STRUCT_CONVENTION;
@@ -2725,7 +2725,7 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
from first to last. */
for (argnum = 0; argnum < nargs; argnum++)
{
- char *val;
+ const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
int len = TYPE_LENGTH (arg_type);
@@ -2736,7 +2736,7 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
"mips_n32n64_push_dummy_call: %d len=%d type=%d",
argnum + 1, len, (int) typecode);
- val = (char *) value_contents (arg);
+ val = value_contents (arg);
if (fp_register_arg_p (typecode, arg_type)
&& float_argreg <= MIPS_LAST_FP_ARG_REGNUM)
@@ -2902,7 +2902,7 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
static enum return_value_convention
mips_n32n64_return_value (struct gdbarch *gdbarch,
struct type *type, struct regcache *regcache,
- void *readbuf, const void *writebuf)
+ gdb_byte *readbuf, const gdb_byte *writebuf)
{
struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
if (TYPE_CODE (type) == TYPE_CODE_STRUCT
@@ -3065,7 +3065,7 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
from first to last. */
for (argnum = 0; argnum < nargs; argnum++)
{
- char *val;
+ const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
int len = TYPE_LENGTH (arg_type);
@@ -3076,7 +3076,7 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
"mips_o32_push_dummy_call: %d len=%d type=%d",
argnum + 1, len, (int) typecode);
- val = (char *) value_contents (arg);
+ val = value_contents (arg);
/* 32-bit ABIs always start floating point arguments in an
even-numbered floating point register. Round the FP register
@@ -3317,7 +3317,7 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
static enum return_value_convention
mips_o32_return_value (struct gdbarch *gdbarch, struct type *type,
struct regcache *regcache,
- void *readbuf, const void *writebuf)
+ gdb_byte *readbuf, const gdb_byte *writebuf)
{
struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
@@ -3519,7 +3519,7 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
from first to last. */
for (argnum = 0; argnum < nargs; argnum++)
{
- char *val;
+ const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
int len = TYPE_LENGTH (arg_type);
@@ -3530,7 +3530,7 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
"mips_o64_push_dummy_call: %d len=%d type=%d",
argnum + 1, len, (int) typecode);
- val = (char *) value_contents (arg);
+ val = value_contents (arg);
/* 32-bit ABIs always start floating point arguments in an
even-numbered floating point register. Round the FP register
@@ -3771,7 +3771,7 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
static enum return_value_convention
mips_o64_return_value (struct gdbarch *gdbarch,
struct type *type, struct regcache *regcache,
- void *readbuf, const void *writebuf)
+ gdb_byte *readbuf, const gdb_byte *writebuf)
{
return RETURN_VALUE_STRUCT_CONVENTION;
}
@@ -3829,10 +3829,10 @@ mips_double_register_type (void)
static void
mips_read_fp_register_single (struct frame_info *frame, int regno,
- char *rare_buffer)
+ gdb_byte *rare_buffer)
{
int raw_size = register_size (current_gdbarch, regno);
- char *raw_buffer = alloca (raw_size);
+ gdb_byte *raw_buffer = alloca (raw_size);
if (!frame_register_read (frame, regno, raw_buffer))
error (_("can't read register %d (%s)"), regno, REGISTER_NAME (regno));
@@ -3861,7 +3861,7 @@ mips_read_fp_register_single (struct frame_info *frame, int regno,
static void
mips_read_fp_register_double (struct frame_info *frame, int regno,
- char *rare_buffer)
+ gdb_byte *rare_buffer)
{
int raw_size = register_size (current_gdbarch, regno);
@@ -3898,14 +3898,12 @@ static void
mips_print_fp_register (struct ui_file *file, struct frame_info *frame,
int regnum)
{ /* do values for FP (float) regs */
- char *raw_buffer;
+ gdb_byte *raw_buffer;
double doub, flt1; /* doubles extracted from raw hex data */
int inv1, inv2;
- raw_buffer =
- (char *) alloca (2 *
- register_size (current_gdbarch,
- mips_regnum (current_gdbarch)->fp0));
+ raw_buffer = alloca (2 * register_size (current_gdbarch,
+ mips_regnum (current_gdbarch)->fp0));
fprintf_filtered (file, "%s:", REGISTER_NAME (regnum));
fprintf_filtered (file, "%*s", 4 - (int) strlen (REGISTER_NAME (regnum)),
@@ -3972,7 +3970,7 @@ mips_print_register (struct ui_file *file, struct frame_info *frame,
int regnum, int all)
{
struct gdbarch *gdbarch = get_frame_arch (frame);
- char raw_buffer[MAX_REGISTER_SIZE];
+ gdb_byte raw_buffer[MAX_REGISTER_SIZE];
int offset;
if (TYPE_CODE (gdbarch_register_type (gdbarch, regnum)) == TYPE_CODE_FLT)
@@ -4033,7 +4031,7 @@ print_gp_register_row (struct ui_file *file, struct frame_info *frame,
{
struct gdbarch *gdbarch = get_frame_arch (frame);
/* do values for GP (int) regs */
- char raw_buffer[MAX_REGISTER_SIZE];
+ gdb_byte raw_buffer[MAX_REGISTER_SIZE];
int ncols = (mips_abi_regsize (gdbarch) == 8 ? 4 : 8); /* display cols per row */
int col, byte;
int regnum;
@@ -4082,11 +4080,11 @@ print_gp_register_row (struct ui_file *file, struct frame_info *frame,
register_size (current_gdbarch,
regnum) - register_size (current_gdbarch, regnum);
byte < register_size (current_gdbarch, regnum); byte++)
- fprintf_filtered (file, "%02x", (unsigned char) raw_buffer[byte]);
+ fprintf_filtered (file, "%02x", raw_buffer[byte]);
else
for (byte = register_size (current_gdbarch, regnum) - 1;
byte >= 0; byte--)
- fprintf_filtered (file, "%02x", (unsigned char) raw_buffer[byte]);
+ fprintf_filtered (file, "%02x", raw_buffer[byte]);
fprintf_filtered (file, " ");
col++;
}
@@ -4152,7 +4150,7 @@ mips_single_step_through_delay (struct gdbarch *gdbarch,
struct frame_info *frame)
{
CORE_ADDR pc = get_frame_pc (frame);
- char buf[MIPS_INSN32_SIZE];
+ gdb_byte buf[MIPS_INSN32_SIZE];
/* There is no branch delay slot on MIPS16. */
if (mips_pc_is_mips16 (pc))
@@ -4388,14 +4386,14 @@ gdb_print_insn_mips (bfd_vma memaddr, struct disassemble_info *info)
(if necessary) to point to the actual memory location where the
breakpoint should be inserted. */
-static const unsigned char *
+static const gdb_byte *
mips_breakpoint_from_pc (CORE_ADDR *pcptr, int *lenptr)
{
if (TARGET_BYTE_ORDER == BFD_ENDIAN_BIG)
{
if (mips_pc_is_mips16 (*pcptr))
{
- static unsigned char mips16_big_breakpoint[] = { 0xe8, 0xa5 };
+ static gdb_byte mips16_big_breakpoint[] = { 0xe8, 0xa5 };
*pcptr = unmake_mips16_addr (*pcptr);
*lenptr = sizeof (mips16_big_breakpoint);
return mips16_big_breakpoint;
@@ -4405,9 +4403,9 @@ mips_breakpoint_from_pc (CORE_ADDR *pcptr, int *lenptr)
/* The IDT board uses an unusual breakpoint value, and
sometimes gets confused when it sees the usual MIPS
breakpoint instruction. */
- static unsigned char big_breakpoint[] = { 0, 0x5, 0, 0xd };
- static unsigned char pmon_big_breakpoint[] = { 0, 0, 0, 0xd };
- static unsigned char idt_big_breakpoint[] = { 0, 0, 0x0a, 0xd };
+ static gdb_byte big_breakpoint[] = { 0, 0x5, 0, 0xd };
+ static gdb_byte pmon_big_breakpoint[] = { 0, 0, 0, 0xd };
+ static gdb_byte idt_big_breakpoint[] = { 0, 0, 0x0a, 0xd };
*lenptr = sizeof (big_breakpoint);
@@ -4425,16 +4423,16 @@ mips_breakpoint_from_pc (CORE_ADDR *pcptr, int *lenptr)
{
if (mips_pc_is_mips16 (*pcptr))
{
- static unsigned char mips16_little_breakpoint[] = { 0xa5, 0xe8 };
+ static gdb_byte mips16_little_breakpoint[] = { 0xa5, 0xe8 };
*pcptr = unmake_mips16_addr (*pcptr);
*lenptr = sizeof (mips16_little_breakpoint);
return mips16_little_breakpoint;
}
else
{
- static unsigned char little_breakpoint[] = { 0xd, 0, 0x5, 0 };
- static unsigned char pmon_little_breakpoint[] = { 0xd, 0, 0, 0 };
- static unsigned char idt_little_breakpoint[] = { 0xd, 0x0a, 0, 0 };
+ static gdb_byte little_breakpoint[] = { 0xd, 0, 0x5, 0 };
+ static gdb_byte pmon_little_breakpoint[] = { 0xd, 0, 0, 0 };
+ static gdb_byte idt_little_breakpoint[] = { 0xd, 0x0a, 0, 0 };
*lenptr = sizeof (little_breakpoint);
@@ -4615,7 +4613,7 @@ static CORE_ADDR
mips_integer_to_address (struct gdbarch *gdbarch,
struct type *type, const bfd_byte *buf)
{
- char *tmp = alloca (TYPE_LENGTH (builtin_type_void_data_ptr));
+ gdb_byte *tmp = alloca (TYPE_LENGTH (builtin_type_void_data_ptr));
LONGEST val = unpack_long (type, buf);
store_signed_integer (tmp, TYPE_LENGTH (builtin_type_void_data_ptr), val);
return extract_signed_integer (tmp,