]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
ipa-prop.c (ipa_print_node_jump_functions): Print symbol order in header...
authorMartin Jambor <mjambor@suse.cz>
Wed, 15 May 2013 10:35:59 +0000 (12:35 +0200)
committerMartin Jambor <jamborm@gcc.gnu.org>
Wed, 15 May 2013 10:35:59 +0000 (12:35 +0200)
2013-05-15  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (ipa_print_node_jump_functions): Print symbol order in
header, print symbol order instead of node uid, print more information
about indirect edge targets.
(ipa_make_edge_direct_to_target): Print symbol order instead of node
uids.
(ipa_make_edge_direct_to_target): Likewise.
(remove_described_reference): Likewise.
(propagate_controlled_uses): Likewise.
(ipa_print_node_params): Also print symbol order.
(ipcp_transform_function): Print symbol order instead of node uids.
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Likewise.
(cgraph_get_create_real_symbol_node): Likewise.
* ipa-cp.c (print_lattice): Likewise.
(print_all_lattices): Likewise.
(determine_versionability): Likewise.
(initialize_node_lattices): Likewise.
(estimate_local_effects): Likewise.
(update_profiling_info): Likewise.
(create_specialized_node): Likewise.
(perhaps_add_new_callers): Likewise.
(decide_about_value): Likewise.
(decide_whether_version_node): Likewise.
(identify_dead_nodes): Likewise.
* ipa-inline-analysis.c (dump_inline_edge_summary): Likewise.
(dump_inline_summary): Likewise.
(estimate_node_size_and_time): Likewise.
(inline_analyze_function): Likewise.
* ipa-inline.c (report_inline_failed_reason): Likewise.
(want_early_inline_function_p): Likewise.
(edge_badness): Likewise.
(update_edge_key): Likewise.
(inline_small_functions): Likewise.  Add dumping of order to two other
dumps.
* ipa-pure-const.c (pure_const_read_summary): Print symbol order
instead of node uids.
(propagate_pure_const): Likewise.
(propagate_pure_const): Likewise.
* ipa-utils.c (dump_cgraph_node_set): Likewise.
* lto-cgraph.c (input_node): Explicitly specify we dump uid.
* lto-symtab.c (lto_cgraph_replace_node): Print symbol order instead
of node uids.
* tree-pretty-print.c (dump_function_header): Likewise.
* tree-sra.c (convert_callers_for_node): Dump in traditional format.
Print symbol order instead of node uids.

lto/
* lto-partition.c (lto_balanced_map): Print symbol order instead
of node uids.

From-SVN: r198925

14 files changed:
gcc/ChangeLog
gcc/cgraph.c
gcc/ipa-cp.c
gcc/ipa-inline-analysis.c
gcc/ipa-inline.c
gcc/ipa-prop.c
gcc/ipa-pure-const.c
gcc/ipa-utils.c
gcc/lto-cgraph.c
gcc/lto-symtab.c
gcc/lto/ChangeLog
gcc/lto/lto-partition.c
gcc/tree-pretty-print.c
gcc/tree-sra.c

