CIRCT
20.0.0git
|
The ValueMapper class facilitates the definition and connection of SSA def-use chains between two location - a 'from' location (defining use-def chains) and a 'to' location (where new operations are created based on the 'from' location). More...
#include <ValueMapper.h>
Public Types | |
using | TypeTransformer = llvm::function_ref< mlir::Type(mlir::Type)> |
Public Member Functions | |
ValueMapper (BackedgeBuilder *bb=nullptr) | |
mlir::Value | get (mlir::Value from, TypeTransformer typeTransformer=ValueMapper::identity) |
llvm::SmallVector< mlir::Value > | get (mlir::ValueRange from, TypeTransformer typeTransformer=ValueMapper::identity) |
void | set (mlir::Value from, mlir::Value to, bool replace=false) |
void | set (mlir::ValueRange from, mlir::ValueRange to, bool replace=false) |
Static Public Member Functions | |
static mlir::Type | identity (mlir::Type t) |
Private Attributes | |
BackedgeBuilder * | bb = nullptr |
llvm::DenseMap< mlir::Value, std::variant< mlir::Value, Backedge > > | mapping |
The ValueMapper class facilitates the definition and connection of SSA def-use chains between two location - a 'from' location (defining use-def chains) and a 'to' location (where new operations are created based on the 'from' location).
ยด
Definition at line 35 of file ValueMapper.h.
using circt::ValueMapper::TypeTransformer = llvm::function_ref<mlir::Type(mlir::Type)> |
Definition at line 37 of file ValueMapper.h.
|
inlineexplicit |
Definition at line 39 of file ValueMapper.h.
mlir::Value circt::ValueMapper::get | ( | mlir::Value | from, |
TypeTransformer | typeTransformer = ValueMapper::identity |
||
) |
Referenced by circt::ssp::saveProblem().
llvm::SmallVector<mlir::Value> circt::ValueMapper::get | ( | mlir::ValueRange | from, |
TypeTransformer | typeTransformer = ValueMapper::identity |
||
) |
|
inlinestatic |
Definition at line 38 of file ValueMapper.h.
void circt::ValueMapper::set | ( | mlir::Value | from, |
mlir::Value | to, | ||
bool | replace = false |
||
) |
Referenced by circt::ssp::saveProblem().
void circt::ValueMapper::set | ( | mlir::ValueRange | from, |
mlir::ValueRange | to, | ||
bool | replace = false |
||
) |
|
private |
Definition at line 57 of file ValueMapper.h.
|
private |
Definition at line 58 of file ValueMapper.h.