This is the mail archive of the binutils@sourceware.org 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]

Re: [PATCH] Only warn when missing MIPS LO16 are encountered


Paul Koning wrote:
> >>>>> "Thiemo" == Thiemo Seufer <ths@networkno.de> writes:
> 
>  Thiemo> Hello All, I applied the appended patch, it downgrades
>  Thiemo> missing LO16 relocations from an error to a warning. This
>  Thiemo> unbreaks builds with existing compilers but still gives gcc
>  Thiemo> developers a better chance to find and fix the problematic
>  Thiemo> bits in the optimizer.
> 
> Warnings are still a problem when you're using the "warnings are
> errors" principle, as we and others do.
> 
> Does this "missing" LO16 relocation cause any problem?

It is a long-standing violation of the MIPS O32 ABI rules. It causes
unexpected cornercases for linker implementations (as seen here again)
but the resulting binaries run ok.

> If not, why
> should there be a warning, and for that matter, why should this be
> called "problematic bits in the optimizer"?

The optimizer should eliminate the whole HI/LO relocation pair.
Currently it doesn't do that in all cases.


Thiemo


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]