|
Halide 21.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.
References base, lanes, and stride.
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 make(), and Halide::Internal::IRMatcher::RampOp< A, B, C >::match().
| Expr Halide::Internal::Ramp::stride |
Definition at line 248 of file IR.h.
Referenced by make(), and Halide::Internal::IRMatcher::RampOp< A, B, C >::match().
| int Halide::Internal::Ramp::lanes |
Definition at line 249 of file IR.h.
Referenced by make(), and 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().