index 34097805cb4c04eb0a348eee61f8bfe01a61e54e..c8ef00489e3b752279fcfb0f7bd7f7e0f079c9b8 100644 (file)
@@ -1,3 +1,50 @@
+2013-05-15  Martin Jambor  <mjambor@suse.cz>
+
+       * ipa-prop.c (ipa_print_node_jump_functions): Print symbol order in
+       header, print symbol order instead of node uid, print more information
+       about indirect edge targets.
+       (ipa_make_edge_direct_to_target): Print symbol order instead of node
+       uids.
+       (ipa_make_edge_direct_to_target): Likewise.
+       (remove_described_reference): Likewise.
+       (propagate_controlled_uses): Likewise.
+       (ipa_print_node_params): Also print symbol order.
+       (ipcp_transform_function): Print symbol order instead of node uids.
+       * cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Likewise.
+       (cgraph_get_create_real_symbol_node): Likewise.
+       * ipa-cp.c (print_lattice): Likewise.
+       (print_all_lattices): Likewise.
+       (determine_versionability): Likewise.
+       (initialize_node_lattices): Likewise.
+       (estimate_local_effects): Likewise.
+       (update_profiling_info): Likewise.
+       (create_specialized_node): Likewise.
+       (perhaps_add_new_callers): Likewise.
+       (decide_about_value): Likewise.
+       (decide_whether_version_node): Likewise.
+       (identify_dead_nodes): Likewise.
+       * ipa-inline-analysis.c (dump_inline_edge_summary): Likewise.
+       (dump_inline_summary): Likewise.
+       (estimate_node_size_and_time): Likewise.
+       (inline_analyze_function): Likewise.
+       * ipa-inline.c (report_inline_failed_reason): Likewise.
+       (want_early_inline_function_p): Likewise.
+       (edge_badness): Likewise.
+       (update_edge_key): Likewise.
+       (inline_small_functions): Likewise.  Add dumping of order to two other
+       dumps.
+       * ipa-pure-const.c (pure_const_read_summary): Print symbol order
+       instead of node uids.
+       (propagate_pure_const): Likewise.
+       (propagate_pure_const): Likewise.
+       * ipa-utils.c (dump_cgraph_node_set): Likewise.
+       * lto-cgraph.c (input_node): Explicitly specify we dump uid.
+       * lto-symtab.c (lto_cgraph_replace_node): Print symbol order instead
+       of node uids.
+       * tree-pretty-print.c (dump_function_header): Likewise.
+       * tree-sra.c (convert_callers_for_node): Dump in traditional format.
+       Print symbol order instead of node uids.
+
 2013-05-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
 
        * config/s390/s390.c (s390_register_move_cost): Don't impose the
index 568486ebc80f9127dee9189a922ab9903250b498..dff391638da458c17c607c4762d800d42429f58f 100644 (file)
@@ -1049,8 +1049,8 @@ cgraph_redirect_edge_call_stmt_to_callee (struct cgraph_edge *e)
   if (cgraph_dump_file)
     {
       fprintf (cgraph_dump_file, "updating call of %s/%i -> %s/%i: ",
-              xstrdup (cgraph_node_name (e->caller)), e->caller->uid,
-              xstrdup (cgraph_node_name (e->callee)), e->callee->uid);
+              xstrdup (cgraph_node_name (e->caller)), e->caller->symbol.order,
+              xstrdup (cgraph_node_name (e->callee)), e->callee->symbol.order);
       print_gimple_stmt (cgraph_dump_file, e->call_stmt, 0, dump_flags);
       if (e->callee->clone.combined_args_to_skip)
        {
@@ -2644,11 +2644,12 @@ cgraph_get_create_real_symbol_node (tree decl)
       if (dump_file)
        fprintf (dump_file, "Introduced new external node "
                 "(%s/%i) and turned into root of the clone tree.\n",
-                xstrdup (cgraph_node_name (node)), node->uid);
+                xstrdup (cgraph_node_name (node)), node->symbol.order);
     }
   else if (dump_file)
     fprintf (dump_file, "Introduced new external node "
-            "(%s/%i).\n", xstrdup (cgraph_node_name (node)), node->uid);
+            "(%s/%i).\n", xstrdup (cgraph_node_name (node)),
+            node->symbol.order);
   return node;
 }
 #include "gt-cgraph.h"
index 98c91ef38e7eae0ea62975ce745b79b8dee40d70..40c946dc1f110d8c979ddff424da8b9428de6056 100644 (file)
@@ -369,7 +369,8 @@ print_lattice (FILE * f, struct ipcp_lattice *lat,
 
          fprintf (f, " [from:");
          for (s = val->sources; s; s = s->next)
-           fprintf (f, " %i(%i)", s->cs->caller->uid,s->cs->frequency);
+           fprintf (f, " %i(%i)", s->cs->caller->symbol.order,
+                    s->cs->frequency);
          fprintf (f, "]");
        }
 
@@ -397,7 +398,8 @@ print_all_lattices (FILE * f, bool dump_sources, bool dump_benefits)
       struct ipa_node_params *info;
 
       info = IPA_NODE_REF (node);
-      fprintf (f, "  Node: %s/%i:\n", cgraph_node_name (node), node->uid);
+      fprintf (f, "  Node: %s/%i:\n", cgraph_node_name (node),
+              node->symbol.order);
       count = ipa_get_param_count (info);
       for (i = 0; i < count; i++)
        {
@@ -447,7 +449,7 @@ determine_versionability (struct cgraph_node *node)
 
   if (reason && dump_file && !node->alias && !node->thunk.thunk_p)
     fprintf (dump_file, "Function %s/%i is not versionable, reason: %s.\n",
-            cgraph_node_name (node), node->uid, reason);
+            cgraph_node_name (node), node->symbol.order, reason);
 
   node->local.versionable = (reason == NULL);
 }
