This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: [LTO merge][6/15][RFA] Driver


>> + Â Â%{use-linker-plugin: \
>> + Â Â-plugin %(linker_plugin_file) \
>> + Â Â-plugin-opt=%(lto_wrapper) \
>> + Â Â-plugin-opt=%(lto_gcc) \
>> + Â Â%{static|static-libgcc:-plugin-opt=-libgcc=%(lto_libgcc)} Â Â Â Â\
>
> Why does the plugin need a special option for libgcc - but apparently not
> for any of the other libraries distributed with GCC?

Because the ME can create references to libgcc functions. Without this
we would fail in this case:

1) Plugin reads the symbol table of the files that contain IL
2) There are no references to a particular function defined in libgcc
(say libfoo)
3) The linker removes the file that defined libfoo since it was unused
4) The plugin does codegen and introduces a reference to libfoo

Cheers,
-- 
Rafael Ãvila de EspÃndola


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