This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [mips] relative FDE relocations without DW_EH_PE_signed
- From: Alan Modra <amodra at gmail dot com>
- To: Mingjie Xing <mingjie dot xing at gmail dot com>
- Cc: binutils at sourceware dot org
- Date: Wed, 13 Oct 2010 23:12:27 +1030
- Subject: Re: [mips] relative FDE relocations without DW_EH_PE_signed
- References: <AANLkTikYmOo8Eg1vBiRyR7i1ptyXCwetVaoDU1ECDrB3@mail.gmail.com>
On Wed, Oct 13, 2010 at 11:28:47AM +0800, Mingjie Xing wrote:
> When bfd starts to write section in _bfd_elf_write_section_eh_frame,
> the addresses will be converted as negative values, for example
> 0xfffeffe4. But the fde encoding is not DW_EH_PE_signed at this time.
> This will cause the address be dumped as an unsigned value, which
> looks like pc=100020000.
>
> Is it a bug?
I think your eh_frame data is OK. The bug is in readelf. When
readelf is built on a 64-bit host, it can display more address bits
than are relevant for a 32-bit target.
--
Alan Modra
Australia Development Lab, IBM