Next: TC-9, Previous: TC-7, Up: Compiler Stages [Contents][Index]
This section has been updated for EPITA-2020 on 2016-01-27.
At the end of this stage, the compiler computes the input of TC-9: the interference graph (or conflict graph). The options -N and --interference-dump allow the user to see these graphs, one per function. To compute the interference graph, the compiler first computes the liveness of each temporary, i.e., a graph whose nodes are the instructions, and labeled with live temporaries. The options -V, --liveness-dump dumps these graphs. Finally, the structure of the liveness graph is the flow graph: its nodes are the instructions, and edges correspond to control flow. Use options -F, --flowgraph-dump to dump them.
All dumped graphs use the DOT format. You can display them using
dotty
or convert them to other formats (such as PDF or PNG)
using dot
, both part of the GraphViz package.
Relevant lecture notes include liveness.pdf.
• TC-8 Goals: | What this stage teaches | |
• TC-8 Samples: | See TC-8 work | |
• TC-8 Given Code: | Explanation on the provided code | |
• TC-8 Code to Write: | Explanation on what you have to write | |
• TC-8 FAQ: | Questions not to ask | |
• TC-8 Improvements: | Other Designs |
Next: TC-9, Previous: TC-7, Up: Compiler Stages [Contents][Index]