MLIR  20.0.0git
Classes | Namespaces | Functions
InliningUtils.h File Reference
#include "mlir/IR/BuiltinAttributes.h"
#include "mlir/IR/DialectInterface.h"
#include "mlir/IR/Location.h"
#include "mlir/IR/Region.h"
#include "mlir/IR/ValueRange.h"
#include <optional>

Go to the source code of this file.

Classes

class  mlir::DialectInlinerInterface
 This is the interface that must be implemented by the dialects of operations to be inlined. More...
 
class  mlir::InlinerInterface
 This interface provides the hooks into the inlining interface. More...
 

Namespaces

 mlir
 Include the generated interface declarations.
 

Functions

LogicalResult mlir::inlineRegion (InlinerInterface &interface, Region *src, Operation *inlinePoint, IRMapping &mapper, ValueRange resultsToReplace, TypeRange regionResultTypes, std::optional< Location > inlineLoc=std::nullopt, bool shouldCloneInlinedRegion=true)
 This function inlines a region, 'src', into another. More...
 
LogicalResult mlir::inlineRegion (InlinerInterface &interface, Region *src, Block *inlineBlock, Block::iterator inlinePoint, IRMapping &mapper, ValueRange resultsToReplace, TypeRange regionResultTypes, std::optional< Location > inlineLoc=std::nullopt, bool shouldCloneInlinedRegion=true)
 
LogicalResult mlir::inlineRegion (InlinerInterface &interface, Region *src, Operation *inlinePoint, ValueRange inlinedOperands, ValueRange resultsToReplace, std::optional< Location > inlineLoc=std::nullopt, bool shouldCloneInlinedRegion=true)
 This function is an overload of the above 'inlineRegion' that allows for providing the set of operands ('inlinedOperands') that should be used in-favor of the region arguments when inlining. More...
 
LogicalResult mlir::inlineRegion (InlinerInterface &interface, Region *src, Block *inlineBlock, Block::iterator inlinePoint, ValueRange inlinedOperands, ValueRange resultsToReplace, std::optional< Location > inlineLoc=std::nullopt, bool shouldCloneInlinedRegion=true)
 
LogicalResult mlir::inlineCall (InlinerInterface &interface, CallOpInterface call, CallableOpInterface callable, Region *src, bool shouldCloneInlinedRegion=true)
 This function inlines a given region, 'src', of a callable operation, 'callable', into the location defined by the given call operation. More...