Halide
SkipStages.h
Go to the documentation of this file.
1
#ifndef HALIDE_SKIP_STAGES
2
#define HALIDE_SKIP_STAGES
3
4
#include <string>
5
#include <vector>
6
7
#include "
Expr.h
"
8
9
/** \file
10
* Defines a pass that dynamically avoids realizing unnecessary stages.
11
*/
12
13
namespace
Halide
{
14
namespace
Internal
{
15
16
/** Avoid computing certain stages if we can infer a runtime condition
17
* to check that tells us they won't be used. Does this by analyzing
18
* all reads of each buffer allocated, and inferring some condition
19
* that tells us if the reads occur. If the condition is non-trivial,
20
* inject ifs that guard the production. */
21
Stmt
skip_stages
(Stmt s,
const
std::vector<std::string> &order);
22
23
}
// namespace Internal
24
}
// namespace Halide
25
26
#endif
Halide
This file defines the class FunctionDAG, which is our representation of a Halide pipeline,...
Definition:
AbstractGenerator.h:19
Halide::LinkageType::Internal
@ Internal
Not visible externally, similar to 'static' linkage in C.
Halide::Internal::skip_stages
Stmt skip_stages(Stmt s, const std::vector< std::string > &order)
Avoid computing certain stages if we can infer a runtime condition to check that tells us they won't ...
Expr.h
src
SkipStages.h
Generated by
1.8.17