1 #ifndef HALIDE_PREFETCH_H 2 #define HALIDE_PREFETCH_H 20 struct PrefetchDirective;
27 const std::string &prefix,
28 const std::vector<PrefetchDirective> &prefetches);
32 Stmt
inject_prefetch(
const Stmt &s,
const std::map<std::string, Function> &env);
Stmt reduce_prefetch_dimension(Stmt stmt, const Target &t)
Reduce a multi-dimensional prefetch into a prefetch of lower dimension (max dimension of the prefetch...
This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it.
Stmt inject_prefetch(const Stmt &s, const std::map< std::string, Function > &env)
Compute the actual region to be prefetched and place it to the placholder prefetch.
Not visible externally, similar to 'static' linkage in C.
Stmt hoist_prefetches(const Stmt &s)
Hoist all the prefetches in a Block to the beginning of the Block.
Stmt inject_placeholder_prefetch(const Stmt &s, const std::map< std::string, Function > &env, const std::string &prefix, const std::vector< PrefetchDirective > &prefetches)
Inject placeholder prefetches to 's'.