From: Roland McGrath Date: Wed, 16 Jun 2010 23:35:10 +0000 (-0700) Subject: dwarf_next_cfi.c: Fix version 4 return_address_register decoding. X-Git-Tag: elfutils-0.148~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a87dfa1cc8dc8b6515e89690ee266e5e0381e5e;p=thirdparty%2Felfutils.git dwarf_next_cfi.c: Fix version 4 return_address_register decoding. --- diff --git a/libdw/ChangeLog b/libdw/ChangeLog index 7a1078904..5672082e7 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,5 +1,7 @@ 2010-06-16 Roland McGrath + * dwarf_next_cfi.c: Fix version 4 return_address_register decoding. + * fde.c (fde_by_offset): Renamed to ... (__libdw_fde_by_offset): ... this, made global and internal_function. Don't take ADDRESS argument. diff --git a/libdw/dwarf_next_cfi.c b/libdw/dwarf_next_cfi.c index fa7d09a75..0e90457d0 100644 --- a/libdw/dwarf_next_cfi.c +++ b/libdw/dwarf_next_cfi.c @@ -194,7 +194,7 @@ dwarf_next_cfi (e_ident, data, eh_frame_p, off, next_off, entry) get_uleb128 (entry->cie.code_alignment_factor, bytes); get_sleb128 (entry->cie.data_alignment_factor, bytes); - if (version == 3) /* DWARF 3 */ + if (version >= 3) /* DWARF 3+ */ get_uleb128 (entry->cie.return_address_register, bytes); else /* DWARF 2 */ entry->cie.return_address_register = *bytes++;