CIRCT  20.0.0git
Public Member Functions | Private Member Functions | Private Attributes | List of all members
circt::ReachableMuxes Class Reference

#include <FirRegLowering.h>

Collaboration diagram for circt::ReachableMuxes:
Collaboration graph
[legend]

Public Member Functions

 ReachableMuxes (HWModuleOp m)
 
bool isMuxReachableFrom (seq::FirRegOp regOp, comb::MuxOp muxOp)
 

Private Member Functions

void buildReachabilityFrom (Operation *startNode)
 

Private Attributes

HWModuleOp module
 
llvm::DenseMap< Operation *, llvm::SmallDenseSet< Operation * > > reachableMuxes
 
llvm::SmallPtrSet< Operation *, 16 > visited
 

Detailed Description

Definition at line 33 of file FirRegLowering.h.

Constructor & Destructor Documentation

◆ ReachableMuxes()

circt::ReachableMuxes::ReachableMuxes ( HWModuleOp  m)
inline

Definition at line 35 of file FirRegLowering.h.

Member Function Documentation

◆ buildReachabilityFrom()

void ReachableMuxes::buildReachabilityFrom ( Operation *  startNode)
private

Definition at line 38 of file FirRegLowering.cpp.

References assert(), and circt::OpUserInfo::opAllowsReachability.

◆ isMuxReachableFrom()

bool ReachableMuxes::isMuxReachableFrom ( seq::FirRegOp  regOp,
comb::MuxOp  muxOp 
)

Definition at line 28 of file FirRegLowering.cpp.

Member Data Documentation

◆ module

HWModuleOp circt::ReachableMuxes::module
private

◆ reachableMuxes

llvm::DenseMap<Operation *, llvm::SmallDenseSet<Operation *> > circt::ReachableMuxes::reachableMuxes
private

Definition at line 42 of file FirRegLowering.h.

◆ visited

llvm::SmallPtrSet<Operation *, 16> circt::ReachableMuxes::visited
private

Definition at line 43 of file FirRegLowering.h.


The documentation for this class was generated from the following files: