https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78529
--- Comment #29 from Jan Hubicka <hubicka at gcc dot gnu.org> --- I think the official answer for LTOing symbols implementing runtime (i.e. those that can be introduced by middle-end) is "don't do that". We may support LTOing them with an explicit attribute "used" on them or, if we get really into LTOing runtime libraries, somehow auto generating used attributes by having some central way of saying if symbol is implementing runtime or not. We don't have this and we have many different runtime calls (libgcc, decnumber, standard library symbols like printf->putc translation and many more).