MLIR  20.0.0git
Namespaces | Functions
LoopInvariantCodeMotionUtils.h File Reference
#include "mlir/Support/LLVM.h"
#include "llvm/ADT/SmallVector.h"

Go to the source code of this file.

Namespaces

 mlir
 Include the generated interface declarations.
 

Functions

size_t mlir::moveLoopInvariantCode (ArrayRef< Region * > regions, function_ref< bool(Value, Region *)> isDefinedOutsideRegion, function_ref< bool(Operation *, Region *)> shouldMoveOutOfRegion, function_ref< void(Operation *, Region *)> moveOutOfRegion)
 Given a list of regions, perform loop-invariant code motion. More...
 
size_t mlir::moveLoopInvariantCode (LoopLikeOpInterface loopLike)
 Move side-effect free loop invariant code out of a loop-like op using methods provided by the interface. More...
 
LoopLikeOpInterface mlir::hoistLoopInvariantSubsets (RewriterBase &rewriter, LoopLikeOpInterface loopLike)
 Hoist loop-invariant tensor subsets (subset extraction and subset insertion ops) from loop-like ops. More...