https://sourceware.org/bugzilla/show_bug.cgi?id=25176
Bug ID: 25176 Summary: plugin needs to mark init/fini symbols as externally visible Product: binutils Version: unspecified Status: UNCONFIRMED Severity: normal Priority: P2 Component: gold Assignee: ccoutant at gmail dot com Reporter: tejohnson at google dot com CC: ian at airs dot com Target Milestone: --- This was reported to LLVM as an issue with LTO (see https://bugs.llvm.org/show_bug.cgi?id=43927), but needs to be fixed in the gold plugin code. Symbols passed via -fini/-init need to be marked as externally visible in the plugin resolution, similar to the way they are already preserved by gold for gc-sections. Otherwise the LTO plugin will incorrectly think they are unreferenced. The fix should be straightforward, just need to check in plugin.cc:is_visible_from_outside if lsym->name() is equal to either parameters->options().init() or parameters->options().fini(). -- You are receiving this mail because: You are on the CC list for the bug.