CIRCT  20.0.0git
Classes | Enumerations | Functions
circt::seq Namespace Reference

Classes

struct  FirMemory
 Helper structure carrying information about FIR memory generated ops. More...
 

Enumerations

enum class  ReadEnableMode { Zero , Ignore , Undefined }
 

Functions

bool isValidIndexValues (Value hlmemHandle, ValueRange addresses)
 
mlir::TypedValue< seq::ImmutableType > createConstantInitialValue (OpBuilder builder, Location loc, mlir::IntegerAttr attr)
 
mlir::TypedValue< seq::ImmutableType > createConstantInitialValue (OpBuilder builder, Operation *constantLike)
 
Value unwrapImmutableValue (mlir::TypedValue< seq::ImmutableType > immutableVal)
 
FailureOr< seq::InitialOp > mergeInitialOps (Block *block)
 
std::unique_ptr< mlir::Pass > createLowerSeqHLMemPass ()
 
std::unique_ptr< mlir::Pass > createExternalizeClockGatePass (const ExternalizeClockGateOptions &options={})
 
std::unique_ptr< mlir::Pass > createLowerSeqFIFOPass ()
 
std::unique_ptr< mlir::Pass > createHWMemSimImplPass (const HWMemSimImplOptions &options={})
 
std::unique_ptr< mlir::Pass > createLowerSeqShiftRegPass ()
 
bool isClockOrI1Type (Type ty)
 Returns true if the type is i1 or seq.clock More...
 

Enumeration Type Documentation

◆ ReadEnableMode

Enumerator
Zero 
Ignore 
Undefined 

Definition at line 15 of file SeqEnums.h.

Function Documentation

◆ createConstantInitialValue() [1/2]

TypedValue< seq::ImmutableType > circt::seq::createConstantInitialValue ( OpBuilder  builder,
Location  loc,
mlir::IntegerAttr  attr 
)

Definition at line 1065 of file SeqOps.cpp.

References hw.ConstantOp::create().

◆ createConstantInitialValue() [2/2]

mlir::TypedValue< seq::ImmutableType > circt::seq::createConstantInitialValue ( OpBuilder  builder,
Operation *  constantLike 
)

Definition at line 1075 of file SeqOps.cpp.

References assert().

◆ createExternalizeClockGatePass()

std::unique_ptr< Pass > circt::seq::createExternalizeClockGatePass ( const ExternalizeClockGateOptions &  options = {})

Definition at line 131 of file ExternalizeClockGate.cpp.

Referenced by circt::firtool::populateHWToSV().

◆ createHWMemSimImplPass()

std::unique_ptr< Pass > circt::seq::createHWMemSimImplPass ( const HWMemSimImplOptions &  options = {})

Definition at line 768 of file HWMemSimImpl.cpp.

Referenced by circt::firtool::populateHWToSV().

◆ createLowerSeqFIFOPass()

std::unique_ptr< Pass > circt::seq::createLowerSeqFIFOPass ( )

Definition at line 226 of file LowerSeqFIFO.cpp.

◆ createLowerSeqHLMemPass()

std::unique_ptr< Pass > circt::seq::createLowerSeqHLMemPass ( )

Definition at line 181 of file LowerSeqHLMem.cpp.

◆ createLowerSeqShiftRegPass()

std::unique_ptr< Pass > circt::seq::createLowerSeqShiftRegPass ( )

Definition at line 85 of file LowerSeqShiftReg.cpp.

◆ isClockOrI1Type()

bool circt::seq::isClockOrI1Type ( Type  ty)

Returns true if the type is i1 or seq.clock

Definition at line 47 of file SeqTypes.cpp.

References circt::firrtl::getBitWidth(), and circt::hw::isHWIntegerType().

◆ isValidIndexValues()

bool circt::seq::isValidIndexValues ( Value  hlmemHandle,
ValueRange  addresses 
)

Definition at line 31 of file SeqOps.cpp.

◆ mergeInitialOps()

FailureOr< seq::InitialOp > circt::seq::mergeInitialOps ( Block *  block)

Definition at line 1093 of file SeqOps.cpp.

References assert().

◆ unwrapImmutableValue()

Value circt::seq::unwrapImmutableValue ( mlir::TypedValue< seq::ImmutableType >  immutableVal)