@@ -727,7 +729,7 @@ initialize_node_lattices (struct cgraph_node *node)
       if (dump_file && (dump_flags & TDF_DETAILS)
          && !node->alias && !node->thunk.thunk_p)
        fprintf (dump_file, "Marking all lattices of %s/%i as %s\n",
-                cgraph_node_name (node), node->uid,
+                cgraph_node_name (node), node->symbol.order,
                 disable ? "BOTTOM" : "VARIABLE");
     }
 
@@ -1820,7 +1822,7 @@ estimate_local_effects (struct cgraph_node *node)
 
   if (dump_file && (dump_flags & TDF_DETAILS))
     fprintf (dump_file, "\nEstimating effects for %s/%i, base_time: %i.\n",
-            cgraph_node_name (node), node->uid, base_time);
+            cgraph_node_name (node), node->symbol.order, base_time);
 
   always_const = gather_context_independent_values (info, &known_csts,
                                                    &known_binfos, &known_aggs,
@@ -2570,7 +2572,7 @@ update_profiling_info (struct cgraph_node *orig_node,
        fprintf (dump_file, "    Problem: node %s/%i has too low count "
                 HOST_WIDE_INT_PRINT_DEC " while the sum of incoming "
                 "counts is " HOST_WIDE_INT_PRINT_DEC "\n",
-                cgraph_node_name (orig_node), orig_node->uid,
+                cgraph_node_name (orig_node), orig_node->symbol.order,
                 (HOST_WIDE_INT) orig_node_count,
                 (HOST_WIDE_INT) (orig_sum + new_sum));
 
@@ -2704,7 +2706,7 @@ create_specialized_node (struct cgraph_node *node,
   if (dump_file && (dump_flags & TDF_DETAILS))
     {
       fprintf (dump_file, "     the new node is %s/%i.\n",
-              cgraph_node_name (new_node), new_node->uid);
+              cgraph_node_name (new_node), new_node->symbol.order);
       if (aggvals)
        ipa_dump_agg_replacement_values (dump_file, aggvals);
     }
@@ -3254,9 +3256,9 @@ perhaps_add_new_callers (struct cgraph_node *node, struct ipcp_value *val)
                    fprintf (dump_file, " - adding an extra caller %s/%i"
                             " of %s/%i\n",
                             xstrdup (cgraph_node_name (cs->caller)),
-                            cs->caller->uid,
+                            cs->caller->symbol.order,
                             xstrdup (cgraph_node_name (val->spec_node)),
-                            val->spec_node->uid);
+                            val->spec_node->symbol.order);
 
                  cgraph_redirect_edge_callee (cs, val->spec_node);
                  redirected_sum += cs->count;
@@ -3361,7 +3363,7 @@ decide_about_value (struct cgraph_node *node, int index, HOST_WIDE_INT offset,
 
   if (dump_file)
     fprintf (dump_file, "  Creating a specialized node of %s/%i.\n",
-            cgraph_node_name (node), node->uid);
+            cgraph_node_name (node), node->symbol.order);
 
   callers = gather_edges_for_value (val, caller_count);
   kv = known_csts.copy ();
@@ -3398,7 +3400,7 @@ decide_whether_version_node (struct cgraph_node *node)
 
   if (dump_file && (dump_flags & TDF_DETAILS))
     fprintf (dump_file, "\nEvaluating opportunities for %s/%i.\n",
-            cgraph_node_name (node), node->uid);
+            cgraph_node_name (node), node->symbol.order);
 
   gather_context_independent_values (info, &known_csts, &known_binfos,
                                  info->do_clone_for_all_contexts ? &known_aggs
@@ -3442,7 +3444,7 @@ decide_whether_version_node (struct cgraph_node *node)
       if (dump_file)
        fprintf (dump_file, " - Creating a specialized node of %s/%i "
                 "for all known contexts.\n", cgraph_node_name (node),
-                node->uid);
+                node->symbol.order);
 
       callers = collect_callers_of_node (node);
       move_binfos_to_values (known_csts, known_binfos);
