Halide::Internal::Ramp Struct Reference

A linear ramp vector node. More...

#include <IR.h>

Inherits Halide::Internal::ExprNode< Ramp >.

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. More...
IRNodeType node_type
 Each IR node subclass has a unique identifier. More...

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. More...
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

Detailed Description

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.

Definition at line 229 of file IR.h.

Member Function Documentation

◆ make()

static Expr Halide::Internal::Ramp::make ( Expr  base,
Expr  stride,
int  lanes 

Member Data Documentation

◆ base

Expr Halide::Internal::Ramp::base

◆ stride

Expr Halide::Internal::Ramp::stride

◆ lanes

int Halide::Internal::Ramp::lanes

Definition at line 231 of file IR.h.

◆ _node_type

const IRNodeType Halide::Internal::Ramp::_node_type = IRNodeType::Ramp

The documentation for this struct was generated from the following file: