|
tvm
|
Namespaces | |
| namespace | axis |
Classes | |
| class | AllocBufferFrame |
| class | AllocBufferFrameNode |
| class | AssertFrame |
| Managed reference to AssertFrameNode. More... | |
| class | AssertFrameNode |
| A frame that represents the assert statement. Proceeds if the condition is true, otherwise aborts with the message. More... | |
| class | AttrFrame |
| Managed reference to AttrFrameNode. More... | |
| class | AttrFrameNode |
| A frame that represents attribute node. More... | |
| class | BlockInitFrame |
| Managed reference to BlockInitFrameNode. More... | |
| class | BlockInitFrameNode |
| A frame that represents the block initialization statment. More... | |
| class | ComposeOpFrame |
| class | ComposeOpFrameNode |
| class | DeclBufferFrame |
| class | DeclBufferFrameNode |
| class | ElseFrame |
| Managed reference to ElseFrameNode. More... | |
| class | ElseFrameNode |
| A frame that represents else. More... | |
| class | ForFrame |
| Managed reference to ForFrameNode. More... | |
| class | ForFrameNode |
| A frame that represents the for loop. More... | |
| class | HintFrame |
| Managed reference to HintFrameNode. More... | |
| class | HintFrameNode |
| A frame that represents a hint directive for the sketch language. More... | |
| class | IfFrame |
| Managed reference to IfFrameNode. More... | |
| class | IfFrameNode |
| A frame that represents if statement. More... | |
| class | LaunchThreadFrame |
| Managed reference to LaunchThreadFrameNode. More... | |
| class | LaunchThreadFrameNode |
| The LaunchThreadFrameNode. More... | |
| class | PrimFuncFrame |
| Managed reference to PrimFuncFrameNode. More... | |
| class | PrimFuncFrameNode |
| A frame that represents the PrimFunc containing TIR statements. More... | |
| class | SBlockFrame |
| Managed reference to SBlockFrameNode. More... | |
| class | SBlockFrameNode |
| A frame that represents the block. More... | |
| class | ThenFrame |
| Managed reference to ThenFrameNode. More... | |
| class | ThenFrameNode |
| A frame that represents then. More... | |
| class | TIRFrame |
| Managed reference to TIRFrameNode. More... | |
| class | TIRFrameNode |
| A base frame that represents the TIR fame with body of statements. More... | |
| class | WhileFrame |
| Managed reference to WhileFrameNode. More... | |
| class | WhileFrameNode |
| A frame that represents while loop. More... | |
Functions | |
| BufferVar | BufferDecl (ffi::Array< PrimExpr > shape, PrimType dtype, ffi::String buffer_name, ffi::Optional< Expr > data, ffi::Optional< ffi::Array< PrimExpr > > strides, ffi::Optional< PrimExpr > elem_offset, ffi::String storage_scope, int align, int offset_factor, ffi::Optional< Layout > layout=std::nullopt, ffi::Array< PrimExpr > allocated_addr={}) |
| The buffer declaration function. | |
| PrimFuncFrame | PrimFunc (bool is_private, bool s_tir=false, bool persistent=false) |
| The primitive function statement. | |
| Var | Arg (ffi::String name, Var var) |
| The PrimFunc variable arguments adding function. | |
| BufferVar | Arg (ffi::String name, BufferVar buffer) |
| The PrimFunc buffer arguments adding function. | |
| void | FuncName (ffi::String name) |
| The PrimFunc naming statement. | |
| void | FuncAttrs (ffi::Map< ffi::String, ffi::Any > attrs) |
| The PrimFunc annotation statement. | |
| Type | FuncRet (Type ret_type) |
| The PrimFunc return type statement. | |
| BufferVar | MatchBuffer (ffi::ObjectRef param, ffi::Array< PrimExpr > shape, PrimType dtype=PrimType::Float(32), ffi::Optional< Expr > data=std::nullopt, ffi::Array< PrimExpr > strides={}, PrimExpr elem_offset=PrimExpr(), ffi::String storage_scope="global", int align=-1, int offset_factor=0, ffi::Optional< Layout > layout=std::nullopt) |
| The buffer match statement. | |
| SBlockFrame | Block (ffi::String name, bool no_realize=false, ffi::String exec_scope="") |
| The block declaration statement. | |
| void | TilePrimitiveCall (tvm::tirx::TilePrimitiveCall op_call) |
| ffi::Array< tvm::tirx::Var > | ScopeId (ffi::Optional< ffi::Array< PrimExpr > > extents, ffi::String parent, ffi::String name, ffi::String cur, PrimType dtype=PrimType::Int(32)) |
Define a scope id. Pass extents=std::nullopt to defer the extent; it is inferred at LowerTIRx from the sibling ScopeIdDef closure. | |
| ffi::Array< tvm::tirx::Var > | ClusterId (ffi::Optional< ffi::Array< PrimExpr > > extents, ffi::String parent, PrimType dtype=PrimType::Int(32)) |
| ffi::Array< tvm::tirx::Var > | CtaId (ffi::Optional< ffi::Array< PrimExpr > > extents, ffi::String parent, ffi::Optional< ffi::Array< PrimExpr > > preferred=std::nullopt, PrimType dtype=PrimType::Int(32)) |
| ffi::Array< tvm::tirx::Var > | CtaIdInPair (PrimType dtype=PrimType::Int(32)) |
| ffi::Array< tvm::tirx::Var > | WarpgroupId (ffi::Optional< ffi::Array< PrimExpr > > extents, ffi::String parent, PrimType dtype=PrimType::Int(32)) |
| ffi::Array< tvm::tirx::Var > | WarpId (ffi::Optional< ffi::Array< PrimExpr > > extents, ffi::String parent, PrimType dtype=PrimType::Int(32)) |
| ffi::Array< tvm::tirx::Var > | ThreadId (ffi::Optional< ffi::Array< PrimExpr > > extents, ffi::String parent, PrimType dtype=PrimType::Int(32)) |
| BlockInitFrame | Init () |
| The block initialization statement. | |
| void | Where (PrimExpr predicate) |
| The block predicate statement. | |
| void | Reads (ffi::Array< ffi::ObjectRef > buffer_slices) |
| The block buffer region reading statement. | |
| void | Writes (ffi::Array< ffi::ObjectRef > buffer_slices) |
| The block buffer region writing statement. | |
| void | BlockAttrs (ffi::Map< ffi::String, ffi::Any > attrs) |
| The block annotation statement. | |
| ffi::Variant< BufferVar, AllocBufferFrame > | SBlockAllocBuffer (ffi::Array< PrimExpr > shape, PrimType dtype=PrimType::Float(32), ffi::Optional< Expr > data=std::nullopt, ffi::Array< PrimExpr > strides={}, PrimExpr elem_offset=PrimExpr(), ffi::String storage_scope="", int align=-1, int offset_factor=0, ffi::Optional< Layout > layout=std::nullopt, ffi::Array< PrimExpr > allocated_addr={}) |
| The buffer allocation function. | |
| ForFrame | Serial (PrimExpr start, PrimExpr stop, ffi::Optional< ffi::Map< ffi::String, Any > > annotations=std::nullopt, ffi::Optional< PrimExpr > step=std::nullopt, ffi::Optional< PrimType > dtype=std::nullopt) |
| The serial For statement. | |
| ForFrame | Parallel (PrimExpr start, PrimExpr stop, ffi::Optional< ffi::Map< ffi::String, Any > > annotations=std::nullopt, ffi::Optional< PrimExpr > step=std::nullopt, ffi::Optional< PrimType > dtype=std::nullopt) |
| The parallel For statement. | |
| ForFrame | Vectorized (PrimExpr start, PrimExpr stop, ffi::Optional< ffi::Map< ffi::String, Any > > annotations=std::nullopt, ffi::Optional< PrimExpr > step=std::nullopt, ffi::Optional< PrimType > dtype=std::nullopt) |
| The vectorized For statement. | |
| ForFrame | Unroll (PrimExpr start, PrimExpr stop, ffi::Optional< ffi::Map< ffi::String, Any > > annotations=std::nullopt, ffi::Optional< PrimExpr > step=std::nullopt, ffi::Optional< PrimType > dtype=std::nullopt) |
| The unrolled For statement. | |
| ForFrame | ThreadBinding (PrimExpr start, PrimExpr stop, ffi::String thread, ffi::Optional< ffi::Map< ffi::String, Any > > annotations=std::nullopt) |
| The thread-binding For statement. | |
| ForFrame | Grid (ffi::Array< Variant< PrimExpr, ffi::Tuple< PrimExpr, PrimExpr > > > extents, ffi::Optional< PrimType > dtype=std::nullopt) |
| The grid For statement. | |
| AssertFrame | Assert (PrimExpr condition, ffi::String error_kind, ffi::Array< ffi::String > message_parts) |
| The assertion statement. | |
| Var | Bind (Expr value, ffi::Optional< Type > type_annotation=std::nullopt, ffi::Optional< Var > var=std::nullopt) |
| Create a Bind (variable binding). | |
| AttrFrame | Attr (ffi::Any node, ffi::String attr_key, PrimExpr value) |
| Create an attribute. | |
| AttrFrame | DeviceEntry () |
Mark the device-region entry within the enclosing PrimFunc body. Returns an AttrFrame keyed tirx.device_entry (value Bool(true)). Subsequent stmts accumulate into the frame's body; the frame is closed by PrimFuncFrameNode::ExitWithScope which drains leftover frames. | |
| WhileFrame | While (PrimExpr condition) |
| Create a while loop. | |
| void | Return (Expr value) |
| Create a return statement. | |
| void | Break () |
| Create a break statement. | |
| void | Continue () |
| Create a continue statement. | |
| IfFrame | If (PrimExpr condition) |
| Create an if statement. | |
| ThenFrame | Then () |
| Create a then. | |
| ElseFrame | Else () |
| Create an else. | |
| DeclBufferFrame | DeclBuffer (ffi::Array< PrimExpr > shape, PrimType dtype, ffi::String buffer_name, ffi::Optional< Expr > data, ffi::Optional< ffi::Array< PrimExpr > > strides, ffi::Optional< PrimExpr > elem_offset, ffi::String storage_scope, int align, int offset_factor, ffi::Optional< Layout > layout=std::nullopt, ffi::Optional< PrimExpr > allocated_addr=std::nullopt) |
| The buffer declaration frame. | |
| BufferVar | AllocBuffer (ffi::Array< PrimExpr > shape, PrimType dtype=PrimType::Float(32), ffi::String storage_scope="global", ffi::Optional< ffi::Map< ffi::String, ffi::Any > > annotations=std::nullopt) |
| Statement-level buffer allocation (creates an AllocBuffer IR node). | |
| LaunchThreadFrame | LaunchThread (Var var, PrimExpr extent) |
| Launch a thread. | |
| LaunchThreadFrame | LaunchThread (ffi::String thread_tag, PrimExpr extent) |
| Launch a new thread. | |
| ComposeOpFrame | ComposeOp (ffi::Map< ffi::String, BufferVar > workspace, ffi::Map< ffi::String, ffi::Any > config, ffi::Optional< ffi::String > dispatch=std::nullopt) |
| Compose TIRx op. | |
| Var | EnvThread (ffi::String thread_tag, PrimType dtype=PrimType::Int(32)) |
| Bind a var to thread env. | |
| void | BufferStore (BufferVar buffer, PrimExpr value, ffi::Array< PrimExpr > indices) |
| Store data in a buffer. | |
| void | Evaluate (Expr value) |
| Evaluate the input expression. | |
| Var | Handle (ffi::Optional< PrimType > dtype=std::nullopt, ffi::String storage_scope="global") |
| Create a TIR var that represents a pointer. | |
| Var | TensorMap () |
| PrimExpr | BFloat8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat8x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat8x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat8x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat8x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat8x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat8x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat16x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat16x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat16x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat16x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat16x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat16x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat32x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat32x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat32x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat32x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat32x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat32x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat64x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat64x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat64x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat64x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat64x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | BFloat64x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float16x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float16x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float16x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float16x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float16x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float16x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float32x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float32x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float32x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float32x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float32x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float32x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float64x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float64x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float64x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float64x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float64x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float64x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt8x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt8x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt8x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt8x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt8x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt8x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt16x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt16x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt16x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt16x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt16x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt16x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt32x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt32x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt32x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt32x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt32x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt32x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt64x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt64x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt64x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt64x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt64x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | UInt64x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int8x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int8x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int8x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int8x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int8x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int8x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int16x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int16x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int16x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int16x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int16x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int16x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int32x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int32x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int32x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int32x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int32x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int32x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int64x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int64x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int64x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int64x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int64x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Int64x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E3M4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E3M4x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E3M4x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E3M4x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E3M4x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E3M4x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E3M4x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3B11FNUZ (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3B11FNUZx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3B11FNUZx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3B11FNUZx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3B11FNUZx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3B11FNUZx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3B11FNUZx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FN (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNUZ (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNUZx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNUZx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNUZx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNUZx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNUZx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E4M3FNUZx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2x2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2x4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2x8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2x16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2x32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2x64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2FNUZ (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2FNUZx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2FNUZx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2FNUZx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2FNUZx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2FNUZx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E5M2FNUZx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E8M0FNU (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E8M0FNUx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E8M0FNUx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E8M0FNUx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E8M0FNUx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E8M0FNUx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float8E8M0FNUx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E2M3FN (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E2M3FNx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E2M3FNx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E2M3FNx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E2M3FNx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E2M3FNx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E2M3FNx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E3M2FN (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E3M2FNx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E3M2FNx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E3M2FNx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E3M2FNx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E3M2FNx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float6E3M2FNx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float4E2M1FN (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float4E2M1FNx2 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float4E2M1FNx4 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float4E2M1FNx8 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float4E2M1FNx16 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float4E2M1FNx32 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Float4E2M1FNx64 (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Boolean (ffi::Optional< PrimExpr > expr=std::nullopt) |
| PrimExpr | Void (ffi::Optional< PrimExpr > expr=std::nullopt) |
| BufferVar tvm::script::ir_builder::tirx::AllocBuffer | ( | ffi::Array< PrimExpr > | shape, |
| PrimType | dtype = PrimType::Float(32), |
||
| ffi::String | storage_scope = "global", |
||
| ffi::Optional< ffi::Map< ffi::String, ffi::Any > > | annotations = std::nullopt |
||
| ) |
Statement-level buffer allocation (creates an AllocBuffer IR node).
| shape | The shape of the buffer to allocate. |
| dtype | The data type of buffer elements. |
| storage_scope | The storage scope (e.g., "global", "shared"). |
| annotations | Optional annotations for the allocation. |
The PrimFunc buffer arguments adding function.
| name | The name of the buffer. |
| buffer | The buffer argument. |
The PrimFunc variable arguments adding function.
| name | The name of the variable. |
| var | The variable argument. |
| AssertFrame tvm::script::ir_builder::tirx::Assert | ( | PrimExpr | condition, |
| ffi::String | error_kind, | ||
| ffi::Array< ffi::String > | message_parts | ||
| ) |
The assertion statement.
| condition | The assertion condition. |
| error_kind | The error kind (e.g. "RuntimeError", "TypeError", "ValueError"). |
| message_parts | The error message parts (stored as separate fragments in the IR). |
| AttrFrame tvm::script::ir_builder::tirx::Attr | ( | ffi::Any | node, |
| ffi::String | attr_key, | ||
| PrimExpr | value | ||
| ) |
Create an attribute.
| node | The node to annotate the attribute. |
| attr_key | Attribute type key. |
| value | The value of the attribute. |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| Var tvm::script::ir_builder::tirx::Bind | ( | Expr | value, |
| ffi::Optional< Type > | type_annotation = std::nullopt, |
||
| ffi::Optional< Var > | var = std::nullopt |
||
| ) |
Create a Bind (variable binding).
Emits a flat Bind statement to the current frame and returns the bound variable.
| value | The value to be bound. |
| type_annotation | The type annotation of the binding. Usually it is used for fine-grained var typing, particularly, PointerType. |
| var | The variable to be bound. If not specified, a new variable will be created. |
| SBlockFrame tvm::script::ir_builder::tirx::Block | ( | ffi::String | name, |
| bool | no_realize = false, |
||
| ffi::String | exec_scope = "" |
||
| ) |
The block declaration statement.
| name | The name of the block. |
| no_realize | The flag whether to construct SBlockRealize or SBlock. |
| void tvm::script::ir_builder::tirx::BlockAttrs | ( | ffi::Map< ffi::String, ffi::Any > | attrs | ) |
The block annotation statement.
| attrs | The annotation of the block. |
|
inline |
| void tvm::script::ir_builder::tirx::Break | ( | ) |
Create a break statement.
| BufferVar tvm::script::ir_builder::tirx::BufferDecl | ( | ffi::Array< PrimExpr > | shape, |
| PrimType | dtype, | ||
| ffi::String | buffer_name, | ||
| ffi::Optional< Expr > | data, | ||
| ffi::Optional< ffi::Array< PrimExpr > > | strides, | ||
| ffi::Optional< PrimExpr > | elem_offset, | ||
| ffi::String | storage_scope, | ||
| int | align, | ||
| int | offset_factor, | ||
| ffi::Optional< Layout > | layout = std::nullopt, |
||
| ffi::Array< PrimExpr > | allocated_addr = {} |
||
| ) |
The buffer declaration function.
| shape | The type of the buffer prior to flattening. |
| dtype | The data type in the content of the buffer. |
| buffer_name | The name of the buffer. |
| data | The pointer to the head of the data. |
| strides | The strides of each dimension. |
| elem_offset | The offset in terms of number of dtype elements (including lanes). |
| storage_scope | The optional storage scope of buffer data pointer. |
| align | The alignment requirement of data pointer in bytes. |
| offset_factor | The factor of elem_offset field. |
| void tvm::script::ir_builder::tirx::BufferStore | ( | BufferVar | buffer, |
| PrimExpr | value, | ||
| ffi::Array< PrimExpr > | indices | ||
| ) |
Store data in a buffer.
| buffer | The buffer. |
| value | The value to be stored. |
| indices | The indices location to be stored. |
| ffi::Array< tvm::tirx::Var > tvm::script::ir_builder::tirx::ClusterId | ( | ffi::Optional< ffi::Array< PrimExpr > > | extents, |
| ffi::String | parent, | ||
| PrimType | dtype = PrimType::Int(32) |
||
| ) |
| ComposeOpFrame tvm::script::ir_builder::tirx::ComposeOp | ( | ffi::Map< ffi::String, BufferVar > | workspace, |
| ffi::Map< ffi::String, ffi::Any > | config, | ||
| ffi::Optional< ffi::String > | dispatch = std::nullopt |
||
| ) |
Compose TIRx op.
| workspace | The workspace of the compose op. |
| config | The config of the compose op. |
| dispatch | The optional dispatch variant name. |
| void tvm::script::ir_builder::tirx::Continue | ( | ) |
Create a continue statement.
| ffi::Array< tvm::tirx::Var > tvm::script::ir_builder::tirx::CtaId | ( | ffi::Optional< ffi::Array< PrimExpr > > | extents, |
| ffi::String | parent, | ||
| ffi::Optional< ffi::Array< PrimExpr > > | preferred = std::nullopt, |
||
| PrimType | dtype = PrimType::Int(32) |
||
| ) |
| ffi::Array< tvm::tirx::Var > tvm::script::ir_builder::tirx::CtaIdInPair | ( | PrimType | dtype = PrimType::Int(32) | ) |
| DeclBufferFrame tvm::script::ir_builder::tirx::DeclBuffer | ( | ffi::Array< PrimExpr > | shape, |
| PrimType | dtype, | ||
| ffi::String | buffer_name, | ||
| ffi::Optional< Expr > | data, | ||
| ffi::Optional< ffi::Array< PrimExpr > > | strides, | ||
| ffi::Optional< PrimExpr > | elem_offset, | ||
| ffi::String | storage_scope, | ||
| int | align, | ||
| int | offset_factor, | ||
| ffi::Optional< Layout > | layout = std::nullopt, |
||
| ffi::Optional< PrimExpr > | allocated_addr = std::nullopt |
||
| ) |
The buffer declaration frame.
| shape | The type of the buffer prior to flattening. |
| dtype | The data type in the content of the buffer. |
| buffer_name | The name of the buffer. |
| data | The pointer to the head of the data. |
| strides | The strides of each dimension. |
| elem_offset | The offset in terms of number of dtype elements (including lanes). |
| storage_scope | The optional storage scope of buffer data pointer. |
| align | The alignment requirement of data pointer in bytes. |
| offset_factor | The factor of elem_offset field. |
| layout | The layout of the buffer. |
| AttrFrame tvm::script::ir_builder::tirx::DeviceEntry | ( | ) |
Mark the device-region entry within the enclosing PrimFunc body. Returns an AttrFrame keyed tirx.device_entry (value Bool(true)). Subsequent stmts accumulate into the frame's body; the frame is closed by PrimFuncFrameNode::ExitWithScope which drains leftover frames.
Python sugar: Tx.device_entry() is a flat-call (no with), which auto-enters the frame.
| Var tvm::script::ir_builder::tirx::EnvThread | ( | ffi::String | thread_tag, |
| PrimType | dtype = PrimType::Int(32) |
||
| ) |
Bind a var to thread env.
| thread_tag | The thread type tag. |
| dtype | The data type of the variable. |
Evaluate the input expression.
| value | The input expression to evaluate. |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| void tvm::script::ir_builder::tirx::FuncAttrs | ( | ffi::Map< ffi::String, ffi::Any > | attrs | ) |
The PrimFunc annotation statement.
| attrs | The annotations of the PrimFunc. |
| void tvm::script::ir_builder::tirx::FuncName | ( | ffi::String | name | ) |
The PrimFunc naming statement.
| name | The name of the PrimFunc. |
The PrimFunc return type statement.
| ret_type | The return type of the PrimFunc. |
| ForFrame tvm::script::ir_builder::tirx::Grid | ( | ffi::Array< Variant< PrimExpr, ffi::Tuple< PrimExpr, PrimExpr > > > | extents, |
| ffi::Optional< PrimType > | dtype = std::nullopt |
||
| ) |
The grid For statement.
| extents | The extents of the iteration. |
| dtype | The optional dtype of every loop var ("int32" or "uint32"). When omitted each loop var takes the dtype of its own extent. |
|
inline |
Create a TIR var that represents a pointer.
| dtype | The optional data type of the pointer. If omitted, construct an opaque handle. |
| storage_scope | The storage scope of the pointer. |
Create an if statement.
| condition | The condition of if statement. |
| BlockInitFrame tvm::script::ir_builder::tirx::Init | ( | ) |
The block initialization statement.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| LaunchThreadFrame tvm::script::ir_builder::tirx::LaunchThread | ( | ffi::String | thread_tag, |
| PrimExpr | extent | ||
| ) |
Launch a new thread.
| thread_tag | The thread type tag. |
| extent | The extent of environment thread. |
| LaunchThreadFrame tvm::script::ir_builder::tirx::LaunchThread | ( | Var | var, |
| PrimExpr | extent | ||
| ) |
Launch a thread.
| var | The iteration variable. |
| extent | The extent of environment thread. |
| BufferVar tvm::script::ir_builder::tirx::MatchBuffer | ( | ffi::ObjectRef | param, |
| ffi::Array< PrimExpr > | shape, | ||
| PrimType | dtype = PrimType::Float(32), |
||
| ffi::Optional< Expr > | data = std::nullopt, |
||
| ffi::Array< PrimExpr > | strides = {}, |
||
| PrimExpr | elem_offset = PrimExpr(), |
||
| ffi::String | storage_scope = "global", |
||
| int | align = -1, |
||
| int | offset_factor = 0, |
||
| ffi::Optional< Layout > | layout = std::nullopt |
||
| ) |
The buffer match statement.
| param | The parameter of the PrimFunc to match. |
| shape | The type of the buffer prior to flattening. |
| dtype | The data type in the content of the buffer. |
| data | The pointer to the head of the data. |
| strides | The strides of each dimension. |
| elem_offset | The offset in terms of number of dtype elements (including lanes). |
| storage_scope | The optional storage scope of buffer data pointer. |
| align | The alignment requirement of data pointer in bytes. |
| offset_factor | The factor of elem_offset field. |
| ForFrame tvm::script::ir_builder::tirx::Parallel | ( | PrimExpr | start, |
| PrimExpr | stop, | ||
| ffi::Optional< ffi::Map< ffi::String, Any > > | annotations = std::nullopt, |
||
| ffi::Optional< PrimExpr > | step = std::nullopt, |
||
| ffi::Optional< PrimType > | dtype = std::nullopt |
||
| ) |
The parallel For statement.
| start | The minimum value of iteration. |
| stop | The maximum value of iteration. |
| annotations | The optional annotations of the For statement. |
| step | The optional step value of iteration. |
| dtype | The optional dtype of the loop var ("int32" or "uint32"). |
| PrimFuncFrame tvm::script::ir_builder::tirx::PrimFunc | ( | bool | is_private, |
| bool | s_tir = false, |
||
| bool | persistent = false |
||
| ) |
The primitive function statement.
| void tvm::script::ir_builder::tirx::Reads | ( | ffi::Array< ffi::ObjectRef > | buffer_slices | ) |
The block buffer region reading statement.
| buffer_slices | The array of buffer regions to read. |
Create a return statement.
| value | The value to return. |
| ffi::Variant< BufferVar, AllocBufferFrame > tvm::script::ir_builder::tirx::SBlockAllocBuffer | ( | ffi::Array< PrimExpr > | shape, |
| PrimType | dtype = PrimType::Float(32), |
||
| ffi::Optional< Expr > | data = std::nullopt, |
||
| ffi::Array< PrimExpr > | strides = {}, |
||
| PrimExpr | elem_offset = PrimExpr(), |
||
| ffi::String | storage_scope = "", |
||
| int | align = -1, |
||
| int | offset_factor = 0, |
||
| ffi::Optional< Layout > | layout = std::nullopt, |
||
| ffi::Array< PrimExpr > | allocated_addr = {} |
||
| ) |
The buffer allocation function.
| shape | The type of the buffer prior to flattening. |
| dtype | The data type in the content of the buffer. |
| data | The pointer to the head of the data. |
| strides | The strides of each dimension. |
| elem_offset | The offset in terms of number of dtype elements (including lanes). |
| storage_scope | The optional storage scope of buffer data pointer. |
| align | The alignment requirement of data pointer in bytes. |
| offset_factor | The factor of elem_offset field. |
| layout | The layout of the buffer. |
| allocated_addr | The allocated address of the buffer. Might be multi-dimensional. |
| ffi::Array< tvm::tirx::Var > tvm::script::ir_builder::tirx::ScopeId | ( | ffi::Optional< ffi::Array< PrimExpr > > | extents, |
| ffi::String | parent, | ||
| ffi::String | name, | ||
| ffi::String | cur, | ||
| PrimType | dtype = PrimType::Int(32) |
||
| ) |
Define a scope id. Pass extents=std::nullopt to defer the extent; it is inferred at LowerTIRx from the sibling ScopeIdDef closure.
| extents | The optional extents of the scope id. |
| parent | The parent scope name. |
| name | The user-facing API name, used in error messages. |
| cur | The current scope name. |
| dtype | The dtype of the introduced scope id vars ("int32" or "uint32"). |
| ForFrame tvm::script::ir_builder::tirx::Serial | ( | PrimExpr | start, |
| PrimExpr | stop, | ||
| ffi::Optional< ffi::Map< ffi::String, Any > > | annotations = std::nullopt, |
||
| ffi::Optional< PrimExpr > | step = std::nullopt, |
||
| ffi::Optional< PrimType > | dtype = std::nullopt |
||
| ) |
The serial For statement.
| start | The minimum value of iteration. |
| stop | The maximum value of iteration. |
| annotations | The optional annotations of the For statement. |
| step | The optional step value of iteration. |
| dtype | The optional dtype of the loop var ("int32" or "uint32"). When omitted it is inferred from the bounds. |
|
inline |
| ForFrame tvm::script::ir_builder::tirx::ThreadBinding | ( | PrimExpr | start, |
| PrimExpr | stop, | ||
| ffi::String | thread, | ||
| ffi::Optional< ffi::Map< ffi::String, Any > > | annotations = std::nullopt |
||
| ) |
The thread-binding For statement.
| start | The minimum value of iteration. |
| stop | The maximum value of iteration. |
| thread | The thread for loop variable to bind. |
| annotations | The optional annotations of the For statement. |
| ffi::Array< tvm::tirx::Var > tvm::script::ir_builder::tirx::ThreadId | ( | ffi::Optional< ffi::Array< PrimExpr > > | extents, |
| ffi::String | parent, | ||
| PrimType | dtype = PrimType::Int(32) |
||
| ) |
| void tvm::script::ir_builder::tirx::TilePrimitiveCall | ( | tvm::tirx::TilePrimitiveCall | op_call | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| ForFrame tvm::script::ir_builder::tirx::Unroll | ( | PrimExpr | start, |
| PrimExpr | stop, | ||
| ffi::Optional< ffi::Map< ffi::String, Any > > | annotations = std::nullopt, |
||
| ffi::Optional< PrimExpr > | step = std::nullopt, |
||
| ffi::Optional< PrimType > | dtype = std::nullopt |
||
| ) |
The unrolled For statement.
| start | The minimum value of iteration. |
| stop | The maximum value of iteration. |
| annotations | The optional annotations of the For statement. |
| step | The optional step value of iteration. |
| dtype | The optional dtype of the loop var ("int32" or "uint32"). |
| ForFrame tvm::script::ir_builder::tirx::Vectorized | ( | PrimExpr | start, |
| PrimExpr | stop, | ||
| ffi::Optional< ffi::Map< ffi::String, Any > > | annotations = std::nullopt, |
||
| ffi::Optional< PrimExpr > | step = std::nullopt, |
||
| ffi::Optional< PrimType > | dtype = std::nullopt |
||
| ) |
The vectorized For statement.
| start | The minimum value of iteration. |
| stop | The maximum value of iteration. |
| annotations | The optional annotations of the For statement. |
| step | The optional step value of iteration. |
| dtype | The optional dtype of the loop var ("int32" or "uint32"). |
|
inline |
| ffi::Array< tvm::tirx::Var > tvm::script::ir_builder::tirx::WarpgroupId | ( | ffi::Optional< ffi::Array< PrimExpr > > | extents, |
| ffi::String | parent, | ||
| PrimType | dtype = PrimType::Int(32) |
||
| ) |
| ffi::Array< tvm::tirx::Var > tvm::script::ir_builder::tirx::WarpId | ( | ffi::Optional< ffi::Array< PrimExpr > > | extents, |
| ffi::String | parent, | ||
| PrimType | dtype = PrimType::Int(32) |
||
| ) |
The block predicate statement.
| predicate | The predicate condition. |
| WhileFrame tvm::script::ir_builder::tirx::While | ( | PrimExpr | condition | ) |
Create a while loop.
| condition | The termination condition of the loop. |
| void tvm::script::ir_builder::tirx::Writes | ( | ffi::Array< ffi::ObjectRef > | buffer_slices | ) |
The block buffer region writing statement.
| buffer_slices | The array of buffer regions to write. |