|
CIRCT 23.0.0git
|
Information about a module. More...
#include <FIRRTLInstanceInfo.h>

Public Member Functions | |
| bool | postOrderSaturated () |
| Return true if the product of post-order information is saturated (cannot ever change). | |
Public Attributes | |
| InstanceInfo::LatticeValue | underDut |
| Indicates if this module is instantiated under the design-under-test. | |
| InstanceInfo::LatticeValue | underLayer |
| Indicates if this module is instantiated under a layer. | |
| InstanceInfo::LatticeValue | inDesign |
| Indicates if this module is instantiated in the design. | |
| InstanceInfo::LatticeValue | inEffectiveDesign |
| Indicates if this modules is instantiated in the effective design. | |
| InstanceInfo::LatticeValue | inInstanceChoice |
| Indicates if this module is instantiated within (or transitively within) an instance choice operation. | |
| bool | hasProperties = false |
| Indicates if this module has any property operations within (or transitively within) it, or if it is public or contains (transitively) any public modules. | |
Private Attributes | |
| bool | saturated = false |
Information about a module.
Definition at line 109 of file FIRRTLInstanceInfo.h.
|
inline |
Return true if the product of post-order information is saturated (cannot ever change).
This corresponds to all attributes populated during the post-order walk are true. This is an optimization that is used to short circuit the walk when no more information can change.
Definition at line 143 of file FIRRTLInstanceInfo.h.
References hasProperties, and saturated.
Referenced by circt::firrtl::InstanceInfo::InstanceInfo().
| bool circt::firrtl::InstanceInfo::ModuleAttributes::hasProperties = false |
Indicates if this module has any property operations within (or transitively within) it, or if it is public or contains (transitively) any public modules.
Definition at line 137 of file FIRRTLInstanceInfo.h.
Referenced by circt::firrtl::InstanceInfo::InstanceInfo(), circt::firrtl::InstanceInfo::moduleContainsProperties(), and postOrderSaturated().
| InstanceInfo::LatticeValue circt::firrtl::InstanceInfo::ModuleAttributes::inDesign |
Indicates if this module is instantiated in the design.
The "design" is defined as being under the design-under-test, excluding verification code (e.g., layers).
Definition at line 120 of file FIRRTLInstanceInfo.h.
Referenced by circt::firrtl::InstanceInfo::allInstancesInDesign(), circt::firrtl::InstanceInfo::anyInstanceInDesign(), and circt::firrtl::InstanceInfo::InstanceInfo().
| InstanceInfo::LatticeValue circt::firrtl::InstanceInfo::ModuleAttributes::inEffectiveDesign |
Indicates if this modules is instantiated in the effective design.
The "effective design" is defined as the design-under-test (DUT), excluding verification code (e.g., layers). If a DUT is specified, then this is the same as inDesign. However, if there is no DUT, then every module is deemed to be in the design except those which are explicitly verification code.
Definition at line 128 of file FIRRTLInstanceInfo.h.
Referenced by circt::firrtl::InstanceInfo::allInstancesInEffectiveDesign(), circt::firrtl::InstanceInfo::anyInstanceInEffectiveDesign(), and circt::firrtl::InstanceInfo::InstanceInfo().
| InstanceInfo::LatticeValue circt::firrtl::InstanceInfo::ModuleAttributes::inInstanceChoice |
Indicates if this module is instantiated within (or transitively within) an instance choice operation.
Definition at line 132 of file FIRRTLInstanceInfo.h.
Referenced by circt::firrtl::InstanceInfo::anyInstanceInInstanceChoice(), and circt::firrtl::InstanceInfo::InstanceInfo().
|
private |
Definition at line 151 of file FIRRTLInstanceInfo.h.
Referenced by postOrderSaturated().
| InstanceInfo::LatticeValue circt::firrtl::InstanceInfo::ModuleAttributes::underDut |
Indicates if this module is instantiated under the design-under-test.
Definition at line 112 of file FIRRTLInstanceInfo.h.
Referenced by circt::firrtl::InstanceInfo::allInstancesUnderDut(), circt::firrtl::InstanceInfo::anyInstanceUnderDut(), and circt::firrtl::InstanceInfo::InstanceInfo().
| InstanceInfo::LatticeValue circt::firrtl::InstanceInfo::ModuleAttributes::underLayer |
Indicates if this module is instantiated under a layer.
Definition at line 115 of file FIRRTLInstanceInfo.h.
Referenced by circt::firrtl::InstanceInfo::allInstancesUnderLayer(), circt::firrtl::InstanceInfo::anyInstanceUnderLayer(), and circt::firrtl::InstanceInfo::InstanceInfo().