This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [patch] readelf: Incorrect interpretation of MIPS64 relocations
- From: Daniel Jacobowitz <drow at false dot org>
- To: "Maciej W. Rozycki" <macro at linux-mips dot org>
- Cc: binutils at sources dot redhat dot com
- Date: Mon, 4 Apr 2005 10:45:37 -0400
- Subject: Re: [patch] readelf: Incorrect interpretation of MIPS64 relocations
- References: <Pine.LNX.4.61L.0504041525300.20089@blysk.ds.pg.gda.pl>
On Mon, Apr 04, 2005 at 03:42:26PM +0100, Maciej W. Rozycki wrote:
> Hello,
>
> When parsing DWARF2 information readelf interprets MIPS64 symbol indices
> incorrectly. "Skipping unexpected symbol type" messages result. MIPS64
> relocations are laid out a bit unusually, due to the need to encode three
> relocation types in a single entry. We have suitable code to deal with it
> when dumping relocations in dump_relocations(), but it's missing from
> debug_apply_rela_addends() which is used for DWARF2 processing.
>
> The following patch fixes the problem for me.
>
> 2005-04-04 Maciej W. Rozycki <macro@linux-mips.org>
>
> * readelf.c (debug_apply_rela_addends): Reorder r_info as
> necessary for 64-bit MIPS.
>
> OK to apply?
FYI, I had something similar in my pile of
submit-when-you-can-find-a-chance patches. Rather than duplicating the
code here, I moved it from dump_relocations to slurp_rela_relocs; that
way we won't need to duplicate it elsewhere.
--
Daniel Jacobowitz
CodeSourcery, LLC