On Fri, 5 Jul 2024, Alex Coplan wrote: > Hi, > > This adds a debug function to dump the dominator tree in dot/graphviz > format. The idea is that the function can be called in GDB, the output > copy/pasted into a .dot file and then rendered using graphviz. > > Bootstrapped/regtested on aarch64-linux-gnu, OK for trunk?
Can you follow other APIs here and rename and use a FILE * arg? DEBUG_FUNCTION void dot_dominance_tree (FILE *f, enum cdi_direction dir) ... that way in gdb you can do (gdb) p fopen ("/tmp/x.dot", "w") (gdb) p dot_dominance_tree ($1, CDI_DOMINATORS); (gdb0 p fclose ($1); and then dot the file? It's also easier to use this from a gdb python wrapper which can do the above as well. In other places there's then an overload with a const char *fname argument doing the fopen/fclose itself. Thanks, Richard. > Thanks, > Alex > > gcc/ChangeLog: > > * dominance.cc (debug_dominance_tree_dot): New. > -- Richard Biener <rguent...@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)