This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[COMMIT PATCH] dwarf2loc.c: minor cleanup. don't print integer with paddress.
- From: Pedro Alves <palves at redhat dot com>
- To: gdb-patches at sourceware dot org
- Date: Thu, 05 Sep 2013 15:49:38 +0100
- Subject: [COMMIT PATCH] dwarf2loc.c: minor cleanup. don't print integer with paddress.
- Authentication-results: sourceware.org; auth=none
A couple years ago, dwarf_expr_fetch used to return a CORE_ADDR. It
was made to return a ULONGEST since, and the 'dwarf_regnum' local
adjusted accordingly, but, we kept printing it with paddress.
gdbarch_dwarf2_reg_to_regnum takes the register number as 'int', so
there's really no point in using ULONGEST/pulongest either.
gdb/
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.
---
gdb/dwarf2loc.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
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;