@@ -3533,7 +3535,7 @@ identify_dead_nodes (struct cgraph_node *node)
       for (v = node; v ; v = ((struct ipa_dfs_info *) v->symbol.aux)->next_cycle)
        if (IPA_NODE_REF (v)->node_dead)
          fprintf (dump_file, "  Marking node as dead: %s/%i.\n",
-                  cgraph_node_name (v), v->uid);
+                  cgraph_node_name (v), v->symbol.order);
     }
 }
 
index 8d66325237b542b77ace1e7790ae51a85b0a4a2b..c6f127ebbd238e2744ac7816d97e6bcd51058559 100644 (file)
@@ -1291,7 +1291,7 @@ dump_inline_edge_summary (FILE *f, int indent, struct cgraph_node *node,
       fprintf (f,
               "%*s%s/%i %s\n%*s  loop depth:%2i freq:%4i size:%2i"
               " time: %2i callee size:%2i stack:%2i",
-              indent, "", cgraph_node_name (callee), callee->uid,
+              indent, "", cgraph_node_name (callee), callee->symbol.order,
               !edge->inline_failed
               ? "inlined" : cgraph_inline_failed_string (edge-> inline_failed),
               indent, "", es->loop_depth, edge->frequency,
@@ -1357,7 +1357,7 @@ dump_inline_summary (FILE *f, struct cgraph_node *node)
       size_time_entry *e;
       int i;
       fprintf (f, "Inline summary for %s/%i", cgraph_node_name (node),
-              node->uid);
+              node->symbol.order);
       if (DECL_DISREGARD_INLINE_LIMITS (node->symbol.decl))
        fprintf (f, " always_inline");
       if (s->inlinable)
@@ -2870,7 +2870,8 @@ estimate_node_size_and_time (struct cgraph_node *node,
     {
       bool found = false;
       fprintf (dump_file, "   Estimating body: %s/%i\n"
-              "   Known to be false: ", cgraph_node_name (node), node->uid);
+              "   Known to be false: ", cgraph_node_name (node),
+              node->symbol.order);
 
       for (i = predicate_not_inlined_condition;
           i < (predicate_first_dynamic_condition
@@ -3650,7 +3651,7 @@ inline_analyze_function (struct cgraph_node *node)
 
   if (dump_file)
     fprintf (dump_file, "\nAnalyzing function: %s/%u\n",
-            cgraph_node_name (node), node->uid);
+            cgraph_node_name (node), node->symbol.order);
   if (optimize && !node->thunk.thunk_p)
     inline_indirect_intraprocedural_analysis (node);
   compute_inline_parameters (node, false);
index 964d1f9d9de0aa618879c81ddeca633e75be5874..35fce6d4a1a541886dc2b5b2add293985b907311 100644 (file)
@@ -218,8 +218,8 @@ report_inline_failed_reason (struct cgraph_edge *e)
   if (dump_file)
     {
       fprintf (dump_file, "  not inlinable: %s/%i -> %s/%i, %s\n",
-              xstrdup (cgraph_node_name (e->caller)), e->caller->uid,
-              xstrdup (cgraph_node_name (e->callee)), e->callee->uid,
+              xstrdup (cgraph_node_name (e->caller)), e->caller->symbol.order,
+              xstrdup (cgraph_node_name (e->callee)), e->callee->symbol.order,
               cgraph_inline_failed_string (e->inline_failed));
     }
 }
@@ -424,8 +424,9 @@ want_early_inline_function_p (struct cgraph_edge *e)
          if (dump_file)
            fprintf (dump_file, "  will not early inline: %s/%i->%s/%i, "
                     "call is cold and code would grow by %i\n",
-                    xstrdup (cgraph_node_name (e->caller)), e->caller->uid,
-                    xstrdup (cgraph_node_name (callee)), callee->uid,
+                    xstrdup (cgraph_node_name (e->caller)),
+                    e->caller->symbol.order,
+                    xstrdup (cgraph_node_name (callee)), callee->symbol.order,
                     growth);
          want_inline = false;
        }
@@ -434,8 +435,9 @@ want_early_inline_function_p (struct cgraph_edge *e)
          if (dump_file)
            fprintf (dump_file, "  will not early inline: %s/%i->%s/%i, "
                     "growth %i exceeds --param early-inlining-insns\n",
-                    xstrdup (cgraph_node_name (e->caller)), e->caller->uid,
-                    xstrdup (cgraph_node_name (callee)), callee->uid,
+                    xstrdup (cgraph_node_name (e->caller)),
+                    e->caller->symbol.order,
+                    xstrdup (cgraph_node_name (callee)), callee->symbol.order,
                     growth);
          want_inline = false;
        }
