http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57703
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> --- This is just totally broken and not supportable with LTO. We'd need to amend toplevel asm syntax to list defined and used symbols, but that doesn't fix existing uses. The proper fix is to excempt these files from LTO or move those assembler functions to separate TUs (preferably assembler TUs...). Honza also had the idea of trying to parse the assembler string for "obvious" symbol definitions / uses.