This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: PATCH: Modify .debug_loc output from readelf
- From: "H. J. Lu" <hjl at lucon dot org>
- To: binutils at sources dot redhat dot com
- Date: Fri, 25 Feb 2005 14:10:57 -0800
- Subject: Re: PATCH: Modify .debug_loc output from readelf
- References: <20050218025756.GA13605@lucon.org>
On Thu, Feb 17, 2005 at 06:57:56PM -0800, H. J. Lu wrote:
> We output:
>
> Contents of the .debug_loc section:
>
> Offset Begin End Expression
> <End of list>
> 00000014 00000000 00000004 (DW_OP_fbreg: 4)
> 00000014 00000004 00000028 (DW_OP_reg2)
> <End of list>
> 00000033 0000002a 0000002a (DW_OP_breg4: -1) (start == end)
> <End of list>
>
> This patch changes it to
>
> Offset Begin End Expression
> 00000000 <End of list>
> 00000014 00000000 00000004 (DW_OP_fbreg: 4)
> 00000014 00000004 00000028 (DW_OP_reg2)
> 00000014 <End of list>
> 00000033 0000002a 0000002a (DW_OP_breg4: -1) (start == end)
> 00000033 <End of list>
>
> It is clearer.
>
>
> H.J.
> ----
> 2005-02-17 H.J. Lu <hongjiu.lu@intel.com>
>
> * readelf.c (display_debug_loc): Print out offset for end of
> list.
>
display_debug_ranges has the same problem. I will check in this one
as an obvious fix.
H.J.
---
2005-02-25 H.J. Lu <hongjiu.lu@intel.com>
* readelf.c (display_debug_ranges): Print out offset for end of
list.
--- binutils/readelf.c.addr 2005-02-25 12:14:14.304752738 -0800
+++ binutils/readelf.c 2005-02-25 13:32:12.288017680 -0800
@@ -9837,7 +9837,10 @@ display_debug_ranges (Elf_Internal_Shdr
start += pointer_size;
if (begin == 0 && end == 0)
- break;
+ {
+ printf (_(" %8.8lx <End of list>\n"), offset);
+ break;
+ }
/* Check base address specifiers. */
if (begin == -1UL && end != -1UL)
@@ -9858,7 +9861,6 @@ display_debug_ranges (Elf_Internal_Shdr
putchar ('\n');
}
- fputs (_(" <End of list>\n"), stdout);
}
}
putchar ('\n');