CIRCT  20.0.0git
Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
circt::firrtl::ApplyState Struct Reference

State threaded through functions for resolving and applying annotations. More...

#include <FIRRTLAnnotationHelper.h>

Collaboration diagram for circt::firrtl::ApplyState:
Collaboration graph
[legend]

Public Types

using AddToWorklistFn = llvm::function_ref< void(DictionaryAttr)>
 

Public Member Functions

 ApplyState (CircuitOp circuit, SymbolTable &symTbl, AddToWorklistFn addToWorklistFn, InstancePathCache &instancePathCache, bool noRefTypePorts)
 
hw::InnerSymbolNamespacegetNamespace (FModuleLike module)
 
IntegerAttr newID ()
 

Public Attributes

CircuitOp circuit
 
SymbolTable & symTbl
 
CircuitTargetCache targetCaches
 
AddToWorklistFn addToWorklistFn
 
InstancePathCacheinstancePathCache
 
HierPathCache hierPathCache
 
size_t numReusedHierPaths = 0
 
bool noRefTypePorts
 
DenseSet< InstanceOp > wiringProblemInstRefs
 
DenseMap< StringAttr, LegacyWiringProblemlegacyWiringProblems
 
SmallVector< WiringProblemwiringProblems
 

Private Attributes

hw::InnerSymbolNamespaceCollection namespaces
 
unsigned annotationID = 0
 

Detailed Description

State threaded through functions for resolving and applying annotations.

Definition at line 331 of file FIRRTLAnnotationHelper.h.

Member Typedef Documentation

◆ AddToWorklistFn

using circt::firrtl::ApplyState::AddToWorklistFn = llvm::function_ref<void(DictionaryAttr)>

Definition at line 332 of file FIRRTLAnnotationHelper.h.

Constructor & Destructor Documentation

◆ ApplyState()

circt::firrtl::ApplyState::ApplyState ( CircuitOp  circuit,
SymbolTable &  symTbl,
AddToWorklistFn  addToWorklistFn,
InstancePathCache instancePathCache,
bool  noRefTypePorts 
)
inline

Definition at line 333 of file FIRRTLAnnotationHelper.h.

Member Function Documentation

◆ getNamespace()

hw::InnerSymbolNamespace& circt::firrtl::ApplyState::getNamespace ( FModuleLike  module)
inline

Definition at line 355 of file FIRRTLAnnotationHelper.h.

Referenced by circt::firrtl::applyGCTMemTaps(), and buildNLA().

◆ newID()

IntegerAttr circt::firrtl::ApplyState::newID ( )
inline

Definition at line 359 of file FIRRTLAnnotationHelper.h.

References circt::calyx::direction::get().

Referenced by circt::firrtl::applyGCTView(), and scatterOMIR().

Member Data Documentation

◆ addToWorklistFn

AddToWorklistFn circt::firrtl::ApplyState::addToWorklistFn

◆ annotationID

unsigned circt::firrtl::ApplyState::annotationID = 0
private

Definition at line 366 of file FIRRTLAnnotationHelper.h.

◆ circuit

CircuitOp circt::firrtl::ApplyState::circuit

◆ hierPathCache

HierPathCache circt::firrtl::ApplyState::hierPathCache

Definition at line 345 of file FIRRTLAnnotationHelper.h.

Referenced by buildNLA().

◆ instancePathCache

InstancePathCache& circt::firrtl::ApplyState::instancePathCache

◆ legacyWiringProblems

DenseMap<StringAttr, LegacyWiringProblem> circt::firrtl::ApplyState::legacyWiringProblems

Definition at line 352 of file FIRRTLAnnotationHelper.h.

Referenced by circt::firrtl::applyWiring().

◆ namespaces

hw::InnerSymbolNamespaceCollection circt::firrtl::ApplyState::namespaces
private

Definition at line 365 of file FIRRTLAnnotationHelper.h.

◆ noRefTypePorts

bool circt::firrtl::ApplyState::noRefTypePorts

Definition at line 349 of file FIRRTLAnnotationHelper.h.

Referenced by circt::firrtl::applyGCTMemTaps().

◆ numReusedHierPaths

size_t circt::firrtl::ApplyState::numReusedHierPaths = 0

Definition at line 346 of file FIRRTLAnnotationHelper.h.

◆ symTbl

SymbolTable& circt::firrtl::ApplyState::symTbl

◆ targetCaches

CircuitTargetCache circt::firrtl::ApplyState::targetCaches

◆ wiringProblemInstRefs

DenseSet<InstanceOp> circt::firrtl::ApplyState::wiringProblemInstRefs

Definition at line 351 of file FIRRTLAnnotationHelper.h.

Referenced by circt::firrtl::applyWiring(), and lowerInternalPathAnno().

◆ wiringProblems

SmallVector<WiringProblem> circt::firrtl::ApplyState::wiringProblems

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