#include "circt/Conversion/CombToAIG.h"
#include "circt/Dialect/AIG/AIGOps.h"
#include "circt/Dialect/Comb/CombOps.h"
#include "circt/Dialect/HW/HWOps.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 SmallVector< Value > | extractBits (OpBuilder &builder, Value val) |
|
template<bool isLeftShift> |
static Value | createShiftLogic (ConversionPatternRewriter &rewriter, Location loc, Value shiftAmount, int64_t maxShiftAmount, llvm::function_ref< Value(int64_t)> getPadding, llvm::function_ref< Value(int64_t)> getExtract) |
|
static void | populateCombToAIGConversionPatterns (RewritePatternSet &patterns) |
|
◆ GEN_PASS_DEF_CONVERTCOMBTOAIG
#define GEN_PASS_DEF_CONVERTCOMBTOAIG |
◆ createShiftLogic()
template<bool isLeftShift>
static Value createShiftLogic |
( |
ConversionPatternRewriter & |
rewriter, |
|
|
Location |
loc, |
|
|
Value |
shiftAmount, |
|
|
int64_t |
maxShiftAmount, |
|
|
llvm::function_ref< Value(int64_t)> |
getPadding, |
|
|
llvm::function_ref< Value(int64_t)> |
getExtract |
|
) |
| |
|
static |
◆ extractBits()
static SmallVector< Value > extractBits |
( |
OpBuilder & |
builder, |
|
|
Value |
val |
|
) |
| |
|
static |
◆ populateCombToAIGConversionPatterns()
static void populateCombToAIGConversionPatterns |
( |
RewritePatternSet & |
patterns | ) |
|
|
static |