@@ -446,8 +448,9 @@ want_early_inline_function_p (struct cgraph_edge *e)
            fprintf (dump_file, "  will not early inline: %s/%i->%s/%i, "
                     "growth %i exceeds --param early-inlining-insns "
                     "divided by number of calls\n",
-                    xstrdup (cgraph_node_name (e->caller)), e->caller->uid,
-                    xstrdup (cgraph_node_name (callee)), callee->uid,
+                    xstrdup (cgraph_node_name (e->caller)),
+                    e->caller->symbol.order,
+                    xstrdup (cgraph_node_name (callee)), callee->symbol.order,
                     growth);
          want_inline = false;
        }
@@ -851,9 +854,9 @@ edge_badness (struct cgraph_edge *edge, bool dump)
     {
       fprintf (dump_file, "    Badness calculation for %s/%i -> %s/%i\n",
               xstrdup (cgraph_node_name (edge->caller)),
-              edge->caller->uid,
+              edge->caller->symbol.order,
               xstrdup (cgraph_node_name (callee)),
-              edge->callee->uid);
+              edge->callee->symbol.order);
       fprintf (dump_file, "      size growth %i, time %i ",
               growth,
               edge_time);
@@ -1002,9 +1005,9 @@ update_edge_key (fibheap_t heap, struct cgraph_edge *edge)
              fprintf (dump_file,
                       "  decreasing badness %s/%i -> %s/%i, %i to %i\n",
                       xstrdup (cgraph_node_name (edge->caller)),
-                      edge->caller->uid,
+                      edge->caller->symbol.order,
                       xstrdup (cgraph_node_name (edge->callee)),
-                      edge->callee->uid,
+                      edge->callee->symbol.order,
                       (int)n->key,
                       badness);
            }
@@ -1019,9 +1022,9 @@ update_edge_key (fibheap_t heap, struct cgraph_edge *edge)
           fprintf (dump_file,
                    "  enqueuing call %s/%i -> %s/%i, badness %i\n",
                    xstrdup (cgraph_node_name (edge->caller)),
-                   edge->caller->uid,
+                   edge->caller->symbol.order,
                    xstrdup (cgraph_node_name (edge->callee)),
-                   edge->callee->uid,
+                   edge->callee->symbol.order,
                    badness);
         }
       edge->aux = fibheap_insert (heap, badness, edge);
