https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65059
--- Comment #1 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Does the following help?
Index: ipa-comdats.c
===================================================================
--- ipa-comdats.c (revision 220606)
+++ ipa-comdats.c (working copy)
@@ -328,9 +328,14 @@ ipa_comdats (void)
FOR_EACH_DEFINED_SYMBOL (symbol)
{
+ struct cgraph_node *fun;
symbol->aux = NULL;
if (!symbol->get_comdat_group ()
&& !symbol->alias
+ /* Thunks to external functions do not need to be categorized. */
+ && (!(fun = dyn_cast <cgraph_node *> (symbol))
+ || !fun->thunk.thunk_p
+ || fun->function_symbol ()->definition)
&& symbol->real_symbol_p ())
{
tree *val = map.get (symbol);