From 87783b8b9e34ff41cd588c28bc8bbb77c2c62753 Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Wed, 14 Jan 2004 02:51:42 +0000 Subject: [PATCH] 2004-01-12 Andrew Cagney * mips-tdep.c (mips_convert_register_p): Handle both raw and cooked floating-point registers. (mips_gdbarch_init): Set convert_register_p, register_to_value, and value_to_register. --- gdb/ChangeLog | 7 +++++++ gdb/mips-tdep.c | 7 ++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b161cfe2c4..b9364b276d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2004-01-12 Andrew Cagney + + * mips-tdep.c (mips_convert_register_p): Handle both raw and + cooked floating-point registers. + (mips_gdbarch_init): Set convert_register_p, register_to_value, + and value_to_register. + 2004-01-13 Andrew Cagney * gdbarch.sh (FUNCTION_START_OFFSET): Make zero the default. diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c index 6b89c0aa6a..a7d4af445f 100644 --- a/gdb/mips-tdep.c +++ b/gdb/mips-tdep.c @@ -652,7 +652,8 @@ mips_convert_register_p (int regnum, struct type *type) { return (TARGET_BYTE_ORDER == BFD_ENDIAN_BIG && register_size (current_gdbarch, regnum) == 4 - && (regnum) >= mips_regnum (current_gdbarch)->fp0 && (regnum) < mips_regnum (current_gdbarch)->fp0 + 32 + && (regnum % NUM_REGS) >= mips_regnum (current_gdbarch)->fp0 + && (regnum % NUM_REGS) < mips_regnum (current_gdbarch)->fp0 + 32 && TYPE_CODE(type) == TYPE_CODE_FLT && TYPE_LENGTH(type) == 8); } @@ -6031,6 +6032,10 @@ mips_gdbarch_init (struct gdbarch_info info, set_gdbarch_frame_align (gdbarch, mips_frame_align); set_gdbarch_deprecated_save_dummy_frame_tos (gdbarch, generic_save_dummy_frame_tos); + set_gdbarch_convert_register_p (gdbarch, mips_convert_register_p); + set_gdbarch_register_to_value (gdbarch, mips_register_to_value); + set_gdbarch_value_to_register (gdbarch, mips_value_to_register); + set_gdbarch_deprecated_frame_chain (gdbarch, mips_frame_chain); set_gdbarch_frameless_function_invocation (gdbarch, generic_frameless_function_invocation_not);