Blackfin: eh crash fix

Bernd Schmidt bernds_cb1@t-online.de
Mon Feb 11 22:25:00 GMT 2008


I've committed the following patch, which fixes a problem with C++
exception handling in Blackfin FD-PIC binaries.  The problem was that
.rofixup contained an invalid entry, generated by the linker when
encountering a reloc against a deleted part of .eh_frame.  We already
have code in place to handle this for other relocs; the patch below
makes sure we don't create garbage in .rofixup for deleted byte4 relocs.
 We use a placeholder value of -1 to communicate to the startup code
that a rofixup was deleted - unfortunately I can't see an easy way to
just omit it and shrink the section instead.

There's a corresponding patch in the uClibc startup code to ignore these
dummy -1 values; that one has been in the uClibc svn repository for a while.


Bernd
-- 
This footer brought to you by insane German lawmakers.
Analog Devices GmbH      Wilhelm-Wagenfeld-Str. 6      80807 Muenchen
Sitz der Gesellschaft Muenchen, Registergericht Muenchen HRB 40368
Geschaeftsfuehrer Thomas Wessel, William A. Martin, Margaret Seif
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rofixup.diff
Type: text/x-patch
Size: 5070 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20080211/fea21282/attachment.bin>


More information about the Binutils mailing list