[RFA] bfd/elf-eh-frame.c: return address column of CIE
Fri Aug 23 15:52:00 GMT 2002
Hans-Peter Nilsson <firstname.lastname@example.org> wrote:
> 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...
Current GCC uses 146 for SH and 18 for SHmedia. But the first
146 is not a DWARF/DBX register number. It should be 17, the DBX
register number of the PR register of SH. I've sent a patch for
this to the gcc-patches mailing list.
More information about the Binutils