From c8a0673fff4c77a7067ca9a43aefac4bd8d3d1ff Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 1 Jun 2010 19:52:39 -0700 Subject: [PATCH] readelf: Handle DW_FORK_ref_sig8. --- src/ChangeLog | 2 +- src/readelf.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index f3dcb5263..58fc5b85f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -2,7 +2,7 @@ * readelf.c (dwarf_form_string): Handle DWARF 4 forms. (attr_callback): Handle DW_FORM_flag_present, DW_FORM_exprloc, - DW_FORM_sec_offset. + DW_FORM_sec_offset, DW_FORM_ref_sig8. * readelf.c (print_debug): Don't bail if libdw setup fails. Suppress complaint if we only want .eh_frame anyway. diff --git a/src/readelf.c b/src/readelf.c index 578bf10da..1d8da2683 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -5188,6 +5188,13 @@ attr_callback (Dwarf_Attribute *attrp, void *arg) dwarf_form_string (form), (uintmax_t) dwarf_dieoffset (&ref)); break; + case DW_FORM_ref_sig8: + printf (" %*s%-20s (%s) {%6" PRIx64 "}\n", + (int) (level * 2), "", dwarf_attr_string (attr), + dwarf_form_string (form), + read_8ubyte_unaligned (attrp->cu->dbg, attrp->valp)); + break; + case DW_FORM_sec_offset: attrp->form = cbargs->offset_size == 8 ? DW_FORM_data8 : DW_FORM_data4; /* Fall through. */ -- 2.47.2