https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83711

            Bug ID: 83711
           Summary: GNU GCC version in geraphviz dot data
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mooigraph at users dot sourceforge.net
  Target Milestone: ---

It would be better to have the GCC version info in the graphviz dot data
generated with options -fdump-rtl-all-graph and -fdump-tree-all-graph.

Here is a trivial patch to add that similar as GNU Bison has it.

in graph.c

/* Start the dump of a graph.  */
static void
start_graph_dump (FILE *fp, const char *base)
{
  pretty_printer graph_slim_pp;
  graph_slim_pp.buffer->stream = fp;
  pretty_printer *const pp = &graph_slim_pp;
  pp_printf (pp, "// Generated by GNU GCC version %s.\n", version_string);
  pp_printf (pp, "// Report bugs to <%s>.\n",bug_report_url);
  pp_printf (pp, "// Home page: <%s>.\n", "https://gcc.gnu.org";);
  pp_string (pp, "digraph \"");
  pp_write_text_to_stream (pp);
  pp_string (pp, base);
  pp_write_text_as_dot_label_to_stream (pp, /*for_record=*/false);
  pp_string (pp, "\" {\n");
  pp_string (pp, "overlap=false;\n");
  pp_flush (pp);
}

Then the generated data looks like this:

// Generated by GNU GCC version 8.0.0 20171231 (experimental).
// Report bugs to <<https://gcc.gnu.org/bugs/>>.
// Home page: <https://gcc.gnu.org>.
digraph "rhp.c.088t.fixup_cfg4" {
overlap=false;
subgraph "cluster_rhp_version" {
    style="dashed";
    color="black";
...

voila.

Reply via email to