@@ -1465,7 +1468,7 @@ inline_small_functions (void)
       {
        if (dump_file)
          fprintf (dump_file, "Enqueueing calls of %s/%i.\n",
-                  cgraph_node_name (node), node->uid);
+                  cgraph_node_name (node), node->symbol.order);
 
        for (edge = node->callers; edge; edge = edge->next_caller)
          if (edge->inline_failed
@@ -1524,14 +1527,14 @@ inline_small_functions (void)
       if (dump_file)
        {
          fprintf (dump_file,
-                  "\nConsidering %s with %i size\n",
-                  cgraph_node_name (callee),
+                  "\nConsidering %s/%i with %i size\n",
+                  cgraph_node_name (callee), callee->symbol.order,
                   inline_summary (callee)->size);
          fprintf (dump_file,
-                  " to be inlined into %s in %s:%i\n"
+                  " to be inlined into %s/%i in %s:%i\n"
                   " Estimated growth after inlined into all is %+i insns.\n"
                   " Estimated badness is %i, frequency %.2f.\n",
-                  cgraph_node_name (edge->caller),
+                  cgraph_node_name (edge->caller), edge->caller->symbol.order,
                   flag_wpa ? "unknown"
                   : gimple_filename ((const_gimple) edge->call_stmt),
                   flag_wpa ? -1
index 76b3136e3cfffaee6e2fb7dca6c20f55ee4794e6..9ae3d69b74bdac68aaa80d09ca30c9a8553dd9f9 100644 (file)
@@ -265,34 +265,45 @@ void
 ipa_print_node_jump_functions (FILE *f, struct cgraph_node *node)
 {
   struct cgraph_edge *cs;
-  int i;
 
-  fprintf (f, "  Jump functions of caller  %s:\n", cgraph_node_name (node));
+  fprintf (f, "  Jump functions of caller  %s/%i:\n", cgraph_node_name (node),
+          node->symbol.order);
   for (cs = node->callees; cs; cs = cs->next_callee)
     {
       if (!ipa_edge_args_info_available_for_edge_p (cs))
        continue;
 
       fprintf (f, "    callsite  %s/%i -> %s/%i : \n",
-              xstrdup (cgraph_node_name (node)), node->uid,
-              xstrdup (cgraph_node_name (cs->callee)), cs->callee->uid);
+              xstrdup (cgraph_node_name (node)), node->symbol.order,
+              xstrdup (cgraph_node_name (cs->callee)),
+              cs->callee->symbol.order);
       ipa_print_node_jump_functions_for_edge (f, cs);
     }
 
-  for (cs = node->indirect_calls, i = 0; cs; cs = cs->next_callee, i++)
+  for (cs = node->indirect_calls; cs; cs = cs->next_callee)
     {
+      struct cgraph_indirect_call_info *ii;
       if (!ipa_edge_args_info_available_for_edge_p (cs))
        continue;
 
+      ii = cs->indirect_info;
+      if (ii->agg_contents)
+       fprintf (f, "    indirect aggregate callsite, calling param %i, "
+                "offset " HOST_WIDE_INT_PRINT_DEC ", %s",
+                ii->param_index, ii->offset,
+                ii->by_ref ? "by reference" : "by_value");
+      else
+       fprintf (f, "    indirect %s callsite, calling param %i",
+                ii->polymorphic ? "polymorphic" : "simple", ii->param_index);
+
       if (cs->call_stmt)
        {
-         fprintf (f, "    indirect callsite %d for stmt ", i);
+         fprintf (f, ", for stmt ");
          print_gimple_stmt (f, cs->call_stmt, 0, TDF_SLIM);
        }
       else
-       fprintf (f, "    indirect callsite %d :\n", i);
+       fprintf (f, "\n");
       ipa_print_node_jump_functions_for_edge (f, cs);
-
     }
 }
 
@@ -2199,8 +2210,8 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target)
        {
          if (dump_file)
            fprintf (dump_file, "ipa-prop: Discovered direct call to non-function"
-                               " in (%s/%i).\n",
-                    cgraph_node_name (ie->caller), ie->caller->uid);
+                               " in %s/%i.\n",
+                    cgraph_node_name (ie->caller), ie->caller->symbol.order);
          return NULL;
        }
     }
@@ -2221,8 +2232,10 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target)
          if (dump_file)
            fprintf (dump_file, "ipa-prop: Discovered call to a known target "
                     "(%s/%i -> %s/%i) but can not refer to it. Giving up.\n",
-                    xstrdup (cgraph_node_name (ie->caller)), ie->caller->uid,
-                    xstrdup (cgraph_node_name (ie->callee)), ie->callee->uid);
+                    xstrdup (cgraph_node_name (ie->caller)),
+                    ie->caller->symbol.order,
+                    xstrdup (cgraph_node_name (ie->callee)),
+                    ie->callee->symbol.order);
          return NULL;
        }
       callee = cgraph_get_create_real_symbol_node (target);
@@ -2244,8 +2257,10 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target)
       fprintf (dump_file, "ipa-prop: Discovered %s call to a known target "
               "(%s/%i -> %s/%i), for stmt ",
               ie->indirect_info->polymorphic ? "a virtual" : "an indirect",
-              xstrdup (cgraph_node_name (ie->caller)), ie->caller->uid,
-              xstrdup (cgraph_node_name (ie->callee)), ie->callee->uid);
+              xstrdup (cgraph_node_name (ie->caller)),
+              ie->caller->symbol.order,
+              xstrdup (cgraph_node_name (ie->callee)),
+              ie->callee->symbol.order);
       if (ie->call_stmt)
        print_gimple_stmt (dump_file, ie->call_stmt, 2, TDF_SLIM);
       else
