CIRCT  18.0.0git
Classes | Typedefs | Functions
circt::scftocalyx Namespace Reference

Classes

class  ScfWhileOp
 
class  ScfForOp
 
struct  WhileScheduleable
 
struct  ForScheduleable
 
struct  CallScheduleable
 
class  WhileLoopLoweringStateInterface
 
class  ForLoopLoweringStateInterface
 
class  ComponentLoweringState
 Handles the current state of lowering of a Calyx component. More...
 
class  BuildOpGroups
 Iterate through the operations of a source function and instantiate components or primitives based on the type of the operations. More...
 
class  InlineExecuteRegionOpPattern
 Inlines Calyx ExecuteRegionOp operations within their parent blocks. More...
 
struct  FuncOpConversion
 Creates a new Calyx component for each FuncOp in the program. More...
 
class  BuildWhileGroups
 In BuildWhileGroups, a register is created for each iteration argumenet of the while op. More...
 
class  BuildForGroups
 In BuildForGroups, a register is created for the iteration argument of the for op. More...
 
class  BuildControl
 Builds a control schedule by traversing the CFG of the function and associating this with the previously created groups. More...
 
class  LateSSAReplacement
 LateSSAReplacement contains various functions for replacing SSA values that were not replaced during op construction. More...
 
class  CleanupFuncOps
 Erases FuncOp operations. More...
 
class  SCFToCalyxPass
 

Typedefs

using Scheduleable = std::variant< calyx::GroupOp, WhileScheduleable, ForScheduleable, CallScheduleable >
 A variant of types representing scheduleable operations. More...
 

Functions

template<typename TAllocOp >
static LogicalResult buildAllocOp (ComponentLoweringState &componentState, PatternRewriter &rewriter, TAllocOp allocOp)
 

Typedef Documentation

◆ Scheduleable

using circt::scftocalyx::Scheduleable = typedef std::variant<calyx::GroupOp, WhileScheduleable, ForScheduleable, CallScheduleable>

A variant of types representing scheduleable operations.

Definition at line 114 of file SCFToCalyx.cpp.

Function Documentation

◆ buildAllocOp()

template<typename TAllocOp >
static LogicalResult circt::scftocalyx::buildAllocOp ( ComponentLoweringState componentState,
PatternRewriter &  rewriter,
TAllocOp  allocOp 
)
static