On 06/28/2018 02:39 PM, Nick Clifton wrote:
Hi Dave, Hi Florian,
Right - there is a new annobin rpm available - annobin-8.0-1.el8 - which
has these changes:
* Weak symbols are not generated by the annobin plugin
when compiling with -ffunction-sections.
There was no point really. Linker garbage collection will not
discard sections if they have annobin notes against them, since
the code section and the note section are not in a section group.
Really this is a gcc problem. If it created a section group for
sections created by the -ffunction-sections option, then annobin
could add the notes into this group and linker garbage collection
would discard the lot.
Note - annobin does still generate weak symbols for linkonce
sections, since these can and will be discarded by the linker.
The symbols still get into the dynamic symbol table, but they
are hidden. Not sure if this makes much difference however.
Doesn't this keep all function sections in the final executable because
they are now permanently referenced?
* The annobin plugin will now only reference symbols that it
creates, and all of these symbols now have a ".annobin_" prefix
in order to avoid potential collisions with symbols defined
elsewhere in the executable.
Can this still cause symbol clashes if two linkonce sections (of
different names) contain functions which receive annobin annotations?
Anyway, looks like these annobin changes exposed a binutils bug:
<https://bugzilla.redhat.com/show_bug.cgi?id=1596823>
(Which is different from #1552056, I think.)
Thanks,
Florian
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/VMZ4ULHADFV4TKRQN7RG7JQL47SL6IEO/