|
| ffi::Map< Var, IntSet > | tvm::sym::ConvertDomMap (const std::unordered_map< const VarNode *, IntSet > &dom_map) |
| | Convert std::unordered_map<const VarNode*, IntSet> to ffi::Map<Var, IntSet>
|
| |
| IntSet | tvm::sym::EvalSet (PrimExpr e, const ffi::Map< Var, IntSet > &dom_map) |
| | Find an symbolic integer set that contains all possible values of e given the domain of each variables.
|
| |
| IntSet | tvm::sym::EvalSet (PrimExpr e, const std::unordered_map< const VarNode *, IntSet > &dom_map) |
| | Same as EvalSet, but takes unordered_map.
|
| |
| IntSet | tvm::sym::EvalSet (IntSet s, const std::unordered_map< const VarNode *, IntSet > &dom_map) |
| | Find an symbolic integer set that contains is union over all the possible conditional values in dom_map.
|
| |
| IntSet | tvm::sym::EvalSet (Range r, const std::unordered_map< const VarNode *, IntSet > &dom_map) |
| | Same as EvalSet, but takes unordered_map.
|
| |
| ffi::Array< IntSet > | tvm::sym::EvalSet (const ffi::Array< Range > ®ion, const ffi::Map< Var, IntSet > &dom_map) |
| | Same as EvalSet, but takes ffi::Array<Range>
|
| |
| ExprIntSetMap | tvm::sym::EvalSetForEachSubExpr (PrimExpr e, const std::unordered_map< const VarNode *, IntSet > &dom_map) |
| | Find the integer set of every sub-expression, given the domain of each iteration variables.
|
| |
| IntSet | tvm::sym::Union (const ffi::Array< IntSet > &sets) |
| | Create a union set of all sets, possibly relaxed.
|
| |
| ffi::Array< IntSet > | tvm::sym::UnionRegion (const ffi::Array< ffi::Array< IntSet > > &nd_int_sets) |
| | The union of N-dimensional integer sets.
|
| |
| IntSet | tvm::sym::UnionLowerBound (const ffi::Array< IntSet > &sets) |
| | Create a lower-bound of union set, where some of the segments may be dropped.
|
| |
| ffi::Array< IntSet > | tvm::sym::UnionRegionLowerBound (const ffi::Array< ffi::Array< IntSet > > &nd_int_sets) |
| | The union of N-dimensional integer sets.
|
| |
| IntSet | tvm::sym::Intersect (const ffi::Array< IntSet > &sets) |
| | Create an intersected set of all sets.
|
| |
| TVM_TIRX_DLL IntSet | tvm::sym::Intersect (const IntSet &lhs, const IntSet &rhs, const Analyzer &analyzer) |
| | Intersect two integer sets using the analyzer's bindings and constraints.
|
| |
| ffi::Map< Var, sym::IntSet > | tvm::sym::AsIntSet (const ffi::Map< Var, Range > &var_dom) |
| | Converts the Ranges to IntSets.
|
| |
| TVM_TIRX_DLL ffi::Optional< ffi::Array< IntSet > > | tvm::sym::EstimateRegionStrictBound (const ffi::Array< Range > ®ion, const ffi::Map< Var, Range > &var_dom, const PrimExpr &predicate, const sym::Analyzer &analyzer) |
| | Analyze the region with affine map, given the domain of variables and their predicate. The result should be strict, i.e. no region is discarded or relaxed.
|
| |
| TVM_TIRX_DLL ffi::Optional< ffi::Array< IntSet > > | tvm::sym::EstimateRegionLowerBound (const ffi::Array< Range > ®ion, const ffi::Map< Var, Range > &var_dom, const PrimExpr &predicate, const sym::Analyzer &analyzer) |
| | Analyze the region with affine map, given the domain of variables and their predicate. Some subregion may be discarded during the lower-bound analysis.
|
| |
| TVM_TIRX_DLL ffi::Array< IntSet > | tvm::sym::EstimateRegionUpperBound (const ffi::Array< Range > ®ion, const ffi::Map< Var, Range > &var_dom, const PrimExpr &predicate, const sym::Analyzer &analyzer) |
| | Analyze the region with affine map, given the domain of variables and their predicate Relaxation of the region may be used in upper-bound analysis, i.e. some extra region may be added to the result.
|
| |