This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [patch] allow suppression of fde encoding warning
On Sun, Jan 20, 2013 at 1:56 PM, Sandra Loosemore
<sandra@codesourcery.com> wrote:
> On 01/19/2013 11:02 PM, Ian Lance Taylor wrote:
>>
>> On Sat, Jan 19, 2013 at 12:14 PM, Sandra Loosemore
>> <sandra@codesourcery.com> wrote:
>>>
>>>
>>> Google turned up a few references to this problem on other targets that
>>> indicated that the "right" solution is for GCC to emit section-relative
>>> references in the FDE data. But, not all architectures support such a
>>> thing
>>> in the ABI (and, in particular, the Nios II ABI doesn't have an
>>> appropriate
>>> relocation for this purpose). So, it seems like we should be able to
>>> turn
>>> the warning off on architectures where the optimization cannot possibly
>>> work.
>>
>>
>> I think the correct solution is to avoid using the --eh-frame-hdr
>> option on architectures where it can not work. I think the linker is
>> correctly warning you that although you explicitly specified
>> --eh-frame-hdr, you aren't going to get an exception frame header.
>
>
> Actually, I did not explicitly specify --eh-frame-hdr. GCC adds it to the
> link spec by default if the linker supports it, and ld thinks that all ELF
> targets support this option. So, where's the right place to suppress that
> -- GCC or ld? Is --eh-frame-hdr never useful for anything on this
> architecture, or is it only the combination with -fpie that is bad?
If it does not reliably work with your ABI, then I think that GCC
should not pass it by default.
Ian