diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/dwarf2loc.c | 7 |
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; |