@@ -2298,7 +2313,7 @@ remove_described_reference (symtab_node symbol, struct ipa_cst_ref_desc *rdesc)
   if (dump_file)
     fprintf (dump_file, "ipa-prop: Removed a reference from %s/%i to %s.\n",
             xstrdup (cgraph_node_name (origin->caller)),
-            origin->caller->uid, xstrdup (symtab_node_name (symbol)));
+            origin->caller->symbol.order, xstrdup (symtab_node_name (symbol)));
 }
 
 /* If JFUNC has a reference description with refcount different from
@@ -2568,8 +2583,8 @@ propagate_controlled_uses (struct cgraph_edge *cs)
                    fprintf (dump_file, "ipa-prop: Removing cloning-created "
                             "reference from %s/%i to %s/%i.\n",
                             xstrdup (cgraph_node_name (new_root)),
-                            new_root->uid,
-                            xstrdup (cgraph_node_name (n)), n->uid);
+                            new_root->symbol.order,
+                            xstrdup (cgraph_node_name (n)), n->symbol.order);
                  ipa_remove_reference (ref);
                }
            }
@@ -2608,9 +2623,9 @@ propagate_controlled_uses (struct cgraph_edge *cs)
                                     "cloning-created reference "
                                     "from %s/%i to %s/%i.\n",
                                     xstrdup (cgraph_node_name (clone)),
-                                    clone->uid,
+                                    clone->symbol.order,
                                     xstrdup (cgraph_node_name (n)),
-                                    n->uid);
+                                    n->symbol.order);
                          ipa_remove_reference (ref);
                        }
                      clone = clone->callers->caller;
@@ -2957,8 +2972,8 @@ ipa_print_node_params (FILE *f, struct cgraph_node *node)
   if (!node->analyzed)
     return;
   info = IPA_NODE_REF (node);
-  fprintf (f, "  function  %s parameter descriptors:\n",
-          cgraph_node_name (node));
+  fprintf (f, "  function  %s/%i parameter descriptors:\n",
+          cgraph_node_name (node), node->symbol.order);
   count = ipa_get_param_count (info);
   for (i = 0; i < count; i++)
     {
@@ -4200,7 +4215,7 @@ ipcp_transform_function (struct cgraph_node *node)
 
   if (dump_file)
     fprintf (dump_file, "Modification phase of node %s/%i\n",
-            cgraph_node_name (node), node->uid);
+            cgraph_node_name (node), node->symbol.order);
 
   aggval = ipa_get_agg_replacements_for_node (node);
   if (!aggval)
index 94c7315c1244ebdc5546b5eecca7db37d86537f8..0dd68380161b5ae873b6b95f6eeeff45ae080aad 100644 (file)
@@ -1044,7 +1044,7 @@ pure_const_read_summary (void)
                  int flags = flags_from_decl_or_type (node->symbol.decl);
                  fprintf (dump_file, "Read info for %s/%i ",
                           cgraph_node_name (node),
-                          node->uid);
+                          node->symbol.order);
                  if (flags & ECF_CONST)
                    fprintf (dump_file, " const");
                  if (flags & ECF_PURE)
@@ -1143,7 +1143,7 @@ propagate_pure_const (void)
          if (dump_file && (dump_flags & TDF_DETAILS))
            fprintf (dump_file, "  Visiting %s/%i state:%s looping %i\n",
                     cgraph_node_name (w),
-                    w->uid,
+                    w->symbol.order,
                     pure_const_names[w_l->pure_const_state],
                     w_l->looping);
 
@@ -1190,7 +1190,7 @@ propagate_pure_const (void)
                  fprintf (dump_file,
                           "    Call to %s/%i",
                           cgraph_node_name (e->callee),
-                          e->callee->uid);
+                          e->callee->symbol.order);
                }
              if (avail > AVAIL_OVERWRITABLE)
                {
index f2ff95a698bb8d53ac857162c9fb3a7c42b410dc..cef67de60761556fe21e7d7e91c6355b95f7c433 100644 (file)
@@ -465,7 +465,7 @@ dump_cgraph_node_set (FILE *f, cgraph_node_set set)
   for (iter = csi_start (set); !csi_end_p (iter); csi_next (&iter))
     {
       struct cgraph_node *node = csi_node (iter);
-      fprintf (f, " %s/%i", cgraph_node_name (node), node->uid);
+      fprintf (f, " %s/%i", cgraph_node_name (node), node->symbol.order);
     }
   fprintf (f, "\n");
 }
index 8d1d56983859ffd3838256779cecca5abc9d8e44..34188cbf26f2af0578c6f0a784722efccd572d62 100644 (file)
@@ -982,7 +982,7 @@ input_node (struct lto_file_decl_data *file_data,
      functions, they are expected to be read more than once.  */
   if (node->symbol.aux && !DECL_BUILT_IN (node->symbol.decl))
     internal_error ("bytecode stream: found multiple instances of cgraph "
-                   "node %d", node->uid);
+                   "node with uid %d", node->uid);
 
   bp = streamer_read_bitpack (ib);
   input_overwrite_node (file_data, node, tag, &bp);
