|
| template<class T > |
| T * | freetensor::GET_ISL_PTR (T *ptr) |
| |
| template<class T > |
| T * | freetensor::_COPY_ISL_PTR (const T *ptr, T *(copy)(T *)) |
| |
| template<class T > |
| T * | freetensor::MOVE_ISL_PTR (T *&ptr) |
| |
| template<typename T > |
| auto | freetensor::PBRefTake (std::remove_reference_t< T > &t) |
| |
| template<typename T > |
| auto | freetensor::PBRefTake (std::remove_reference_t< T > &&t) |
| |
| Ref< PBCtx > | freetensor::commonCtx (const auto &lhs, const auto &rhs) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::projectOutAllParams (T &&set) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::projectOutAllParams (T &&map) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::projectOutParamById (T &&set, const std::string &name) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::projectOutParamDims (T &&set, unsigned first, unsigned n) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::projectOutDims (T &&set, unsigned first, unsigned n) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::projectOutParamById (T &&map, const std::string &name) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::projectOutParamDims (T &&map, unsigned first, unsigned n) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::projectOutInputDims (T &&map, unsigned first, unsigned n) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::projectOutOutputDims (T &&map, unsigned first, unsigned n) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::insertDims (T &&set, unsigned first, unsigned n) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::insertInputDims (T &&map, unsigned first, unsigned n) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::insertOutputDims (T &&map, unsigned first, unsigned n) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::fixDim (T &&set, unsigned pos, int x) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::fixInputDim (T &&map, unsigned pos, int x) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::fixOutputDim (T &&map, unsigned pos, int x) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::lowerBoundDim (T &&set, unsigned pos, int x) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::lowerBoundInputDim (T &&map, unsigned pos, int x) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::lowerBoundOutputDim (T &&map, unsigned pos, int x) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::upperBoundDim (T &&set, unsigned pos, int x) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::upperBoundInputDim (T &&map, unsigned pos, int x) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::upperBoundOutputDim (T &&map, unsigned pos, int x) |
| |
| template<PBSetRef T> |
| PBMap | freetensor::newDomainOnlyMap (T &&set) |
| |
| template<PBSetRef T> |
| PBMap | freetensor::newRangeOnlyMap (T &&set) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::moveDimsInputToOutput (T &&map, unsigned first, unsigned n, unsigned target) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::moveDimsOutputToInput (T &&map, unsigned first, unsigned n, unsigned target) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::moveDimsParamToInput (T &&map, unsigned first, unsigned n, unsigned target) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::moveDimsParamToOutput (T &&map, unsigned first, unsigned n, unsigned target) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::moveDimsSetToParam (T &&set, unsigned first, unsigned n, unsigned target) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::moveDimsParamToSet (T &&set, unsigned first, unsigned n, unsigned target) |
| |
| template<PBSetRef T, PBSetRef U> |
| std::pair< PBSet, PBSet > | freetensor::padToSameDims (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::complement (T &&set) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::complement (T &&map) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::reverse (T &&map) |
| |
| template<PBMapRef T, PBMapRef U> |
| PBMap | freetensor::subtract (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T, PBSetRef U> |
| PBSet | freetensor::subtract (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBMapRef U> |
| PBMap | freetensor::intersect (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T, PBSetRef U> |
| PBSet | freetensor::intersect (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBSetRef U> |
| PBMap | freetensor::intersectDomain (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBSetRef U> |
| PBMap | freetensor::intersectRange (T &&lhs, U &&rhs) |
| |
| template<PBSingleFuncRef T, PBSetRef U> |
| PBSingleFunc | freetensor::intersectDomain (T &&lhs, U &&rhs) |
| |
| template<PBFuncRef T, PBSetRef U> |
| PBFunc | freetensor::intersectDomain (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T, PBSetRef U> |
| PBSet | freetensor::intersectParams (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBSetRef U> |
| PBMap | freetensor::intersectParams (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBMapRef U> |
| PBMap | freetensor::uni (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T, PBSetRef U> |
| PBSet | freetensor::uni (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T, PBMapRef U> |
| PBSet | freetensor::apply (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBMapRef U> |
| PBMap | freetensor::applyDomain (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBMapRef U> |
| PBMap | freetensor::applyRange (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T, PBMapRef U> |
| PBMap | freetensor::sum (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T, PBSetRef U> |
| PBSet | freetensor::sum (T &&lhs, U &&rhs) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::neg (T &&map) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::neg (T &&set) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::lexmax (T &&map) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::lexmin (T &&map) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::lexmax (T &&set) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::lexmin (T &&set) |
| |
| template<PBSpaceRef T> |
| PBMap | freetensor::identity (T &&space) |
| |
| template<PBSpaceRef T> |
| PBMap | freetensor::lexGE (T &&space) |
| |
| template<PBSpaceRef T> |
| PBMap | freetensor::lexGT (T &&space) |
| |
| template<PBSpaceRef T> |
| PBMap | freetensor::lexLE (T &&space) |
| |
| template<PBSpaceRef T> |
| PBMap | freetensor::lexLT (T &&space) |
| |
| PBSpace | freetensor::spaceAlloc (const Ref< PBCtx > &ctx, unsigned nparam, unsigned nIn, unsigned nOut) |
| |
| PBSpace | freetensor::spaceSetAlloc (const Ref< PBCtx > &ctx, unsigned nparam, unsigned dim) |
| |
| template<PBSpaceRef T> |
| PBSet | freetensor::emptySet (T &&space) |
| |
| template<PBSpaceRef T> |
| PBMap | freetensor::emptyMap (T &&space) |
| |
| template<PBSpaceRef T> |
| PBSet | freetensor::universeSet (T &&space) |
| |
| template<PBSpaceRef T> |
| PBMap | freetensor::universeMap (T &&space) |
| |
| template<PBMapRef T> |
| PBSet | freetensor::domain (T &&map) |
| |
| template<PBMapRef T> |
| PBSet | freetensor::range (T &&map) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::params (T &&set) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::coalesce (T &&set) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::coalesce (T &&map) |
| |
| template<PBSetRef T, PBSetRef U> |
| PBSet | freetensor::cartesianProduct (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T> |
| PBVal | freetensor::dimMaxVal (T &&set, int pos) |
| |
| template<PBSetRef T> |
| PBVal | freetensor::dimMinVal (T &&set, int pos) |
| |
| PBVal | freetensor::dimFixVal (const PBSet &set, int pos) |
| |
| template<PBSpaceRef T> |
| PBSpace | freetensor::spaceMapFromSet (T &&space) |
| |
| template<PBMapRef T> |
| PBSet | freetensor::wrap (T &&map) |
| |
| template<PBSetRef T> |
| PBMap | freetensor::unwrap (T &&set) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::flatten (T &&set) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::flattenDomain (T &&map) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::flattenRange (T &&map) |
| |
| template<PBMapRef T> |
| PBSet | freetensor::flattenMapToSet (T &&map) |
| |
| template<PBSetRef T> |
| PBPoint | freetensor::sample (T &&set) |
| |
| template<PBSingleFuncRef T, PBSingleFuncRef U> |
| PBSingleFunc | freetensor::min (T &&lhs, U &&rhs) |
| |
| template<PBSingleFuncRef T, PBSingleFuncRef U> |
| PBSingleFunc | freetensor::max (T &&lhs, U &&rhs) |
| |
| template<PBSetRef T> |
| PBSet | freetensor::coefficients (T &&set, int64_t c=0) |
| |
| bool | freetensor::isSubset (const PBSet &small, const PBSet &big) |
| |
| bool | freetensor::isSubset (const PBMap &small, const PBMap &big) |
| |
| bool | freetensor::operator== (const PBSet &lhs, const PBSet &rhs) |
| |
| bool | freetensor::operator== (const PBMap &lhs, const PBMap &rhs) |
| |
| bool | freetensor::operator== (const PBSingleFunc &lhs, const PBSingleFunc &rhs) |
| |
| bool | freetensor::operator== (const PBFunc &lhs, const PBFunc &rhs) |
| |
| auto | freetensor::pbFuncWithTimeout (const auto &func, int seconds, const auto &...args) -> std::optional< decltype(func(args...))> |
| |
|
| template<PBMapRef T> |
| PBMap | freetensor::moveDimsInputToParam (T &&map, unsigned first, unsigned n, unsigned target) |
| |
| template<PBMapRef T> |
| PBMap | freetensor::moveDimsOutputToParam (T &&map, unsigned first, unsigned n, unsigned target) |
| |