Same topics as from previous patch; this time for the graphiz outputter.

-- Gaby

2013-08-05  Gabriel Dos Reis  <g...@integrable-solutions.net>
 
        * graph.c (init_graph_slim_pretty_print): Remove.
        (print_graph_cfg): Do not call it.  Use local pretty printer.
        (start_graph_dump): Likewise.

Index: gcc/graph.c
===================================================================
--- gcc/graph.c (revision 201481)
+++ gcc/graph.c (working copy)
@@ -56,26 +56,6 @@
   return fp;
 }
 
-/* Return a pretty-print buffer for output to file FP.  */
-
-static pretty_printer *
-init_graph_slim_pretty_print (FILE *fp)
-{
-  static bool initialized = false;
-  static pretty_printer graph_slim_pp;
-
-  if (! initialized)
-    {
-      pp_construct (&graph_slim_pp, /*prefix=*/NULL, /*linewidth=*/0);
-      initialized = true;
-    }
-  else
-    gcc_assert (! pp_last_position_in_text (&graph_slim_pp));
-
-  graph_slim_pp.buffer->stream = fp;
-  return &graph_slim_pp;
-}
-
 /* Draw a basic block BB belonging to the function with FUNCDEF_NO
    as its unique number.  */
 static void
@@ -297,7 +277,10 @@
 {
   const char *funcname = function_name (fun);
   FILE *fp = open_graph_file (base, "a");
-  pretty_printer *pp = init_graph_slim_pretty_print (fp);
+  pretty_printer graph_slim_pp;
+  pp_construct (&graph_slim_pp, /*prefix=*/NULL, /*linewidth=*/0);
+  graph_slim_pp.buffer->stream = fp;
+  pretty_printer *const pp = &graph_slim_pp;
   pp_printf (pp, "subgraph \"%s\" {\n"
                 "\tcolor=\"black\";\n"
                 "\tlabel=\"%s\";\n",
@@ -313,7 +296,10 @@
 static void
 start_graph_dump (FILE *fp, const char *base)
 {
-  pretty_printer *pp = init_graph_slim_pretty_print (fp);
+  pretty_printer graph_slim_pp;
+  pp_construct (&graph_slim_pp, /*prefix=*/NULL, /*linewidth=*/0);
+  graph_slim_pp.buffer->stream = fp;
+  pretty_printer *const pp = &graph_slim_pp;
   pp_string (pp, "digraph \"");
   pp_write_text_to_stream (pp);
   pp_string (pp, base);

Reply via email to