Use resolution info to get rid of weak symbols

H.J. Lu hjl.tools@gmail.com
Fri Sep 11 17:00:00 GMT 2015


On Sun, May 18, 2014 at 12:38 PM, Jan Hubicka <hubicka@ucw.cz> wrote:
> Hi,
> this patch makes GCC to use resolution info to turn COMDAT and WEAK
> symbols into regular symbols based on feedback given by linker plugin.
> If resolution says that given symbol is prevailing, it is possible
> to turn them into normal symbols, while when resolution says it
> is prevailed, it is possible to turn them into external symbols.
>
> Doing so makes rest of the backend to work smoother on them.
> We previously did this transformation partly for functions, this patch
> just makes it to happen for variables too and implements the second
> part (turning the symbol into external definition).
>
> Bootstrapped/regtested x86_64-linux and tested with libreoffice
> build.  Will commit it shortly.
>
>         * ipa.c (update_visibility_by_resolution_info): New function.
>         (function_and_variable_visibility): Use it.

This caused:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67548

-- 
H.J.



More information about the Gcc-patches mailing list