summaryrefslogtreecommitdiff
path: root/gdb/hppa-tdep.c
diff options
context:
space:
mode:
authorDave Anglin <dave.anglin@nrc.ca>2008-09-15 01:56:31 +0000
committerDave Anglin <dave.anglin@nrc.ca>2008-09-15 01:56:31 +0000
commit410fd7ce049b6c6f43d2eaee9e0a87617849b82c (patch)
tree8ada13264f092972af9f16d1a41bc1de70be2912 /gdb/hppa-tdep.c
parenta422fc19106ce5eb4e080e47df4de567d4c90e5b (diff)
downloadgdb-410fd7ce049b6c6f43d2eaee9e0a87617849b82c.tar.gz
* hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
"#if 0" "#endif". Fix mapping of DWARF DBX registers to GDB registers. Correct arguments and improve comments. (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum. Delete disabled code. * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating point DBX register, change error to warning, and improve comments.
Diffstat (limited to 'gdb/hppa-tdep.c')
-rw-r--r--gdb/hppa-tdep.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
index cd844e820d6..5b6676e0c6f 100644
--- a/gdb/hppa-tdep.c
+++ b/gdb/hppa-tdep.c
@@ -658,18 +658,19 @@ hppa64_register_name (struct gdbarch *gdbarch, int i)
return names[i];
}
+/* Map dwarf DBX register numbers to GDB register numbers. */
static int
hppa64_dwarf_reg_to_regnum (struct gdbarch *gdbarch, int reg)
{
- /* r0-r31 and sar map one-to-one. */
+ /* The general registers and the sar are the same in both sets. */
if (reg <= 32)
return reg;
/* fr4-fr31 are mapped from 72 in steps of 2. */
- if (reg >= 72 || reg < 72 + 28 * 2)
+ if (reg >= 72 && reg < 72 + 28 * 2 && !(reg & 1))
return HPPA64_FP4_REGNUM + (reg - 72) / 2;
- error ("Invalid DWARF register num %d.", reg);
+ warning (_("Unmapped DWARF DBX Register #%d encountered."), reg);
return -1;
}