MLIR  17.0.0git
Namespaces | Typedefs | Functions
SliceAnalysis.h File Reference
#include <functional>
#include <vector>
#include "mlir/Support/LLVM.h"
#include "llvm/ADT/SetVector.h"
+ Include dependency graph for SliceAnalysis.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


 Include the generated interface declarations.


using mlir::TransitiveFilter = llvm::function_ref< bool(Operation *)>
 Type of the condition to limit the propagation of transitive use-defs. More...


void mlir::getForwardSlice (Operation *op, SetVector< Operation * > *forwardSlice, TransitiveFilter filter=nullptr)
 Fills forwardSlice with the computed forward slice (i.e. More...
void mlir::getForwardSlice (Value root, SetVector< Operation * > *forwardSlice, TransitiveFilter filter=nullptr)
 Value-rooted version of getForwardSlice. More...
void mlir::getBackwardSlice (Operation *op, SetVector< Operation * > *backwardSlice, TransitiveFilter filter=nullptr)
 Fills backwardSlice with the computed backward slice (i.e. More...
void mlir::getBackwardSlice (Value root, SetVector< Operation * > *backwardSlice, TransitiveFilter filter=nullptr)
 Value-rooted version of getBackwardSlice. More...
SetVector< Operation * > mlir::getSlice (Operation *op, TransitiveFilter backwardFilter=nullptr, TransitiveFilter forwardFilter=nullptr)
 Iteratively computes backward slices and forward slices until a fixed point is reached. More...
SetVector< Operation * > mlir::topologicalSort (const SetVector< Operation * > &toSort)
 Multi-root DAG topological sort. More...
Value mlir::matchReduction (ArrayRef< BlockArgument > iterCarriedArgs, unsigned redPos, SmallVectorImpl< Operation * > &combinerOps)
 Utility to match a generic reduction given a list of iteration-carried arguments, iterCarriedArgs and the position of the potential reduction argument within the list, redPos. More...