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

A variable node in the IR. More...

#include <var.h>

Inheritance diagram for tvm::tir::VarNode:
Collaboration diagram for tvm::tir::VarNode:

Public Member Functions

 TVM_DECLARE_BASE_OBJECT_INFO (VarNode, PrimExprNode)
 
- Public Member Functions inherited from tvm::PrimExprNode
 TVM_OBJECT_ENABLE_SCRIPT_PRINTER ()
 
 TVM_DECLARE_BASE_OBJECT_INFO (PrimExprNode, BaseExprNode)
 
- Public Member Functions inherited from tvm::BaseExprNode
 TVM_DECLARE_BASE_OBJECT_INFO (BaseExprNode, Object)
 

Static Public Member Functions

static void RegisterReflection ()
 
- Static Public Member Functions inherited from tvm::PrimExprNode
static void RegisterReflection ()
 
- Static Public Member Functions inherited from tvm::BaseExprNode
static void RegisterReflection ()
 

Public Attributes

String name_hint
 The hint to the variable name. More...
 
Type type_annotation
 type annotation of the variable. More...
 
- Public Attributes inherited from tvm::PrimExprNode
DataType dtype
 The runtime data type of the primitive expression. More...
 
- Public Attributes inherited from tvm::BaseExprNode
Span span
 Span that points to the original source code. Reserved debug information. More...
 

Static Public Attributes

static constexpr TVMFFISEqHashKind _type_s_eq_hash_kind = kTVMFFISEqHashKindFreeVar
 
static constexpr const char * _type_key = "tir.Var"
 
static constexpr const uint32_t _type_child_slots = 1
 
- Static Public Attributes inherited from tvm::PrimExprNode
static constexpr const char * _type_key = "ir.PrimExpr"
 
static constexpr const uint32_t _type_child_slots = 40
 
- Static Public Attributes inherited from tvm::BaseExprNode
static constexpr const char * _type_key = "ir.BaseExpr"
 
static constexpr TVMFFISEqHashKind _type_s_eq_hash_kind = kTVMFFISEqHashKindTreeNode
 
static constexpr const uint32_t _type_child_slots = 64
 

Detailed Description

A variable node in the IR.

A variable is uniquely identified by its address.

Each variable is only bound once in the following nodes:

Member Function Documentation

◆ RegisterReflection()

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

◆ TVM_DECLARE_BASE_OBJECT_INFO()

tvm::tir::VarNode::TVM_DECLARE_BASE_OBJECT_INFO ( VarNode  ,
PrimExprNode   
)

Member Data Documentation

◆ _type_child_slots

constexpr const uint32_t tvm::tir::VarNode::_type_child_slots = 1
staticconstexpr

◆ _type_key

constexpr const char* tvm::tir::VarNode::_type_key = "tir.Var"
staticconstexpr

◆ _type_s_eq_hash_kind

constexpr TVMFFISEqHashKind tvm::tir::VarNode::_type_s_eq_hash_kind = kTVMFFISEqHashKindFreeVar
staticconstexpr

◆ name_hint

String tvm::tir::VarNode::name_hint

The hint to the variable name.

Note
Each variable is uniquely identified by its address.

◆ type_annotation

Type tvm::tir::VarNode::type_annotation

type annotation of the variable.

It is an optional field that provides a refined type of the variable than dtype.

See also
tvm/ir/type.h for discussion of relations between runtime::DataType and Type.

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