index e33ed465c09c5221efeef211ba6fb753b93aab78..a004eea24fdcdac78d57c154fb37efa06acff56a 100644 (file)
@@ -46,9 +46,9 @@ lto_cgraph_replace_node (struct cgraph_node *node,
     {
       fprintf (cgraph_dump_file, "Replacing cgraph node %s/%i by %s/%i"
               " for symbol %s\n",
-              cgraph_node_name (node), node->uid,
+              cgraph_node_name (node), node->symbol.order,
               cgraph_node_name (prevailing_node),
-              prevailing_node->uid,
+              prevailing_node->symbol.order,
               IDENTIFIER_POINTER ((*targetm.asm_out.mangle_assembler_name)
                 (IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (node->symbol.decl)))));
     }
index 9a86b4958d74130ab324d44e32fdce889e675f2f..452b4468f4cfc24884c673ae0ce5cd26109ec81f 100644 (file)
@@ -1,3 +1,8 @@
+2013-05-15  Martin Jambor  <mjambor@suse.cz>
+
+       * lto-partition.c (lto_balanced_map): Print symbol order instead
+       of node uids.
+
 2013-05-15  Jan Hubicka  <jh@suse.cz>
 
        PR lto/57038
index acf8f2902370fea4807a467ca808d9fe1ee9f05f..b5d324764acae9b667d724b3bb8a8253d3751f66 100644 (file)
@@ -691,8 +691,10 @@ lto_balanced_map (void)
          best_total_size = total_size;
        }
       if (cgraph_dump_file)
-       fprintf (cgraph_dump_file, "Step %i: added %s/%i, size %i, cost %i/%i best %i/%i, step %i\n", i,
-                cgraph_node_name (order[i]), order[i]->uid, partition->insns, cost, internal,
+       fprintf (cgraph_dump_file, "Step %i: added %s/%i, size %i, cost %i/%i "
+                "best %i/%i, step %i\n", i,
+                cgraph_node_name (order[i]), order[i]->symbol.order,
+                partition->insns, cost, internal,
                 best_cost, best_internal, best_i);
       /* Partition is too large, unwind into step when best cost was reached and
         start new partition.  */
index 1613142f3caee9ce753adde91fb1fac79207f81e..7745f73210bd84fd80253d3f24155b542b661e8d 100644 (file)
@@ -3149,7 +3149,7 @@ dump_function_header (FILE *dump_file, tree fdecl, int flags)
     fprintf (dump_file, ", decl_uid=%d", DECL_UID (fdecl));
   if (node)
     {
-      fprintf (dump_file, ", cgraph_uid=%d)%s\n\n", node->uid,
+      fprintf (dump_file, ", symbol_order=%d)%s\n\n", node->symbol.order,
                node->frequency == NODE_FREQUENCY_HOT
                ? " (hot)"
                : node->frequency == NODE_FREQUENCY_UNLIKELY_EXECUTED
index 23a4f142783519ef6639e4db7b2baf0580e51192..c430c54bb7c3bdc3ea2cf378e9f41e75e46b7115 100644 (file)
@@ -4797,10 +4797,11 @@ convert_callers_for_node (struct cgraph_node *node,
       push_cfun (DECL_STRUCT_FUNCTION (cs->caller->symbol.decl));
 
       if (dump_file)
-       fprintf (dump_file, "Adjusting call (%i -> %i) %s -> %s\n",
-                cs->caller->uid, cs->callee->uid,
+       fprintf (dump_file, "Adjusting call %s/%i -> %s/%i\n",
                 xstrdup (cgraph_node_name (cs->caller)),
-                xstrdup (cgraph_node_name (cs->callee)));
+                cs->caller->symbol.order,
+                xstrdup (cgraph_node_name (cs->callee)),
+                cs->callee->symbol.order);
 
       ipa_modify_call_arguments (cs, cs->call_stmt, *adjustments);