CIRCT 23.0.0git
Loading...
Searching...
No Matches
Namespaces | Macros | Functions
LowerIntmodules.cpp File Reference
#include "circt/Dialect/FIRRTL/AnnotationDetails.h"
#include "circt/Dialect/FIRRTL/FIRRTLInstanceGraph.h"
#include "circt/Dialect/FIRRTL/FIRRTLOps.h"
#include "circt/Dialect/FIRRTL/Passes.h"
#include "mlir/IR/Diagnostics.h"
#include "mlir/Pass/Pass.h"
#include "circt/Dialect/FIRRTL/Passes.h.inc"
Include dependency graph for LowerIntmodules.cpp:

Go to the source code of this file.

Namespaces

namespace  circt
 The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
 
namespace  circt::firrtl
 

Macros

#define GEN_PASS_DEF_LOWERINTMODULES
 

Functions

static LogicalResult checkModForAnnotations (FModuleLike mod, StringRef name)
 
static LogicalResult checkInstForAnnotations (FInstanceLike inst, StringRef name)
 
static Value replaceResultWithWire (ImplicitLocOpBuilder &builder, Value result, ValueRange domains={})
 
static LogicalResult swapEICGEnableInputs (FExtModuleOp op, InstanceOp inst, SmallVectorImpl< Value > &inputs)
 
static LogicalResult lowerLegacyEICGWrapperInstance (FExtModuleOp op, InstanceOp inst)
 
static LogicalResult lowerDomainEICGWrapperInstance (FExtModuleOp op, InstanceOp inst)
 

Macro Definition Documentation

◆ GEN_PASS_DEF_LOWERINTMODULES

#define GEN_PASS_DEF_LOWERINTMODULES

Definition at line 23 of file LowerIntmodules.cpp.

Function Documentation

◆ checkInstForAnnotations()

static LogicalResult checkInstForAnnotations ( FInstanceLike  inst,
StringRef  name 
)
static

Definition at line 51 of file LowerIntmodules.cpp.

References empty.

◆ checkModForAnnotations()

static LogicalResult checkModForAnnotations ( FModuleLike  mod,
StringRef  name 
)
static

Definition at line 44 of file LowerIntmodules.cpp.

References empty.

◆ lowerDomainEICGWrapperInstance()

static LogicalResult lowerDomainEICGWrapperInstance ( FExtModuleOp  op,
InstanceOp  inst 
)
static

Definition at line 106 of file LowerIntmodules.cpp.

References replaceResultWithWire(), and swapEICGEnableInputs().

◆ lowerLegacyEICGWrapperInstance()

static LogicalResult lowerLegacyEICGWrapperInstance ( FExtModuleOp  op,
InstanceOp  inst 
)
static

Definition at line 87 of file LowerIntmodules.cpp.

References replaceResultWithWire(), and swapEICGEnableInputs().

◆ replaceResultWithWire()

static Value replaceResultWithWire ( ImplicitLocOpBuilder &  builder,
Value  result,
ValueRange  domains = {} 
)
static

◆ swapEICGEnableInputs()

static LogicalResult swapEICGEnableInputs ( FExtModuleOp  op,
InstanceOp  inst,
SmallVectorImpl< Value > &  inputs 
)
static