This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [RFA] bfd/elf-eh-frame.c: return address column of CIE
- From: Hans-Peter Nilsson <hp at bitrange dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: Nick Clifton <nickc at redhat dot com>, kaz Kojima <kkojima at rr dot iij4u dot or dot jp>, <binutils at sources dot redhat dot com>
- Date: Fri, 23 Aug 2002 15:42:38 -0400 (EDT)
- Subject: Re: [RFA] bfd/elf-eh-frame.c: return address column of CIE
On Fri, 23 Aug 2002, Jakub Jelinek wrote:
> On Fri, Aug 23, 2002 at 07:42:45AM +0100, Nick Clifton wrote:
> > So - for DWARF2 we read a ubyte and for DWARF3 we read a LEB128 ?
>
> Well, unless the ubyte is >= 128, it is the same.
> Unfortunately there are 3 broken ports - frv, sh (non-SH5) and mmix
> which use bigger values (well, mmix even uses 259 so it is incorrectly
> truncated anyway).
Wrong, for MMIX it's (259 - 224) = 15 mainly for this reason,
fitting the return address column into a byte. See
mmix_dbx_register_number. (Suggest recheck your statement about
the other targets too: I didn't check.) That number absolutely
has to fit into a byte. There should be a gcc #ifdef
ENABLE_CHECKING aborting test in dwarf2out.c. Things go very
bad if it doesn't fit. I don't remember, but it'd probably be
visible at least in gcc test results...
brgds, H-P