aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/dwarf2loc.c7
2 files changed, 10 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 8788b3be..92452a9 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2013-09-05 Pedro Alves <palves@redhat.com>
+
+ * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): 'dwarf_regnum'
+ local is now int instead of ULONGEST. Print it with %d
+ instead of paddress.
+
2013-09-05 Tristan Gingold <gingold@adacore.com>
* MAINTAINERS: Remove avr maintainership.
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
index a1a384a..55d43f1 100644
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -2283,7 +2283,8 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
case DWARF_VALUE_REGISTER:
{
struct gdbarch *arch = get_frame_arch (frame);
- ULONGEST dwarf_regnum = value_as_long (dwarf_expr_fetch (ctx, 0));
+ int dwarf_regnum
+ = longest_to_int (value_as_long (dwarf_expr_fetch (ctx, 0)));
int gdb_regnum = gdbarch_dwarf2_reg_to_regnum (arch, dwarf_regnum);
if (byte_offset != 0)
@@ -2292,8 +2293,8 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
if (gdb_regnum != -1)
retval = value_from_register (type, gdb_regnum, frame);
else
- error (_("Unable to access DWARF register number %s"),
- paddress (arch, dwarf_regnum));
+ error (_("Unable to access DWARF register number %d"),
+ dwarf_regnum);
}
break;