Halide 19.0.0
Halide compiler and libraries
|
Base classes for Halide expressions (Halide::Expr) and statements (Halide::Internal::Stmt) More...
Go to the source code of this file.
Classes | |
struct | Halide::Internal::IRNode |
The abstract base classes for a node in the Halide IR. More... | |
struct | Halide::Internal::BaseStmtNode |
IR nodes are split into expressions and statements. More... | |
struct | Halide::Internal::BaseExprNode |
A base class for expression nodes. More... | |
struct | Halide::Internal::ExprNode< T > |
We use the "curiously recurring template pattern" to avoid duplicated code in the IR Nodes. More... | |
struct | Halide::Internal::StmtNode< T > |
struct | Halide::Internal::IRHandle |
IR nodes are passed around opaque handles to them. More... | |
struct | Halide::Internal::IntImm |
Integer constants. More... | |
struct | Halide::Internal::UIntImm |
Unsigned integer constants. More... | |
struct | Halide::Internal::FloatImm |
Floating point constants. More... | |
struct | Halide::Internal::StringImm |
String constants. More... | |
struct | Halide::Expr |
A fragment of Halide syntax. More... | |
struct | Halide::ExprCompare |
This lets you use an Expr as a key in a map of the form map<Expr, Foo, ExprCompare> More... | |
struct | Halide::Range |
A single-dimensional span. More... | |
struct | Halide::Internal::Stmt |
A reference-counted handle to a statement node. More... | |
struct | Halide::Internal::Stmt::Compare |
This lets you use a Stmt as a key in a map of the form map<Stmt, Foo, Stmt::Compare> More... | |
Namespaces | |
namespace | Halide |
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. | |
namespace | Halide::Internal |
Typedefs | |
typedef std::vector< Range > | Halide::Region |
A multi-dimensional box. | |
Functions | |
template<> | |
RefCount & | Halide::Internal::ref_count< IRNode > (const IRNode *t) noexcept |
template<> | |
void | Halide::Internal::destroy< IRNode > (const IRNode *t) |
bool | Halide::Internal::is_unordered_parallel (ForType for_type) |
Check if for_type executes for loop iterations in parallel and unordered. | |
bool | Halide::Internal::is_parallel (ForType for_type) |
Returns true if for_type executes for loop iterations in parallel. | |
bool | Halide::Internal::is_gpu (ForType for_type) |
Returns true if for_type is GPUBlock, GPUThread, or GPULane. | |
Variables | |
constexpr IRNodeType | Halide::Internal::StrongestExprNodeType = IRNodeType::VectorReduce |
Base classes for Halide expressions (Halide::Expr) and statements (Halide::Internal::Stmt)
Definition in file Expr.h.