CIRCT  20.0.0git
Classes | Public Member Functions | Public Attributes | List of all members
Equivalence Struct Reference

This class is for reporting differences between two modules which should have been deduplicated. More...

Collaboration diagram for Equivalence:
Collaboration graph
[legend]

Classes

struct  ModuleData
 

Public Member Functions

 Equivalence (MLIRContext *context, InstanceGraph &instanceGraph)
 
std::string prettyPrint (Attribute attr)
 
LogicalResult check (InFlightDiagnostic &diag, const Twine &message, Operation *a, BundleType aType, Operation *b, BundleType bType)
 
LogicalResult check (InFlightDiagnostic &diag, const Twine &message, Operation *a, Type aType, Operation *b, Type bType)
 
LogicalResult check (InFlightDiagnostic &diag, ModuleData &data, Operation *a, Block &aBlock, Operation *b, Block &bBlock)
 
LogicalResult check (InFlightDiagnostic &diag, ModuleData &data, Operation *a, Region &aRegion, Operation *b, Region &bRegion)
 
LogicalResult check (InFlightDiagnostic &diag, Operation *a, mlir::DenseBoolArrayAttr aAttr, Operation *b, mlir::DenseBoolArrayAttr bAttr)
 
LogicalResult check (InFlightDiagnostic &diag, ModuleData &data, Operation *a, DictionaryAttr aDict, Operation *b, DictionaryAttr bDict)
 
LogicalResult check (InFlightDiagnostic &diag, FInstanceLike a, FInstanceLike b)
 
LogicalResult check (InFlightDiagnostic &diag, ModuleData &data, Operation *a, Operation *b)
 
void check (InFlightDiagnostic &diag, Operation *a, Operation *b)
 

Public Attributes

StringAttr portDirectionsAttr
 
StringAttr noDedupClass
 
StringAttr dedupGroupAttrName
 
DenseSet< Attribute > nonessentialAttributes
 
InstanceGraphinstanceGraph
 

Detailed Description

This class is for reporting differences between two modules which should have been deduplicated.

Definition at line 388 of file Dedup.cpp.

Constructor & Destructor Documentation

◆ Equivalence()

Equivalence::Equivalence ( MLIRContext *  context,
InstanceGraph instanceGraph 
)
inline

Definition at line 389 of file Dedup.cpp.

References circt::calyx::direction::get(), and circt::firrtl::noDedupAnnoClass.

Member Function Documentation

◆ check() [1/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
const Twine &  message,
Operation *  a,
BundleType  aType,
Operation *  b,
BundleType  bType 
)
inline

Definition at line 429 of file Dedup.cpp.

◆ check() [2/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
const Twine &  message,
Operation *  a,
Type  aType,
Operation *  b,
Type  bType 
)
inline

Definition at line 458 of file Dedup.cpp.

◆ check() [3/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
FInstanceLike  a,
FInstanceLike  b 
)
inline

Definition at line 695 of file Dedup.cpp.

◆ check() [4/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
ModuleData data,
Operation *  a,
Block &  aBlock,
Operation *  b,
Block &  bBlock 
)
inline

Definition at line 484 of file Dedup.cpp.

References circt::firrtl::data.

◆ check() [5/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
ModuleData data,
Operation *  a,
DictionaryAttr  aDict,
Operation *  b,
DictionaryAttr  bDict 
)
inline

Definition at line 607 of file Dedup.cpp.

References circt::firrtl::data.

◆ check() [6/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
ModuleData data,
Operation *  a,
Operation *  b 
)
inline

◆ check() [7/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
ModuleData data,
Operation *  a,
Region &  aRegion,
Operation *  b,
Region &  bRegion 
)
inline

Definition at line 562 of file Dedup.cpp.

References circt::firrtl::data.

◆ check() [8/9]

LogicalResult Equivalence::check ( InFlightDiagnostic &  diag,
Operation *  a,
mlir::DenseBoolArrayAttr  aAttr,
Operation *  b,
mlir::DenseBoolArrayAttr  bAttr 
)
inline

Definition at line 582 of file Dedup.cpp.

References circt::firrtl::direction::toString().

◆ check() [9/9]

void Equivalence::check ( InFlightDiagnostic &  diag,
Operation *  a,
Operation *  b 
)
inline

◆ prettyPrint()

std::string Equivalence::prettyPrint ( Attribute  attr)
inline

Definition at line 413 of file Dedup.cpp.

Member Data Documentation

◆ dedupGroupAttrName

StringAttr Equivalence::dedupGroupAttrName

Definition at line 859 of file Dedup.cpp.

◆ instanceGraph

InstanceGraph& Equivalence::instanceGraph

Definition at line 863 of file Dedup.cpp.

◆ noDedupClass

StringAttr Equivalence::noDedupClass

Definition at line 857 of file Dedup.cpp.

◆ nonessentialAttributes

DenseSet<Attribute> Equivalence::nonessentialAttributes

Definition at line 862 of file Dedup.cpp.

◆ portDirectionsAttr

StringAttr Equivalence::portDirectionsAttr

Definition at line 855 of file Dedup.cpp.


The documentation for this struct was generated from the following file: