MLIR
21.0.0git
|
Go to the source code of this file.
Functions | |
static bool | isResultValueDead (linalg::GenericOp genericOp, OpResult result) |
Return true if the result of an operation genericOp is dead. More... | |
static llvm::SmallDenseMap< unsigned, unsigned > | deduplicateInputOperands (GenericOp genericOp, SmallVector< OpOperand * > &droppedOpOperands, SmallVector< Value > &newInputOperands, SmallVector< AffineMap > &newIndexingMaps) |
static llvm::SmallDenseMap< unsigned, unsigned > | deduplicateOutputOperands (GenericOp genericOp, SmallVector< OpOperand * > &droppedOpOperands, SmallVector< Value > &newOutputOperands, SmallVector< AffineMap > &newIndexingMaps, bool removeOutputs) |
static void | populateOpPayload (GenericOp genericOp, GenericOp newOp, const llvm::SmallDenseMap< unsigned, unsigned > &origInsToNewInsPos, const llvm::SmallDenseMap< unsigned, unsigned > &origOutsToNewOutsPos, RewriterBase &rewriter) |
|
static |
Definition at line 63 of file EraseUnusedOperandsAndResults.cpp.
References mlir::detail::enumerate(), and mlir::IROperand< DerivedT, IRValueT >::get().
Referenced by mlir::linalg::deduplicateOperandsAndRemoveDeadResults().
|
static |
Definition at line 106 of file EraseUnusedOperandsAndResults.cpp.
References mlir::detail::enumerate(), and isResultValueDead().
Referenced by mlir::linalg::deduplicateOperandsAndRemoveDeadResults().
|
static |
Return true
if the result
of an operation genericOp
is dead.
Definition at line 17 of file EraseUnusedOperandsAndResults.cpp.
References mlir::OpResult::getResultNumber(), mlir::Value::hasOneUse(), mlir::Operation::use_empty(), mlir::Value::use_empty(), and mlir::Value::user_begin().
Referenced by deduplicateOutputOperands().
|
static |
Definition at line 172 of file EraseUnusedOperandsAndResults.cpp.
References mlir::Block::empty(), mlir::detail::enumerate(), mlir::Block::front(), mlir::Block::getArgument(), mlir::Block::getNumArguments(), mlir::OpOperand::getOperandNumber(), mlir::Block::getTerminator(), mlir::RewriterBase::mergeBlocks(), mlir::RewriterBase::replaceOpWithNewOp(), and mlir::OpBuilder::setInsertionPoint().
Referenced by mlir::linalg::deduplicateOperandsAndRemoveDeadResults().