Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::Internal::Realize Struct Reference

Allocate a multi-dimensional buffer of the given type and size. More...

#include <IR.h>

Inheritance diagram for Halide::Internal::Realize:
Halide::Internal::StmtNode< Realize > Halide::Internal::BaseStmtNode Halide::Internal::IRNode

Static Public Member Functions

static Stmt make (const std::string &name, const std::vector< Type > &types, MemoryType memory_type, const Region &bounds, Expr condition, Stmt body)
 

Public Attributes

std::string name
 
std::vector< Typetypes
 
MemoryType memory_type
 
Region bounds
 
Expr condition
 
Stmt body
 
- 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::Realize
 

Additional Inherited Members

- Public Member Functions inherited from Halide::Internal::StmtNode< Realize >
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.
 
Stmt mutate_stmt (IRMutator *v) const override
 
 StmtNode ()
 
 ~StmtNode () override=default
 
- Public Member Functions inherited from Halide::Internal::BaseStmtNode
 BaseStmtNode (IRNodeType t)
 
- Public Member Functions inherited from Halide::Internal::IRNode
 IRNode (IRNodeType t)
 
virtual ~IRNode ()=default
 

Detailed Description

Allocate a multi-dimensional buffer of the given type and size.

Create some scratch memory that will back the function 'name' over the range specified in 'bounds'. The bounds are a vector of (min, extent) pairs for each dimension. Allocation only occurs if the condition evaluates to true.

Definition at line 427 of file IR.h.

Member Function Documentation

◆ make()

static Stmt Halide::Internal::Realize::make ( const std::string & name,
const std::vector< Type > & types,
MemoryType memory_type,
const Region & bounds,
Expr condition,
Stmt body )
static

Member Data Documentation

◆ name

std::string Halide::Internal::Realize::name

Definition at line 428 of file IR.h.

◆ types

std::vector<Type> Halide::Internal::Realize::types

Definition at line 429 of file IR.h.

◆ memory_type

MemoryType Halide::Internal::Realize::memory_type

Definition at line 430 of file IR.h.

◆ bounds

Region Halide::Internal::Realize::bounds

Definition at line 431 of file IR.h.

◆ condition

Expr Halide::Internal::Realize::condition

Definition at line 432 of file IR.h.

◆ body

Stmt Halide::Internal::Realize::body

Definition at line 433 of file IR.h.

◆ _node_type

const IRNodeType Halide::Internal::Realize::_node_type = IRNodeType::Realize
static

Definition at line 437 of file IR.h.


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