|
Nearly CC
An educational compiler skeleton
|
Support for printing a textual representation of a ControlFlowGraph. More...
#include "cfg.h"#include "print_instruction_seq.h"#include "highlevel_formatter.h"#include "lowlevel_formatter.h"

Go to the source code of this file.
Classes | |
| class | DefaultBlockAnnotator |
| Default annotator for printing a control flow graph. More... | |
| class | ControlFlowGraphPrinter< Formatter, BlockAnnotator > |
| Print a textual representation of a ControlFlowGraph. More... | |
Functions | |
| template<typename BlockAnnotator = DefaultBlockAnnotator> | |
| ControlFlowGraphPrinter< HighLevelFormatter, BlockAnnotator > | make_highlevel_cfg_printer (const std::shared_ptr< ControlFlowGraph > &hl_cfg, BlockAnnotator annotator=BlockAnnotator()) |
| Create a ControlFlowGraphPrinter for printing a high-level ControlFlowGraph. More... | |
| template<typename BlockAnnotator = DefaultBlockAnnotator> | |
| ControlFlowGraphPrinter< LowLevelFormatter, BlockAnnotator > | make_lowlevel_cfg_printer (const std::shared_ptr< ControlFlowGraph > &ll_cfg, BlockAnnotator annotator=BlockAnnotator()) |
| Create a ControlFlowGraphPrinter for printing a low-level ControlFlowGraph. More... | |
Support for printing a textual representation of a ControlFlowGraph.
| ControlFlowGraphPrinter<HighLevelFormatter, BlockAnnotator> make_highlevel_cfg_printer | ( | const std::shared_ptr< ControlFlowGraph > & | hl_cfg, |
| BlockAnnotator | annotator = BlockAnnotator() |
||
| ) |
Create a ControlFlowGraphPrinter for printing a high-level ControlFlowGraph.
Example usage:
| BlockAnnotator | the type of block annotator to use to annotate basic blocks |
| hl_cfg | the high-level ControlFlowGraph to print |
| annotator | the basic block annotator object to use |
| ControlFlowGraphPrinter<LowLevelFormatter, BlockAnnotator> make_lowlevel_cfg_printer | ( | const std::shared_ptr< ControlFlowGraph > & | ll_cfg, |
| BlockAnnotator | annotator = BlockAnnotator() |
||
| ) |
Create a ControlFlowGraphPrinter for printing a low-level ControlFlowGraph.
Example usage:
| BlockAnnotator | the type of block annotator to use to annotate basic blocks |
| ll_cfg | the low-level ControlFlowGraph to print |
| annotator | the basic block annotator object to use |