CIRCT 24.0.0git
Loading...
Searching...
No Matches
Namespaces | Macros | Functions
InferClockPorts.cpp File Reference
#include "circt/Dialect/HW/HWInstanceGraph.h"
#include "circt/Dialect/HW/HWOps.h"
#include "circt/Dialect/Seq/SeqOps.h"
#include "circt/Dialect/Seq/SeqPasses.h"
#include "mlir/IR/Builders.h"
#include "mlir/Pass/Pass.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Support/Debug.h"
#include "circt/Dialect/Seq/SeqPasses.h.inc"
Include dependency graph for InferClockPorts.cpp:

Go to the source code of this file.

Namespaces

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

Macros

#define DEBUG_TYPE   "seq-infer-clock-ports"
 
#define GEN_PASS_DEF_INFERCLOCKPORTS
 

Functions

static bool markPort (DenseMap< Operation *, BitVector > &ports, Operation *op, unsigned idx, unsigned numPorts)
 Returns false if already marked, so that each port is visited only once.
 
static hw::OutputOp getOutputOp (hw::HWModuleOp module)
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "seq-infer-clock-ports"

Definition at line 28 of file InferClockPorts.cpp.

◆ GEN_PASS_DEF_INFERCLOCKPORTS

#define GEN_PASS_DEF_INFERCLOCKPORTS

Definition at line 36 of file InferClockPorts.cpp.

Function Documentation

◆ getOutputOp()

static hw::OutputOp getOutputOp ( hw::HWModuleOp  module)
static

Definition at line 83 of file InferClockPorts.cpp.

◆ markPort()

static bool markPort ( DenseMap< Operation *, BitVector > &  ports,
Operation *  op,
unsigned  idx,
unsigned  numPorts 
)
static

Returns false if already marked, so that each port is visited only once.

Definition at line 72 of file InferClockPorts.cpp.