#include "circt/Conversion/ConvertToArcs.h"
#include "circt/Dialect/Arc/ArcOps.h"
#include "circt/Dialect/HW/HWOps.h"
#include "circt/Dialect/LLHD/IR/LLHDOps.h"
#include "circt/Dialect/Seq/SeqOps.h"
#include "circt/Dialect/Sim/SimOps.h"
#include "circt/Support/ConversionPatternSet.h"
#include "circt/Support/Namespace.h"
#include "mlir/IR/PatternMatch.h"
#include "mlir/Pass/Pass.h"
#include "mlir/Transforms/DialectConversion.h"
#include "mlir/Transforms/RegionUtils.h"
#include "llvm/Support/Debug.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 | isArcBreakingOp (Operation *op) |
|
static LogicalResult | convertInitialValue (seq::CompRegOp reg, SmallVectorImpl< Value > &values) |
|
static LogicalResult | convert (llhd::CombinationalOp op, llhd::CombinationalOp::Adaptor adaptor, ConversionPatternRewriter &rewriter, const TypeConverter &converter) |
| llhd.combinational -> arc.execute
|
|
static LogicalResult | convert (llhd::YieldOp op, llhd::YieldOp::Adaptor adaptor, ConversionPatternRewriter &rewriter) |
| llhd.yield -> arc.output
|
|
◆ DEBUG_TYPE
#define DEBUG_TYPE "convert-to-arcs" |
◆ GEN_PASS_DEF_CONVERTTOARCSPASS
#define GEN_PASS_DEF_CONVERTTOARCSPASS |
◆ convert() [1/2]
static LogicalResult convert |
( |
llhd::CombinationalOp |
op, |
|
|
llhd::CombinationalOp::Adaptor |
adaptor, |
|
|
ConversionPatternRewriter & |
rewriter, |
|
|
const TypeConverter & |
converter |
|
) |
| |
|
static |
◆ convert() [2/2]
static LogicalResult convert |
( |
llhd::YieldOp |
op, |
|
|
llhd::YieldOp::Adaptor |
adaptor, |
|
|
ConversionPatternRewriter & |
rewriter |
|
) |
| |
|
static |
◆ convertInitialValue()
static LogicalResult convertInitialValue |
( |
seq::CompRegOp |
reg, |
|
|
SmallVectorImpl< Value > & |
values |
|
) |
| |
|
static |
◆ isArcBreakingOp()
static bool isArcBreakingOp |
( |
Operation * |
op | ) |
|
|
static |