CIRCT  20.0.0git
Namespaces | Macros | Typedefs | Functions
DCPrintDot.cpp File Reference
#include "circt/Dialect/DC/DCOps.h"
#include "circt/Dialect/DC/DCPasses.h"
#include "mlir/Pass/Pass.h"
#include "circt/Dialect/Comb/CombDialect.h"
#include "circt/Dialect/Comb/CombOps.h"
#include "mlir/Support/IndentedOstream.h"
#include "llvm/ADT/ScopedHashTable.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/raw_ostream.h"
#include "circt/Dialect/DC/DCPasses.h.inc"
Include dependency graph for DCPrintDot.cpp:

Go to the source code of this file.

Namespaces

 circt
 The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
 
 circt::dc
 

Macros

#define GEN_PASS_DEF_DCDOTPRINT
 

Typedefs

using ValueMap = llvm::ScopedHashTable< mlir::Value, std::string >
 

Functions

static SmallVector< std::pair< mlir::Value, std::string > > valueToName (const SmallVector< mlir::Value > &values, SmallVector< std::pair< mlir::Value, std::string >> &currentMap, bool tokenFlag)
 gives a unique name to each value in the graph More...
 
static DotNode createDCNode (Operation &op, SmallVector< std::pair< mlir::Value, std::string >> &valuesMap)
 creates node in the dataflow graph for DC operations More...
 
static DotNode createCombNode (Operation &op, SmallVector< std::pair< mlir::Value, std::string >> &valuesMap)
 creates node in the dataflow graph for Comb operations More...
 

Macro Definition Documentation

◆ GEN_PASS_DEF_DCDOTPRINT

#define GEN_PASS_DEF_DCDOTPRINT

Definition at line 26 of file DCPrintDot.cpp.

Typedef Documentation

◆ ValueMap

using ValueMap = llvm::ScopedHashTable<mlir::Value, std::string>

Definition at line 35 of file DCPrintDot.cpp.

Function Documentation

◆ createCombNode()

static DotNode createCombNode ( Operation &  op,
SmallVector< std::pair< mlir::Value, std::string >> &  valuesMap 
)
static

creates node in the dataflow graph for Comb operations

Definition at line 187 of file DCPrintDot.cpp.

References valueToName().

◆ createDCNode()

static DotNode createDCNode ( Operation &  op,
SmallVector< std::pair< mlir::Value, std::string >> &  valuesMap 
)
static

creates node in the dataflow graph for DC operations

Definition at line 158 of file DCPrintDot.cpp.

References valueToName().

◆ valueToName()

static SmallVector<std::pair<mlir::Value, std::string> > valueToName ( const SmallVector< mlir::Value > &  values,
SmallVector< std::pair< mlir::Value, std::string >> &  currentMap,
bool  tokenFlag 
)
static

gives a unique name to each value in the graph

Definition at line 133 of file DCPrintDot.cpp.

Referenced by createCombNode(), and createDCNode().