Halide 22.0.0 Halide compiler and libraries

Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
Halide::Internal::Load Struct Reference

Load a value from a named symbol if predicate is true. More...

`#include <IR.h>`

Inheritance diagram for Halide::Internal::Load:

## Static Public Member Functions
static Expr | make (Type type, const std::string &name, Expr index, Buffer<> image, Parameter param, Expr predicate, ModulusRemainder alignment)

## Public Attributes
std::string | name
Expr | predicate
Expr | index
Buffer | image
Parameter | param
ModulusRemainder | alignment
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::Load

## Additional Inherited Members
Public Member Functions inherited from Halide::Internal::ExprNode< Load >
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)
virtual Expr | mutate_expr (IRMutator *v) const =0
Public Member Functions inherited from Halide::Internal::IRNode
virtual void | accept (IRVisitor *v) const =0
| We use the visitor pattern to traverse IR nodes throughout the compiler, so we have a virtual accept method which accepts visitors. More...
| IRNode (IRNodeType t)
virtual | ~IRNode ()=default

## Detailed Description

Load a value from a named symbol if predicate is true.

The buffer is treated as an array of the 'type' of this Load node. That is, the buffer has no inherent type. The name may be the name of an enclosing allocation, an input or output buffer, or any other symbol of type Handle().

Definition at line 217 of file IR.h.

## Member Function Documentation

## ◆ make()

static Expr Halide::Internal::Load::make | ( | Type | type,
|  | const std::string & | name,
|  | Expr | index,
|  | Buffer<> | image,
|  | Parameter | param,
|  | Expr | predicate,
|  | ModulusRemainder | alignment
| ) |  |
| static

## Member Data Documentation

## ◆ name

std::string Halide::Internal::Load::name

Definition at line 218 of file IR.h.

## ◆ predicate

Expr Halide::Internal::Load::predicate

Definition at line 220 of file IR.h.

## ◆ index

Expr Halide::Internal::Load::index

Definition at line 220 of file IR.h.

## ◆ image

Buffer Halide::Internal::Load::image

Definition at line 224 of file IR.h.

## ◆ param

Parameter Halide::Internal::Load::param

Definition at line 227 of file IR.h.

## ◆ alignment

ModulusRemainder Halide::Internal::Load::alignment

Definition at line 231 of file IR.h.

## ◆ _node_type

const IRNodeType Halide::Internal::Load::_node_type = IRNodeType::Load
| static

Definition at line 239 of file IR.h.

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

- src/IR.h