|
Stmt | tvm::tir::IRTransform (Stmt stmt, const runtime::PackedFunc &preorder, const runtime::PackedFunc &postorder, Optional< Array< String >> only_enable=NullOpt) |
| recursively visit the ir nodes in post DFS order, and transform it More...
|
|
void | tvm::tir::PostOrderVisit (const ObjectRef &node, std::function< void(const ObjectRef &)> fvisit) |
| Recursively visit the ir in post DFS order node, apply fvisit Each node is guaranteed to be visited only once. More...
|
|
Stmt | tvm::tir::Substitute (Stmt stmt, std::function< Optional< PrimExpr >(const Var &var)> vmap) |
| Substitute the var specified by vmap. More...
|
|
PrimExpr | tvm::tir::Substitute (PrimExpr expr, std::function< Optional< PrimExpr >(const Var &var)> vmap) |
| Substitute the var specified by vmap. More...
|
|
Array< Range > | tvm::tir::Substitute (const Array< Range > ®ion, const Map< Var, PrimExpr > &vmap) |
| Substitute the var specified by vmap. More...
|
|
template<typename T > |
auto | tvm::tir::Substitute (T input, const Map< Var, PrimExpr > &value_map) |
| Sugar for substitute via a given map. More...
|
|
template<typename T > |
T | tvm::tir::Substitute (T input, const std::unordered_map< const VarNode *, PrimExpr > &value_map) |
| Sugar for substitute via a given map. More...
|
|
void | tvm::tir::PreOrderVisit (const ObjectRef &stmt_or_expr, const std::function< bool(const ObjectRef &)> &fvisit) |
| Recursively visit the IR in pre DFS order node, apply fvisit. If fvisit returns false, it won't visit the children of the node. More...
|
|
PrimFunc | tvm::tir::RenewDefs (const PrimFunc &func) |
| Renew the definition nodes for a TIR, including Var, Buffer and IterVar. This pass works as a simple DeepCopy to duplicate a function with different Vars and Buffers but the same behavior. More...
|
|
Functors for tir stmts utility functions to call common functors.