Halide 19.0.0
Halide compiler and libraries
|
A linear ramp vector node. More...
#include <IR.h>
Static Public Member Functions | |
static Expr | make (Expr base, Expr stride, int lanes) |
Public Attributes | |
Expr | base |
Expr | stride |
int | lanes |
Public Attributes inherited from Halide::Internal::BaseExprNode | |
Type | type |
Public Attributes inherited from Halide::Internal::IRNode | |
RefCount | ref_count |
These classes are all managed with intrusive reference counting, so we also track a reference count. | |
IRNodeType | node_type |
Each IR node subclass has a unique identifier. | |
Static Public Attributes | |
static const IRNodeType | _node_type = IRNodeType::Ramp |
Additional Inherited Members | |
Public Member Functions inherited from Halide::Internal::ExprNode< Ramp > | |
void | accept (IRVisitor *v) const override |
We use the visitor pattern to traverse IR nodes throughout the compiler, so we have a virtual accept method which accepts visitors. | |
Expr | mutate_expr (IRMutator *v) const override |
ExprNode () | |
~ExprNode () override=default | |
Public Member Functions inherited from Halide::Internal::BaseExprNode | |
BaseExprNode (IRNodeType t) | |
Public Member Functions inherited from Halide::Internal::IRNode | |
IRNode (IRNodeType t) | |
virtual | ~IRNode ()=default |
A linear ramp vector node.
This is vector with 'lanes' elements, where element i is 'base' + i*'stride'. This is a convenient way to pass around vectors without busting them up into individual elements. E.g. a dense vector load from a buffer can use a ramp node with stride 1 as the index.
Referenced by Halide::Internal::IRMatcher::RampOp< A, B, C >::make().
Expr Halide::Internal::Ramp::base |
Definition at line 248 of file IR.h.
Referenced by Halide::Internal::IRMatcher::RampOp< A, B, C >::match().
Expr Halide::Internal::Ramp::stride |
Definition at line 248 of file IR.h.
Referenced by Halide::Internal::IRMatcher::RampOp< A, B, C >::match().
int Halide::Internal::Ramp::lanes |
Definition at line 249 of file IR.h.
Referenced by Halide::Internal::IRMatcher::RampOp< A, B, C >::match().
|
static |
Definition at line 253 of file IR.h.
Referenced by Halide::Internal::IRMatcher::RampOp< A, B, C >::match().