outer 486 apps/fft/fft.cpp Var outer = Var::outermost(); outer 488 apps/fft/fft.cpp outer = x.args()[2]; outer 530 apps/fft/fft.cpp xT.compute_at(dft, outer).vectorize(n0).unroll(n1); outer 541 apps/fft/fft.cpp dft1T.compute_at(dft, outer); outer 675 apps/fft/fft.cpp Var outer = Var::outermost(); outer 677 apps/fft/fft.cpp outer = args.front(); outer 802 apps/fft/fft.cpp dftT.compute_at(dft, outer); outer 817 apps/fft/fft.cpp unzipped.compute_at(dft, outer) outer 867 apps/fft/fft.cpp Var outer = Var::outermost(); outer 869 apps/fft/fft.cpp outer = args.front(); outer 980 apps/fft/fft.cpp dft0_tiled.compute_at(dft, outer); outer 987 apps/fft/fft.cpp c.compute_at(dft, outer); outer 990 apps/fft/fft.cpp dft0T.compute_at(dft, outer); outer 992 apps/fft/fft.cpp dft.compute_at(unzipped, outer); outer 33 python_bindings/python/Func.h FuncOrStage &func_split(FuncOrStage &that, hh::VarOrRVar var, hh::VarOrRVar outer, hh::VarOrRVar inner, int factor) { outer 34 python_bindings/python/Func.h return that.split(var, outer, inner, factor); outer 16 src/ApplySplit.cpp Expr outer = Variable::make(Int(32), prefix + split.outer); outer 17 src/ApplySplit.cpp Expr outer_max = Variable::make(Int(32), prefix + split.outer + ".loop_max"); outer 26 src/ApplySplit.cpp Expr base = outer * split.factor + old_min; outer 43 src/ApplySplit.cpp dim_extent_alignment[split.outer] = iter->second / split.factor; outer 59 src/ApplySplit.cpp Expr rebased = outer * split.factor + inner; outer 96 src/ApplySplit.cpp Expr outer_min = Variable::make(Int(32), prefix + split.outer + ".loop_min"); outer 106 src/ApplySplit.cpp Expr outer = fused / factor + outer_min; outer 109 src/ApplySplit.cpp result.push_back(ApplySplitResult(prefix + split.outer, outer, ApplySplitResult::Substitution)); outer 111 src/ApplySplit.cpp result.push_back(ApplySplitResult(prefix + split.outer, outer, ApplySplitResult::LetStmt)); outer 116 src/ApplySplit.cpp map<string, Expr>::iterator outer_dim = dim_extent_alignment.find(split.outer); outer 123 src/ApplySplit.cpp result.push_back(ApplySplitResult(prefix + split.old_var, outer, ApplySplitResult::Substitution)); outer 124 src/ApplySplit.cpp result.push_back(ApplySplitResult(prefix + split.old_var, outer, ApplySplitResult::LetStmt)); outer 146 src/ApplySplit.cpp let_stmts.push_back({ prefix + split.outer + ".loop_min", 0 }); outer 147 src/ApplySplit.cpp let_stmts.push_back({ prefix + split.outer + ".loop_max", outer_extent-1 }); outer 148 src/ApplySplit.cpp let_stmts.push_back({ prefix + split.outer + ".loop_extent", outer_extent }); outer 152 src/ApplySplit.cpp Expr outer_extent = Variable::make(Int(32), prefix + split.outer + ".loop_extent"); outer 158 src/ApplySplit.cpp let_stmts.push_back({ prefix + split.outer + ".loop_min", old_var_min }); outer 159 src/ApplySplit.cpp let_stmts.push_back({ prefix + split.outer + ".loop_max", old_var_max }); outer 160 src/ApplySplit.cpp let_stmts.push_back({ prefix + split.outer + ".loop_extent", old_var_extent }); outer 954 src/Bounds.cpp bool box_contains(const Box &outer, const Box &inner) { outer 957 src/Bounds.cpp if (inner.size() > outer.size()) { outer 963 src/Bounds.cpp (outer[i].min <= inner[i].min) && outer 964 src/Bounds.cpp (outer[i].max >= inner[i].max)); outer 966 src/Bounds.cpp if (outer.maybe_unused()) { outer 969 src/Bounds.cpp condition = condition && ((outer.used && inner.used) == inner.used); outer 443 src/Func.cpp debug(4) << " Splitting " << it->var << " into " << s.outer << " and " << s.inner << "\n"; outer 453 src/Func.cpp rvars.insert(it + 1, {s.outer, 0, simplify((old_extent - 1 + s.factor)/s.factor)}); outer 471 src/Func.cpp [&s](const ReductionVariable& rv) { return (s.outer == rv.var); }); outer 477 src/Func.cpp debug(4) << " Fusing " << s.outer << " and " << s.inner << " into " << s.old_var << "\n"; outer 510 src/Func.cpp debug(4) << " Purify RVar " << iter->var << " into Var " << s.outer outer 531 src/Func.cpp debug(4) << " Renaming " << iter->var << " into " << s.outer << "\n"; outer 532 src/Func.cpp iter->var = s.outer; outer 905 src/Func.cpp void Stage::split(const string &old, const string &outer, const string &inner, Expr factor, bool exact, TailStrategy tail) { outer 907 src/Func.cpp << outer << " and " << inner << " with factor of " << factor << "\n"; outer 912 src/Func.cpp string new_names[2] = {inner, outer}; outer 933 src/Func.cpp outer_name = old_name + "." + outer; outer 980 src/Func.cpp descends_from_shiftinwards_outer.insert(s.outer); outer 983 src/Func.cpp descends_from_shiftinwards_outer.insert(s.outer); outer 986 src/Func.cpp descends_from_shiftinwards_outer.insert(s.outer); outer 1016 src/Func.cpp Stage &Stage::split(VarOrRVar old, VarOrRVar outer, VarOrRVar inner, Expr factor, TailStrategy tail) { outer 1018 src/Func.cpp user_assert(outer.is_rvar) << "Can't split RVar " << old.name() << " into Var " << outer.name() << "\n"; outer 1021 src/Func.cpp user_assert(!outer.is_rvar) << "Can't split Var " << old.name() << " into RVar " << outer.name() << "\n"; outer 1024 src/Func.cpp split(old.name(), outer.name(), inner.name(), factor, old.is_rvar, tail); outer 1028 src/Func.cpp Stage &Stage::fuse(VarOrRVar inner, VarOrRVar outer, VarOrRVar fused) { outer 1030 src/Func.cpp user_assert(outer.is_rvar) << "Can't fuse RVar " << inner.name() outer 1031 src/Func.cpp << " with Var " << outer.name() << "\n"; outer 1035 src/Func.cpp user_assert(!outer.is_rvar) << "Can't fuse Var " << inner.name() outer 1036 src/Func.cpp << " with RVar " << outer.name() << "\n"; outer 1041 src/Func.cpp debug(4) << "In schedule for " << stage_name << ", fuse " << outer.name() outer 1051 src/Func.cpp if (var_name_match(dims[i].var, outer.name())) { outer 1061 src/Func.cpp << outer.name() outer 1236 src/Func.cpp splits[i-1].outer == old_name) { outer 1246 src/Func.cpp removed_vars.insert(splits[i-1].outer); outer 1251 src/Func.cpp << splits[i-1].outer << " and " << splits[i-1].inner << "\n"; outer 1255 src/Func.cpp } else if (should_remove(splits[i-1].outer)) { outer 1268 src/Func.cpp << " into " << splits[i-1].outer << "\n"; outer 1269 src/Func.cpp if (should_remove(splits[i-1].outer)) { outer 1335 src/Func.cpp splits[i-1].outer == old_name) { outer 1354 src/Func.cpp if (splits[i-1].outer == old_name) { outer 1355 src/Func.cpp splits[i-1].outer = new_name; outer 1855 src/Func.cpp Func &Func::split(VarOrRVar old, VarOrRVar outer, VarOrRVar inner, Expr factor, TailStrategy tail) { outer 1857 src/Func.cpp Stage(func.definition(), name(), args(), func.schedule().storage_dims()).split(old, outer, inner, factor, tail); outer 1861 src/Func.cpp Func &Func::fuse(VarOrRVar inner, VarOrRVar outer, VarOrRVar fused) { outer 1863 src/Func.cpp Stage(func.definition(), name(), args(), func.schedule().storage_dims()).fuse(inner, outer, fused); outer 60 src/Func.h void split(const std::string &old, const std::string &outer, const std::string &inner, outer 175 src/Func.h EXPORT Stage &split(VarOrRVar old, VarOrRVar outer, VarOrRVar inner, Expr factor, TailStrategy tail = TailStrategy::Auto); outer 176 src/Func.h EXPORT Stage &fuse(VarOrRVar inner, VarOrRVar outer, VarOrRVar fused); outer 1109 src/Func.h EXPORT Func &split(VarOrRVar old, VarOrRVar outer, VarOrRVar inner, Expr factor, TailStrategy tail = TailStrategy::Auto); outer 1114 src/Func.h EXPORT Func &fuse(VarOrRVar inner, VarOrRVar outer, VarOrRVar fused); outer 59 src/Inline.cpp << f.name() << " to " << s.splits()[i].outer outer 63 src/Inline.cpp << s.splits()[i].inner << " and " << s.splits()[i].outer outer 69 src/Inline.cpp << s.splits()[i].outer << " * " outer 479 src/PartitionLoops.cpp Interval outer = solve_for_outer_interval(s.condition, op->name); outer 480 src/PartitionLoops.cpp s.tight &= equal(outer.min, s.interval.min) && equal(outer.max, s.interval.max); outer 169 src/Schedule.h std::string old_var, outer, inner; outer 740 src/Solve.cpp bool outer; outer 754 src/Solve.cpp if (outer) { outer 777 src/Solve.cpp if (outer) { outer 1371 src/Solve.cpp void check_interval(Expr a, Interval i, bool outer) { outer 1373 src/Solve.cpp outer ?