CIRCT 20.0.0git
Loading...
Searching...
No Matches
Namespaces | Macros | Functions
CombToAIG.cpp File Reference
#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"
Include dependency graph for CombToAIG.cpp:

Go to the source code of this file.

Namespaces

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

Macros

#define GEN_PASS_DEF_CONVERTCOMBTOAIG
 

Functions

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)
 

Macro Definition Documentation

◆ GEN_PASS_DEF_CONVERTCOMBTOAIG

#define GEN_PASS_DEF_CONVERTCOMBTOAIG

Definition at line 21 of file CombToAIG.cpp.

Function Documentation

◆ 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

Definition at line 47 of file CombToAIG.cpp.

References assert(), and extractBits().

◆ extractBits()

static SmallVector< Value > extractBits ( OpBuilder &  builder,
Value  val 
)
static

Definition at line 33 of file CombToAIG.cpp.

Referenced by createShiftLogic().

◆ populateCombToAIGConversionPatterns()

static void populateCombToAIGConversionPatterns ( RewritePatternSet &  patterns)
static

Definition at line 603 of file CombToAIG.cpp.