#include "circt/Conversion/SimToSV.h"
#include "circt/Dialect/Comb/CombOps.h"
#include "circt/Dialect/Emit/EmitOps.h"
#include "circt/Dialect/HW/HWOps.h"
#include "circt/Dialect/SV/SVOps.h"
#include "circt/Dialect/Seq/SeqOps.h"
#include "circt/Dialect/Sim/SimDialect.h"
#include "circt/Dialect/Sim/SimOps.h"
#include "circt/Support/Namespace.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/DialectImplementation.h"
#include "mlir/IR/ImplicitLocOpBuilder.h"
#include "mlir/IR/Threading.h"
#include "mlir/Pass/Pass.h"
#include "mlir/Transforms/DialectConversion.h"
#include "circt/Conversion/Passes.h.inc"
Go to the source code of this file.
|
namespace | circt |
| The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
|
|
|
static bool | needsIfdefGuard (Operation *op) |
| Check whether an op should be placed inside an ifdef guard that prevents it from affecting synthesis runs.
|
|
static std::pair< Value, Value > | needsClockAndConditionWrapper (Operation *op) |
| Check whether an op should be placed inside an always process triggered on a clock, and an if statement checking for a condition.
|
|
static LogicalResult | convert (ClockedTerminateOp op, PatternRewriter &rewriter) |
|
static LogicalResult | convert (ClockedPauseOp op, PatternRewriter &rewriter) |
|
static LogicalResult | convert (TerminateOp op, PatternRewriter &rewriter) |
|
static LogicalResult | convert (PauseOp op, PatternRewriter &rewriter) |
|
static bool | moveOpsIntoIfdefGuardsAndProcesses (Operation *rootOp) |
|
◆ DEBUG_TYPE
#define DEBUG_TYPE "lower-sim-to-sv" |
◆ GEN_PASS_DEF_LOWERSIMTOSV
#define GEN_PASS_DEF_LOWERSIMTOSV |
◆ convert() [1/4]
static LogicalResult convert |
( |
ClockedPauseOp |
op, |
|
|
PatternRewriter & |
rewriter |
|
) |
| |
|
static |
◆ convert() [2/4]
static LogicalResult convert |
( |
ClockedTerminateOp |
op, |
|
|
PatternRewriter & |
rewriter |
|
) |
| |
|
static |
◆ convert() [3/4]
static LogicalResult convert |
( |
PauseOp |
op, |
|
|
PatternRewriter & |
rewriter |
|
) |
| |
|
static |
◆ convert() [4/4]
static LogicalResult convert |
( |
TerminateOp |
op, |
|
|
PatternRewriter & |
rewriter |
|
) |
| |
|
static |
◆ moveOpsIntoIfdefGuardsAndProcesses()
static bool moveOpsIntoIfdefGuardsAndProcesses |
( |
Operation * |
rootOp | ) |
|
|
static |
◆ needsClockAndConditionWrapper()
static std::pair< Value, Value > needsClockAndConditionWrapper |
( |
Operation * |
op | ) |
|
|
static |
◆ needsIfdefGuard()
static bool needsIfdefGuard |
( |
Operation * |
op | ) |
|
|
static |