|
| void | circt::firrtl::emitConnect (OpBuilder &builder, Location loc, Value lhs, Value rhs) |
| | Emit a connect between two values.
|
| |
| void | circt::firrtl::emitConnect (ImplicitLocOpBuilder &builder, Value lhs, Value rhs) |
| | Emit a connect between two values.
|
| |
| IntegerAttr | circt::firrtl::getIntAttr (Type type, const APInt &value) |
| | Utiility for generating a constant attribute.
|
| |
| IntegerAttr | circt::firrtl::getIntZerosAttr (Type type) |
| | Utility for generating a constant zero attribute.
|
| |
| IntegerAttr | circt::firrtl::getIntOnesAttr (Type type) |
| | Utility for generating a constant all ones attribute.
|
| |
| PropAssignOp | circt::firrtl::getPropertyAssignment (FIRRTLPropertyValue value) |
| | Return the single assignment to a Property value.
|
| |
| Value | circt::firrtl::getDriverFromConnect (Value val) |
| | Return the module-scoped driver of a value only looking through one connect.
|
| |
| Value | circt::firrtl::getValueSource (Value val, bool lookThroughWires, bool lookThroughNodes, bool lookThroughCasts) |
| | Return the value that drives another FIRRTL value within module scope.
|
| |
| Value | circt::firrtl::getModuleScopedDriver (Value val, bool lookThroughWires, bool lookThroughNodes, bool lookThroughCasts) |
| | Return the value that drives another FIRRTL value within module scope.
|
| |
| template<typename A , typename... B> |
| static bool | circt::firrtl::isModuleScopedDrivenBy (Value val, bool lookThroughWires, bool lookThroughNodes, bool lookThroughCasts) |
| | Return true if a value is module-scoped driven by a value of a specific type.
|
| |
| bool | circt::firrtl::walkDrivers (FIRRTLBaseValue value, bool lookThroughWires, bool lookThroughNodes, bool lookThroughCasts, WalkDriverCallback callback) |
| |
| FieldRef | circt::firrtl::getFieldRefFromValue (Value value, bool lookThroughCasts=false) |
| | Get the FieldRef from a value.
|
| |
| FieldRef | circt::firrtl::getDeltaRef (Value value, bool lookThroughCasts=false) |
| | Get the delta indexing from a value, as a FieldRef.
|
| |
| std::pair< std::string, bool > | circt::firrtl::getFieldName (const FieldRef &fieldRef, bool nameSafe=false) |
| | Get a string identifier representing the FieldRef.
|
| |
| Value | circt::firrtl::getValueByFieldID (ImplicitLocOpBuilder builder, Value value, unsigned fieldID) |
| | This gets the value targeted by a field id.
|
| |
| void | circt::firrtl::walkGroundTypes (FIRRTLType firrtlType, llvm::function_ref< void(uint64_t, FIRRTLBaseType, bool)> fn) |
| | Walk leaf ground types in the firrtlType and apply the function fn.
|
| |
| hw::InnerSymTarget | circt::firrtl::getTargetFor (FieldRef ref) |
| | Return the inner sym target for the specified value and fieldID.
|
| |
| FieldRef | circt::firrtl::getFieldRefForTarget (const hw::InnerSymTarget &ist) |
| | Get FieldRef pointing to the specified inner symbol target, which must be valid.
|
| |
| std::pair< hw::InnerSymAttr, StringAttr > | circt::firrtl::getOrAddInnerSym (MLIRContext *context, hw::InnerSymAttr attr, uint64_t fieldID, llvm::function_ref< hw::InnerSymbolNamespace &()> getNamespace) |
| | Ensure that the the InnerSymAttr has a symbol on the field specified.
|
| |
| StringAttr | circt::firrtl::getOrAddInnerSym (const hw::InnerSymTarget &target, llvm::function_ref< hw::InnerSymbolNamespace &()> getNamespace) |
| | Returns an inner symbol identifier for the specified target (op or port), adding one if necessary.
|
| |
| StringAttr | circt::firrtl::getOrAddInnerSym (const hw::InnerSymTarget &target, GetNamespaceCallback getNamespace) |
| | Returns an inner symbol identifier for the specified target (op or port), adding one if necessary.
|
| |
| hw::InnerRefAttr | circt::firrtl::getInnerRefTo (const hw::InnerSymTarget &target, GetNamespaceCallback getNamespace) |
| | Obtain an inner reference to the target (operation or port), adding an inner symbol as necessary.
|
| |
| static StringAttr | circt::firrtl::getOrAddInnerSym (Operation *op, GetNamespaceCallback getNamespace) |
| | Returns an inner symbol identifier for the specified operation, adding one if necessary.
|
| |
| static StringAttr | circt::firrtl::getOrAddInnerSym (Operation *op, uint64_t fieldID, GetNamespaceCallback getNamespace) |
| | Returns an inner symbol identifier for the specified operation's field adding one if necessary.
|
| |
| static hw::InnerRefAttr | circt::firrtl::getInnerRefTo (Operation *op, GetNamespaceCallback getNamespace) |
| | Obtain an inner reference to an operation, possibly adding an inner symbol.
|
| |
| static hw::InnerRefAttr | circt::firrtl::getInnerRefTo (Operation *op, uint64_t fieldID, GetNamespaceCallback getNamespace) |
| | Obtain an inner reference to an operation's field, possibly adding an inner symbol.
|
| |
| static StringAttr | circt::firrtl::getOrAddInnerSym (FModuleLike mod, size_t portIdx, GetNamespaceCallback getNamespace) |
| | Returns an inner symbol identifier for the specified port, adding one if necessary.
|
| |
| static StringAttr | circt::firrtl::getOrAddInnerSym (FModuleLike mod, size_t portIdx, uint64_t fieldID, GetNamespaceCallback getNamespace) |
| | Returns an inner symbol identifier for the specified port's field, adding one if necessary.
|
| |
| static hw::InnerRefAttr | circt::firrtl::getInnerRefTo (FModuleLike mod, size_t portIdx, GetNamespaceCallback getNamespace) |
| | Obtain an inner reference to a port, possibly adding an inner symbol.
|
| |
| static hw::InnerRefAttr | circt::firrtl::getInnerRefTo (FModuleLike mod, size_t portIdx, uint64_t fieldID, GetNamespaceCallback getNamespace) |
| | Obtain an inner reference to a port's field, possibly adding an inner symbol.
|
| |
| FIRRTLBaseType | circt::firrtl::getBaseType (Type type) |
| | If it is a base type, return it as is.
|
| |
| template<typename T > |
| T | circt::firrtl::getBaseOfType (Type type) |
| | Get base type if isa<> the requested type, else null.
|
| |
| FIRRTLType | circt::firrtl::mapBaseType (FIRRTLType type, function_ref< FIRRTLBaseType(FIRRTLBaseType)> fn) |
| | Return a FIRRTLType with its base type component mutated by the given function.
|
| |
| FIRRTLType | circt::firrtl::mapBaseTypeNullable (FIRRTLType type, function_ref< FIRRTLBaseType(FIRRTLBaseType)> fn) |
| | Return a FIRRTLType with its base type component mutated by the given function.
|
| |
| Type | circt::firrtl::lowerType (Type type, std::optional< Location > loc={}, llvm::function_ref< hw::TypeAliasType(Type, BaseTypeAliasType, Location)> getTypeDeclFn={}) |
| | Given a type, return the corresponding lowered type for the HW dialect.
|
| |
| std::pair< bool, std::optional< mlir::LocationAttr > > | circt::firrtl::maybeStringToLocation (StringRef spelling, bool skipParsing, StringAttr &locatorFilenameCache, FileLineColLoc &fileLineColLocCache, MLIRContext *context) |
| | Parse a string that may encode a FIRRTL location into a LocationAttr.
|
| |
| void | circt::firrtl::makeCommonPrefix (SmallString< 64 > &a, StringRef b) |
| | Truncate a to the common prefix of a and b.
|
| |
| PathOp | circt::firrtl::createPathRef (Operation *op, hw::HierPathOp nla, mlir::ImplicitLocOpBuilder &builderOM) |
| | Add the tracker annotation to the op and get a PathOp to the op.
|
| |