This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Tue, Sep 30, 2003 at 03:05:59PM -0400, Daniel Jacobowitz wrote: > Testcase derived from glibc. Take the attached files and link them: > ld -o bin connect.o send.o dumb.o > > readelf -wf bin -> segfault. > > The problem is that we've got GAS-produced .eh_frame sections that look like > this: > [ 5] .eh_frame PROGBITS 00000000 000098 000040 00 A 0 0 4 > > 00000000 00000012 00000000 CIE > > 00000016 00000026 0000001a FDE cie=00000000 pc=0000001e..00000074 > > Then we have two almost identical object files (built from the same source > file, actually). We optimize them to share a CIE. > > 00000000 00000012 00000000 CIE > 00000016 00000026 0000001a FDE cie=00000000 pc=08048080..080480d6 > 00000040 00000026 00000044 FDE cie=00000000 pc=080480e0..08048136 > > That second FDE now ends at 0x6a. The next .eh_frame section is align-4. > Two bytes padding get added, and everything blows up. > > Something similar came up a few months ago but I can't find the reference > now. What's the right thing to do here? My instinct says, grow the last > FDE before the padding, but I have no idea how to do that. Is the alignment > of a .eh_frame section mandated? Ooops! HJ pointed out that I didn't attach the testcase. Here it is. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer
Attachment:
bug.tar
Description: Unix tar archive
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |