The following patch fixes an inefficiency whereby type unification
was being attempted unnecessarily in LIPO even when there were no
aux modules.

Tested with regression tests and internal LIPO benchmark.

Ok for google/4_8?

Thanks,
Teresa

2013-10-10  Teresa Johnson  <tejohn...@google.com>

        * l-ipo.c (cgraph_unify_type_alias_sets): Skip LIPO type
        unification when there are no aux modules.

Index: l-ipo.c
===================================================================
--- l-ipo.c     (revision 203260)
+++ l-ipo.c     (working copy)
@@ -1059,7 +1059,7 @@ cgraph_unify_type_alias_sets (void)
   struct cgraph_node *node;
   struct varpool_node *pv;

-  if (!L_IPO_COMP_MODE)
+  if (!L_IPO_COMP_MODE || num_in_fnames == 1)
     return;

   vec_alloc (pending_types, 100);

-- 
Teresa Johnson | Software Engineer | tejohn...@google.com | 408-460-2413

Reply via email to