Graph based data structures in LLVM
Compilers make heavy use of graph data structures as all the code being compiled is essentially stored as a graph. Most compilers also provide ways for visualizing these complex data structures which might come in handy while debugging, and help understanding certain optimizations. Let’s have a look at some of these data structures and how to visualize them using graphviz and LLVM passes. Note: All the graphs we’ll produce are generated in .dot format. If you want to visualize them make sure you have support for graphviz in your IDE or use an online tool. ...