CIRCT 22.0.0git
|
#include "circt/Dialect/FIRRTL/FIRRTLOps.h"
#include "circt/Dialect/FIRRTL/AnnotationDetails.h"
#include "circt/Dialect/FIRRTL/CHIRRTLDialect.h"
#include "circt/Dialect/FIRRTL/FIRRTLAnnotations.h"
#include "circt/Dialect/FIRRTL/FIRRTLAttributes.h"
#include "circt/Dialect/FIRRTL/FIRRTLInstanceImplementation.h"
#include "circt/Dialect/FIRRTL/FIRRTLTypes.h"
#include "circt/Dialect/FIRRTL/FIRRTLUtils.h"
#include "circt/Dialect/FIRRTL/FIRRTLVisitors.h"
#include "circt/Dialect/FIRRTL/FieldRefCache.h"
#include "circt/Dialect/FIRRTL/LayerSet.h"
#include "circt/Dialect/HW/HWAttributes.h"
#include "circt/Dialect/HW/HWTypes.h"
#include "circt/Support/CustomDirectiveImpl.h"
#include "circt/Support/Utils.h"
#include "mlir/IR/BuiltinTypes.h"
#include "mlir/IR/Diagnostics.h"
#include "mlir/IR/DialectImplementation.h"
#include "mlir/IR/PatternMatch.h"
#include "mlir/IR/SymbolTable.h"
#include "mlir/Interfaces/FunctionImplementation.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/TypeSwitch.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/FormatVariadic.h"
#include "circt/Dialect/FIRRTL/FIRRTL.cpp.inc"
Go to the source code of this file.
Classes | |
struct | HasParameters< Properties, typename > |
struct | HasParameters< Properties, std::void_t< decltype(std::declval< Properties >().parameters)> > |
Macros | |
#define | GET_OP_CLASSES |
Functions | |
template<typename T > | |
static SmallVector< T > | removeElementsAtIndices (ArrayRef< T > input, const llvm::BitVector &indicesToDrop) |
Remove elements from the input array corresponding to set bits in indicesToDrop , returning the elements not mentioned. | |
template<typename RetTy = FIRRTLType, typename... Args> | |
static RetTy | emitInferRetTypeError (std::optional< Location > loc, const Twine &message, Args &&...args) |
Emit an error if optional location is non-null, return null of return type. | |
static MemOp::PortKind | getMemPortKindFromType (FIRRTLType type) |
Return the kind of port this is given the port type from a 'mem' decl. | |
const char * | toString (Flow flow) |
void | getAsmBlockArgumentNamesImpl (Operation *op, mlir::Region ®ion, OpAsmSetValueNameFn setNameFn) |
Get a special name to use when printing the entry block arguments of the region contained by an operation in this dialect. | |
static ParseResult | parseNameKind (OpAsmParser &parser, firrtl::NameKindEnumAttr &result) |
A forward declaration for NameKind attribute parser. | |
static LayerSet | getAmbientLayersAt (Operation *op) |
Get the ambient layers active at the given op. | |
static LayerSet | getAmbientLayersFor (Value value) |
Get the ambient layer requirements at the definition site of the value. | |
static LayerSet | getLayersFor (Value value) |
Get the effective layer requirements for the given value. | |
static bool | isLayerCompatibleWith (mlir::SymbolRefAttr srcLayer, mlir::SymbolRefAttr dstLayer) |
Check that the source layer is compatible with the destination layer. | |
static bool | isLayerCompatibleWith (SymbolRefAttr srcLayer, const LayerSet &dstLayers) |
Check that the source layer is present in the destination layers. | |
static bool | isLayerSetCompatibleWith (const LayerSet &src, const LayerSet &dst, SmallVectorImpl< SymbolRefAttr > &missing) |
Check that the source layers are all present in the destination layers. | |
static LogicalResult | checkLayerCompatibility (Operation *op, const LayerSet &src, const LayerSet &dst, const Twine &errorMsg, const Twine ¬eMsg=Twine("missing layer requirements")) |
static ParseResult | parseCircuitOpAttrs (OpAsmParser &parser, NamedAttrList &resultAttrs) |
static void | printCircuitOpAttrs (OpAsmPrinter &p, Operation *op, DictionaryAttr attr) |
static SmallVector< PortInfo > | getPortImpl (FModuleLike module) |
static hw::ModulePort::Direction | dirFtoH (Direction dir) |
static SmallVector< hw::PortInfo > | getPortListImpl (FModuleLike module) |
static hw::PortInfo | getPortImpl (FModuleLike module, size_t idx) |
static Attribute | fixDomainInfoInsertions (MLIRContext *context, Attribute domainInfoAttr, const SmallVectorImpl< unsigned > &numInserted) |
Return an updated domain info Attribute with domain indices updated based on port insertions. | |
static void | insertPorts (FModuleLike op, ArrayRef< std::pair< unsigned, PortInfo > > ports, bool supportsInternalPaths=false) |
Inserts the given ports. | |
static ArrayAttr | fixDomainInfoDeletions (MLIRContext *context, ArrayAttr domainInfoAttr, const llvm::BitVector &portIndices, bool supportsEmptyAttr) |
static void | erasePorts (FModuleLike op, const llvm::BitVector &portIndices) |
Erases the ports that have their corresponding bit set in portIndices . | |
template<typename T > | |
static void | eraseInternalPaths (T op, const llvm::BitVector &portIndices) |
template<typename OpTy > | |
void | buildModuleLike (OpBuilder &builder, OperationState &result, StringAttr name, ArrayRef< PortInfo > ports) |
template<typename OpTy > | |
static void | buildModule (OpBuilder &builder, OperationState &result, StringAttr name, ArrayRef< PortInfo > ports, ArrayAttr annotations, ArrayAttr layers) |
template<typename OpTy > | |
static void | buildClass (OpBuilder &builder, OperationState &result, StringAttr name, ArrayRef< PortInfo > ports) |
static bool | printModulePorts (OpAsmPrinter &p, Block *block, ArrayRef< bool > portDirections, ArrayRef< Attribute > portNames, ArrayRef< Attribute > portTypes, ArrayRef< Attribute > portAnnotations, ArrayRef< Attribute > portSyms, ArrayRef< Attribute > portLocs, ArrayRef< Attribute > domainInfo) |
Print a list of module ports in the following form: in x: !firrtl.uint<1> [{class = "DontTouch}], out "_port": !firrtl.uint<2> | |
static ParseResult | parseModulePorts (OpAsmParser &parser, bool hasSSAIdentifiers, bool supportsSymbols, bool supportsDomains, SmallVectorImpl< OpAsmParser::Argument > &entryArgs, SmallVectorImpl< Direction > &portDirections, SmallVectorImpl< Attribute > &portNames, SmallVectorImpl< Attribute > &portTypes, SmallVectorImpl< Attribute > &portAnnotations, SmallVectorImpl< Attribute > &portSyms, SmallVectorImpl< Attribute > &portLocs, SmallVectorImpl< Attribute > &domains) |
Parse a list of module ports. | |
static void | printParameterList (OpAsmPrinter &p, Operation *op, ArrayAttr parameters) |
Print a paramter list for a module or instance. | |
static void | printFModuleLikeOp (OpAsmPrinter &p, FModuleLike op) |
static ParseResult | parseOptionalParameters (OpAsmParser &parser, SmallVectorImpl< Attribute > ¶meters) |
Parse an parameter list if present. | |
static ParseResult | parseParameterList (OpAsmParser &parser, ArrayAttr ¶meters) |
Shim to use with assemblyFormat, custom<ParameterList>. | |
template<typename OpTy > | |
static ParseResult | parseFModuleLikeOp (OpAsmParser &parser, OperationState &result, bool hasSSAIdentifiers) |
static LogicalResult | verifyInternalPaths (FModuleLike op, std::optional<::mlir::ArrayAttr > internalPaths) |
static LogicalResult | verifyProbeType (RefType refType, Location loc, CircuitOp circuitOp, SymbolTableCollection &symbolTable, Twine start) |
static LogicalResult | verifyPortSymbolUses (FModuleLike module, SymbolTableCollection &symbolTable) |
template<typename OpTy > | |
ParseResult | parseClassLike (OpAsmParser &parser, OperationState &result, bool hasSSAIdentifiers) |
static void | printClassLike (OpAsmPrinter &p, ClassLike op) |
static size_t | getAddressWidth (size_t depth) |
static void | forceableAsmResultNames (Forceable op, StringRef name, OpAsmSetValueNameFn setNameFn) |
Helper for naming forceable declarations (and their optional ref result). | |
static LogicalResult | checkConnectFlow (Operation *connect) |
Check if the source and sink are of appropriate flow. | |
static bool | isConstFieldDriven (FIRRTLBaseType type, bool isFlip=false, bool outerTypeIsConst=false) |
Checks if the type has any 'const' leaf elements . | |
static LogicalResult | checkConnectConditionality (FConnectLike connect) |
Checks that connections to 'const' destinations are not dependent on non-'const' conditions in when blocks. | |
static bool | checkAggConstant (Operation *op, Attribute attr, FIRRTLBaseType type) |
template<typename OpTy > | |
ParseResult | parseSubfieldLikeOp (OpAsmParser &parser, OperationState &result) |
template<typename OpTy > | |
static void | printSubfieldLikeOp (OpTy op, ::mlir::OpAsmPrinter &printer) |
template<typename OpTy > | |
static LogicalResult | verifySubfieldLike (OpTy op) |
static bool | isSameIntTypeKind (Type lhs, Type rhs, int32_t &lhsWidth, int32_t &rhsWidth, bool &isConstResult, std::optional< Location > loc) |
If LHS and RHS are both UInt or SInt types, the return true and fill in the width of them if known. | |
static FIRRTLBaseType | inferMuxReturnType (FIRRTLBaseType high, FIRRTLBaseType low, bool isConstCondition, std::optional< Location > loc) |
Infer the result type for a multiplexer given its two operand types, which may be aggregates. | |
static bool | isTypeAllowedForDPI (Operation *op, Type type) |
static ParseResult | parseElideAnnotations (OpAsmParser &parser, NamedAttrList &resultAttrs) |
Parse an optional attribute dictionary, adding an empty 'annotations' attribute if not specified. | |
static void | printElideAnnotations (OpAsmPrinter &p, Operation *op, DictionaryAttr attr, ArrayRef< StringRef > extraElides={}) |
static ParseResult | parseElidePortAnnotations (OpAsmParser &parser, NamedAttrList &resultAttrs) |
Parse an optional attribute dictionary, adding empty 'annotations' and 'portAnnotations' attributes if not specified. | |
static void | printElidePortAnnotations (OpAsmPrinter &p, Operation *op, DictionaryAttr attr, ArrayRef< StringRef > extraElides={}) |
static void | printNameKind (OpAsmPrinter &p, Operation *op, firrtl::NameKindEnumAttr attr, ArrayRef< StringRef > extraElides={}) |
static ParseResult | parseFIRRTLImplicitSSAName (OpAsmParser &parser, NamedAttrList &resultAttrs) |
static void | printFIRRTLImplicitSSAName (OpAsmPrinter &p, Operation *op, DictionaryAttr attrs) |
static ParseResult | parseMemOp (OpAsmParser &parser, NamedAttrList &resultAttrs) |
static void | printMemOp (OpAsmPrinter &p, Operation *op, DictionaryAttr attr) |
Always elide "ruw" and elide "annotations" if it exists or if it is empty. | |
static ParseResult | parseClassInterface (OpAsmParser &parser, Type &result) |
static void | printClassInterface (OpAsmPrinter &p, Operation *, ClassType type) |
static ParseResult | parseElideEmptyName (OpAsmParser &p, NamedAttrList &resultAttrs) |
static void | printElideEmptyName (OpAsmPrinter &p, Operation *op, DictionaryAttr attr, ArrayRef< StringRef > extraElides={}) |
static ParseResult | parsePrintfAttrs (OpAsmParser &p, NamedAttrList &resultAttrs) |
static void | printPrintfAttrs (OpAsmPrinter &p, Operation *op, DictionaryAttr attr) |
static ParseResult | parseFPrintfAttrs (OpAsmParser &p, NamedAttrList &resultAttrs) |
static void | printFPrintfAttrs (OpAsmPrinter &p, Operation *op, DictionaryAttr attr) |
static ParseResult | parseStopAttrs (OpAsmParser &p, NamedAttrList &resultAttrs) |
static void | printStopAttrs (OpAsmPrinter &p, Operation *op, DictionaryAttr attr) |
static ParseResult | parseVerifAttrs (OpAsmParser &p, NamedAttrList &resultAttrs) |
static void | printVerifAttrs (OpAsmPrinter &p, Operation *op, DictionaryAttr attr) |
static void | genericAsmResultNames (Operation *op, OpAsmSetValueNameFn setNameFn) |
#define GET_OP_CLASSES |
Definition at line 6916 of file FIRRTLOps.cpp.
|
static |
Definition at line 1182 of file FIRRTLOps.cpp.
|
static |
Definition at line 1154 of file FIRRTLOps.cpp.
void buildModuleLike | ( | OpBuilder & | builder, |
OperationState & | result, | ||
StringAttr | name, | ||
ArrayRef< PortInfo > | ports | ||
) |
Definition at line 1109 of file FIRRTLOps.cpp.
References circt::firrtl::direction::packAttribute().
|
static |
Definition at line 4543 of file FIRRTLOps.cpp.
References checkAggConstant().
Referenced by checkAggConstant().
|
static |
Checks that connections to 'const' destinations are not dependent on non-'const' conditions in when blocks.
Looks up the value's defining op until the defining op is null or a declaration of the value. If a SubAccessOp is encountered with a 'const' input, originalFieldType
is made 'const'.
Definition at line 3963 of file FIRRTLOps.cpp.
References isConstFieldDriven().
|
static |
Check if the source and sink are of appropriate flow.
Definition at line 3897 of file FIRRTLOps.cpp.
References circt::firrtl::foldFlow(), circt::firrtl::getDeclarationKind(), circt::firrtl::getFieldName(), circt::firrtl::getFieldRefFromValue(), circt::firrtl::Instance, circt::firrtl::isValidDst(), circt::firrtl::isValidSrc(), circt::firrtl::Port, and toString().
|
static |
Definition at line 450 of file FIRRTLOps.cpp.
References isLayerSetCompatibleWith().
|
static |
Definition at line 675 of file FIRRTLOps.cpp.
References assert().
|
static |
Emit an error if optional location is non-null, return null of return type.
Definition at line 97 of file FIRRTLOps.cpp.
|
static |
Definition at line 1037 of file FIRRTLOps.cpp.
References empty, and removeElementsAtIndices().
|
static |
Erases the ports that have their corresponding bit set in portIndices
.
Definition at line 991 of file FIRRTLOps.cpp.
References assert(), fixDomainInfoDeletions(), circt::firrtl::direction::packAttribute(), and removeElementsAtIndices().
|
static |
Definition at line 913 of file FIRRTLOps.cpp.
Referenced by erasePorts().
|
static |
Return an updated domain info Attribute with domain indices updated based on port insertions.
Definition at line 757 of file FIRRTLOps.cpp.
Referenced by insertPorts().
|
static |
Helper for naming forceable declarations (and their optional ref result).
Definition at line 3629 of file FIRRTLOps.cpp.
|
static |
Definition at line 6224 of file FIRRTLOps.cpp.
|
static |
Definition at line 3376 of file FIRRTLOps.cpp.
|
static |
Get the ambient layers active at the given op.
Definition at line 361 of file FIRRTLOps.cpp.
Referenced by getAmbientLayersFor().
|
static |
Get the ambient layer requirements at the definition site of the value.
Definition at line 380 of file FIRRTLOps.cpp.
References getAmbientLayersAt(), and circt::firrtl::getFieldRefFromValue().
Referenced by getLayersFor().
void getAsmBlockArgumentNamesImpl | ( | Operation * | op, |
mlir::Region & | region, | ||
OpAsmSetValueNameFn | setNameFn | ||
) |
Get a special name to use when printing the entry block arguments of the region contained by an operation in this dialect.
Definition at line 332 of file FIRRTLOps.cpp.
|
static |
Get the effective layer requirements for the given value.
The effective layers for a value is the union of
Definition at line 388 of file FIRRTLOps.cpp.
References getAmbientLayersFor().
|
static |
Return the kind of port this is given the port type from a 'mem' decl.
Definition at line 145 of file FIRRTLOps.cpp.
References circt::firrtl::addr, circt::firrtl::clk, circt::firrtl::data, circt::firrtl::en, circt::firrtl::mask, circt::firrtl::rdata, circt::firrtl::wdata, circt::firrtl::wmask, and circt::firrtl::wmode.
|
static |
Definition at line 654 of file FIRRTLOps.cpp.
|
static |
Definition at line 720 of file FIRRTLOps.cpp.
References getBodyBlock().
|
static |
Definition at line 684 of file FIRRTLOps.cpp.
References circt::firrtl::getNumPorts().
|
static |
Infer the result type for a multiplexer given its two operand types, which may be aggregates.
This essentially performs a pairwise comparison of fields and elements, as follows:
Definition at line 5625 of file FIRRTLOps.cpp.
References circt::firrtl::FIRRTLBaseType::getAllConstDroppedType(), circt::firrtl::FIRRTLBaseType::getBitWidthOrSentinel(), circt::firrtl::FIRRTLBaseType::getConstType(), inferMuxReturnType(), circt::firrtl::FIRRTLBaseType::isConst(), and numElements.
Referenced by inferMuxReturnType().
|
static |
Inserts the given ports.
The insertion indices are expected to be in order. Insertion occurs in-order, such that ports with the same insertion index appear in the module in the same order they appeared in the list.
Definition at line 780 of file FIRRTLOps.cpp.
References assert(), empty, fixDomainInfoInsertions(), circt::firrtl::direction::packAttribute(), and circt::firrtl::direction::unGet().
|
static |
Checks if the type has any 'const' leaf elements .
If isFlip
is true
, the const
leaf is not considered to be driven.
Definition at line 3939 of file FIRRTLOps.cpp.
References circt::firrtl::FIRRTLBaseType::isConst(), isConstFieldDriven(), and circt::firrtl::FIRRTLBaseType::isPassive().
Referenced by checkConnectConditionality(), and isConstFieldDriven().
|
static |
Check that the source layer is compatible with the destination layer.
Either the source and destination are identical, or the source-layer is a parent of the destination. For example A
is compatible with A.B.C
, because any definition valid in A
is also valid in A.B.C
.
Definition at line 400 of file FIRRTLOps.cpp.
Referenced by isLayerCompatibleWith(), and isLayerSetCompatibleWith().
|
static |
Check that the source layer is present in the destination layers.
Definition at line 424 of file FIRRTLOps.cpp.
References isLayerCompatibleWith().
|
static |
Check that the source layers are all present in the destination layers.
True if all source layers are present in the destination. Outputs the set of source layers that are missing in the destination.
Definition at line 440 of file FIRRTLOps.cpp.
References isLayerCompatibleWith().
Referenced by checkLayerCompatibility().
|
static |
If LHS and RHS are both UInt or SInt types, the return true and fill in the width of them if known.
If unknown, return -1 for the widths. The constness of the result is also returned, where if both lhs and rhs are const, then the result is const.
On failure, this reports and error and returns false. This function should not be used if you don't want an error reported.
Definition at line 5243 of file FIRRTLOps.cpp.
|
static |
Definition at line 5891 of file FIRRTLOps.cpp.
References circt::firrtl::WidthQualifiedTypeTrait< ConcreteType >::getWidth().
|
static |
Definition at line 481 of file FIRRTLOps.cpp.
|
static |
Definition at line 6146 of file FIRRTLOps.cpp.
ParseResult parseClassLike | ( | OpAsmParser & | parser, |
OperationState & | result, | ||
bool | hasSSAIdentifiers | ||
) |
Definition at line 2115 of file FIRRTLOps.cpp.
References assert(), circt::firrtl::direction::packAttribute(), and parseModulePorts().
|
static |
Parse an optional attribute dictionary, adding an empty 'annotations' attribute if not specified.
Definition at line 6030 of file FIRRTLOps.cpp.
Referenced by parseElidePortAnnotations(), and parseFIRRTLImplicitSSAName().
|
static |
Definition at line 6162 of file FIRRTLOps.cpp.
Referenced by parseFPrintfAttrs(), parsePrintfAttrs(), parseStopAttrs(), and parseVerifAttrs().
|
static |
Parse an optional attribute dictionary, adding empty 'annotations' and 'portAnnotations' attributes if not specified.
Definition at line 6054 of file FIRRTLOps.cpp.
References parseElideAnnotations().
Referenced by parseMemOp().
|
static |
Definition at line 6111 of file FIRRTLOps.cpp.
References circt::inferImplicitSSAName(), and parseElideAnnotations().
|
static |
Definition at line 1674 of file FIRRTLOps.cpp.
References assert(), circt::firrtl::direction::packAttribute(), parseModulePorts(), and parseOptionalParameters().
|
static |
Definition at line 6191 of file FIRRTLOps.cpp.
References parseElideEmptyName().
|
static |
Definition at line 6132 of file FIRRTLOps.cpp.
References parseElidePortAnnotations().
|
static |
Parse a list of module ports.
If port names are SSA identifiers, then this will populate entryArgs
.
Definition at line 1375 of file FIRRTLOps.cpp.
References assert(), circt::hw::InnerSymbolTable::getInnerSymbolAttrName(), and isdigit.
Referenced by parseClassLike(), and parseFModuleLikeOp().
|
static |
A forward declaration for NameKind
attribute parser.
Definition at line 6083 of file FIRRTLOps.cpp.
|
static |
Parse an parameter list if present.
module-parameter-list ::= <
parameter-decl (,
parameter-decl)* >
parameter-decl ::= identifier :
type parameter-decl ::= identifier :
type =
attribute
Definition at line 1628 of file FIRRTLOps.cpp.
Referenced by parseFModuleLikeOp(), and parseParameterList().
|
static |
Shim to use with assemblyFormat, custom<ParameterList>.
Definition at line 1654 of file FIRRTLOps.cpp.
References parseOptionalParameters().
|
static |
Definition at line 6181 of file FIRRTLOps.cpp.
References parseElideEmptyName().
|
static |
Definition at line 6202 of file FIRRTLOps.cpp.
References parseElideEmptyName().
ParseResult parseSubfieldLikeOp | ( | OpAsmParser & | parser, |
OperationState & | result | ||
) |
Definition at line 4832 of file FIRRTLOps.cpp.
|
static |
Definition at line 6211 of file FIRRTLOps.cpp.
References parseElideEmptyName().
|
static |
Definition at line 490 of file FIRRTLOps.cpp.
|
static |
Definition at line 6154 of file FIRRTLOps.cpp.
|
static |
Definition at line 2193 of file FIRRTLOps.cpp.
References printModulePorts().
|
static |
Definition at line 6039 of file FIRRTLOps.cpp.
Referenced by printFIRRTLImplicitSSAName().
|
static |
Definition at line 6171 of file FIRRTLOps.cpp.
Referenced by printFPrintfAttrs(), printPrintfAttrs(), printStopAttrs(), and printVerifAttrs().
|
static |
Definition at line 6068 of file FIRRTLOps.cpp.
Referenced by printMemOp().
|
static |
Definition at line 6119 of file FIRRTLOps.cpp.
References circt::elideImplicitSSAName(), circt::hw::InnerSymbolTable::getInnerSymbolAttrName(), and printElideAnnotations().
|
static |
Definition at line 1547 of file FIRRTLOps.cpp.
References printModulePorts(), and printParameterList().
|
static |
Definition at line 6196 of file FIRRTLOps.cpp.
References printElideEmptyName().
|
static |
Always elide "ruw" and elide "annotations" if it exists or if it is empty.
Definition at line 6137 of file FIRRTLOps.cpp.
References printElidePortAnnotations().
|
static |
Print a list of module ports in the following form: in x: !firrtl.uint<1> [{class = "DontTouch}], out "_port": !firrtl.uint<2>
When there is no block specified, the port names print as MLIR identifiers, wrapping in quotes if not legal to print as-is. When there is no block specified, this function always return false, indicating that there was no issue printing port names.
If there is a block specified, then port names will be printed as SSA values. If there is a reason the printed SSA values can't match the true port name, then this function will return true. When this happens, the caller should print the port names as a part of the attr-dict
.
Definition at line 1279 of file FIRRTLOps.cpp.
References empty, and circt::firrtl::direction::get().
Referenced by printClassLike(), and printFModuleLikeOp().
|
static |
Definition at line 6100 of file FIRRTLOps.cpp.
|
static |
Print a paramter list for a module or instance.
Definition at line 1530 of file FIRRTLOps.cpp.
Referenced by printFModuleLikeOp().
|
static |
Definition at line 6186 of file FIRRTLOps.cpp.
References printElideEmptyName().
|
static |
Definition at line 6206 of file FIRRTLOps.cpp.
References printElideEmptyName().
|
static |
Definition at line 4917 of file FIRRTLOps.cpp.
|
static |
Definition at line 6215 of file FIRRTLOps.cpp.
References printElideEmptyName().
|
static |
Remove elements from the input array corresponding to set bits in indicesToDrop
, returning the elements not mentioned.
Definition at line 58 of file FIRRTLOps.cpp.
References assert().
Referenced by eraseInternalPaths(), and erasePorts().
const char * toString | ( | Flow | flow | ) |
Definition at line 199 of file FIRRTLOps.cpp.
Referenced by checkConnectFlow().
|
static |
Definition at line 1825 of file FIRRTLOps.cpp.
|
static |
Definition at line 1932 of file FIRRTLOps.cpp.
References verifyProbeType().
|
static |
Definition at line 1911 of file FIRRTLOps.cpp.
Referenced by verifyPortSymbolUses().
|
static |
Definition at line 4944 of file FIRRTLOps.cpp.