Nearly CC
An educational compiler skeleton
Classes | Enumerations
dataflow.h File Reference

Support for global (procedure-scope) dataflow analysis. More...

#include <cassert>
#include <algorithm>
#include <memory>
#include <vector>
#include <bitset>
#include "cfg.h"
Include dependency graph for dataflow.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ForwardNavigation
 Forward navigation in the control-flow graph (from predecessors towards successors). More...
 
class  BackwardNavigation
 Backward navigation in the control-flow graph (from successors back to predecessors). More...
 
class  ForwardAnalysis
 Base class for forward analyses. More...
 
class  BackwardAnalysis
 Base class for backward analyses. More...
 
class  DataflowAnnotator< DataflowType >
 Annotator to return a stringified dataflow fact for a specific instruction in a basic block. More...
 
class  Dataflow< Analysis >
 An instance of Dataflow performs a dataflow analysis on the basic blocks of a control flow graph and provides an interface for querying dataflow facts at arbitrary points. More...
 

Enumerations

enum class  DataflowDirection { FORWARD , BACKWARD }
 Dataflow analysis direction.
 

Detailed Description

Support for global (procedure-scope) dataflow analysis.

Both forward and backward analyses are supported.