tvm
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
tvm::tir::AllocateConstNode Class Reference

Allocate a buffer that can be used in body. More...

#include <stmt.h>

Inheritance diagram for tvm::tir::AllocateConstNode:
Collaboration diagram for tvm::tir::AllocateConstNode:

Public Member Functions

int64_t ConstantAllocationSize () const
 If the buffer size is constant, return the size. Otherwise return 0. More...
 
 TVM_DECLARE_FINAL_OBJECT_INFO (AllocateConstNode, StmtNode)
 
- Public Member Functions inherited from tvm::tir::StmtNode
 StmtNode ()=default
 
 StmtNode (Span span)
 
 TVM_OBJECT_ENABLE_SCRIPT_PRINTER ()
 
 TVM_DECLARE_BASE_OBJECT_INFO (StmtNode, Object)
 

Static Public Member Functions

static void RegisterReflection ()
 
static int64_t ConstantAllocationSize (const Array< PrimExpr > &extents)
 If the buffer size is constant, return the size. Otherwise return 0. More...
 
- Static Public Member Functions inherited from tvm::tir::StmtNode
static void RegisterReflection ()
 

Public Attributes

Var buffer_var
 The buffer variable. More...
 
Optional< runtime::NDArraydata
 The optional data associated to the constant. More...
 
Optional< Integerirmod_storage_idx
 If the PrimFunc containing the Stmt is added to IRModule, this is an optional index to indicate the index within "constants" attribute, that is a Array<NDArray> of IRModule. More...
 
DataType dtype
 The type of the buffer. More...
 
Array< PrimExprextents
 The extents of the buffer. More...
 
Stmt body
 The body to be executed. More...
 
Map< String, ffi::Any > annotations
 Additional annotations about the allocation. More...
 
- Public Attributes inherited from tvm::tir::StmtNode
Span span
 Span that points to the original source code. Reserved debug information. More...
 

Static Public Attributes

static constexpr const char * _type_key = "tir.AllocateConst"
 
- Static Public Attributes inherited from tvm::tir::StmtNode
static constexpr const char * _type_key = "tir.Stmt"
 
static constexpr TVMFFISEqHashKind _type_s_eq_hash_kind = kTVMFFISEqHashKindTreeNode
 
static constexpr const uint32_t _type_child_slots = 15
 

Detailed Description

Allocate a buffer that can be used in body.

Member Function Documentation

◆ ConstantAllocationSize() [1/2]

int64_t tvm::tir::AllocateConstNode::ConstantAllocationSize ( ) const
inline

If the buffer size is constant, return the size. Otherwise return 0.

Returns
The result.

◆ ConstantAllocationSize() [2/2]

static int64_t tvm::tir::AllocateConstNode::ConstantAllocationSize ( const Array< PrimExpr > &  extents)
static

If the buffer size is constant, return the size. Otherwise return 0.

Parameters
extentsThe extents of the buffer.
Returns
The result.

◆ RegisterReflection()

static void tvm::tir::AllocateConstNode::RegisterReflection ( )
inlinestatic

◆ TVM_DECLARE_FINAL_OBJECT_INFO()

tvm::tir::AllocateConstNode::TVM_DECLARE_FINAL_OBJECT_INFO ( AllocateConstNode  ,
StmtNode   
)

Member Data Documentation

◆ _type_key

constexpr const char* tvm::tir::AllocateConstNode::_type_key = "tir.AllocateConst"
staticconstexpr

◆ annotations

Map<String, ffi::Any> tvm::tir::AllocateConstNode::annotations

Additional annotations about the allocation.

These annotations can be used as auxiliary hint to future transformations.

◆ body

Stmt tvm::tir::AllocateConstNode::body

The body to be executed.

◆ buffer_var

Var tvm::tir::AllocateConstNode::buffer_var

The buffer variable.

◆ data

Optional<runtime::NDArray> tvm::tir::AllocateConstNode::data

The optional data associated to the constant.

◆ dtype

DataType tvm::tir::AllocateConstNode::dtype

The type of the buffer.

◆ extents

Array<PrimExpr> tvm::tir::AllocateConstNode::extents

The extents of the buffer.

◆ irmod_storage_idx

Optional<Integer> tvm::tir::AllocateConstNode::irmod_storage_idx

If the PrimFunc containing the Stmt is added to IRModule, this is an optional index to indicate the index within "constants" attribute, that is a Array<NDArray> of IRModule.


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