'util' Dialect
Operations
util.alloc
(::lingodb::compiler::dialect::util::AllocOp)
Syntax:
operation ::= `util.alloc` `(` $size `)` `:` type($ref) attr-dict
Operands:
Operand | Description |
---|---|
size | index |
Results:
Result | Description |
---|---|
ref | ref type |
util.alloca
(::lingodb::compiler::dialect::util::AllocaOp)
Syntax:
operation ::= `util.alloca` `(` $size `)` `:` type($ref) attr-dict
Operands:
Operand | Description |
---|---|
size | index |
Results:
Result | Description |
---|---|
ref | ref type |
util.arrayelementptr
(::lingodb::compiler::dialect::util::ArrayElementPtrOp)
Syntax:
operation ::= `util.arrayelementptr` $ref `[` $idx `]` `:`type($ref) `->` type($res) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
ref | ref type |
idx | index |
Results:
Result | Description |
---|---|
res | ref type |
util.buffer_cast
(::lingodb::compiler::dialect::util::BufferCastOp)
Generic memref cast function
Syntax:
operation ::= `util.buffer_cast` $val `:` type($val) `->` type($res) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
val | buffer |
Results:
Result | Description |
---|---|
res | buffer |
util.buffer_create
(::lingodb::compiler::dialect::util::BufferCreateOp)
Create buffer from ptr and len
Syntax:
operation ::= `util.buffer_create` $ptr `:` type($ptr) `,` $len `->` type($res) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
ptr | ref type |
len | index |
Results:
Result | Description |
---|---|
res | buffer |
util.buffer_get_memref
(::lingodb::compiler::dialect::util::BufferGetMemRefOp)
Create a memref<?xi8>
with dimension info to the buffer
Syntax:
operation ::= `util.buffer_get_memref` $buffer `:` type($buffer) `->` type($memref) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
buffer | buffer |
Results:
Result | Description |
---|---|
memref | 1D memref of 8-bit signless integer values |
util.buffer_getelementref
(::lingodb::compiler::dialect::util::BufferGetElementRef)
Syntax:
operation ::= `util.buffer_getelementref` $buffer `[` $idx `]` `:` type($buffer) `->` type($ref) attr-dict
Operands:
Operand | Description |
---|---|
buffer | buffer |
idx | index |
Results:
Result | Description |
---|---|
ref | ref type |
util.buffer_getlen
(::lingodb::compiler::dialect::util::BufferGetLen)
Syntax:
operation ::= `util.buffer_getlen` $buffer `:` type($buffer) attr-dict
Operands:
Operand | Description |
---|---|
buffer | buffer |
Results:
Result | Description |
---|---|
len | index |
util.buffer_getref
(::lingodb::compiler::dialect::util::BufferGetRef)
Syntax:
operation ::= `util.buffer_getref` $buffer `:` type($buffer) `->` type($ref) attr-dict
Operands:
Operand | Description |
---|---|
buffer | buffer |
Results:
Result | Description |
---|---|
ref | ref type |
util.dealloc
(::lingodb::compiler::dialect::util::DeAllocOp)
Syntax:
operation ::= `util.dealloc` $ref `:` type($ref) attr-dict
Operands:
Operand | Description |
---|---|
ref | ref type |
util.generic_memref_cast
(::lingodb::compiler::dialect::util::GenericMemrefCastOp)
Generic memref cast function
Syntax:
operation ::= `util.generic_memref_cast` $val `:` type($val) `->` type($res) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
val | ref type |
Results:
Result | Description |
---|---|
res | ref type |
util.get_tuple
(::lingodb::compiler::dialect::util::GetTupleOp)
Get tuple
Syntax:
operation ::= `util.get_tuple` $tuple `[` $offset `]` `:` `(`type($tuple)`)` `->` type($val) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Attributes:
Attribute | MLIR Type | Description |
---|---|---|
offset | ::mlir::IntegerAttr | 32-bit signless integer attribute |
Operands:
Operand | Description |
---|---|
tuple | tuple with any combination of any type values |
Results:
Result | Description |
---|---|
val | any type |
util.hash_64
(::lingodb::compiler::dialect::util::Hash64)
Syntax:
operation ::= `util.hash_64` $val attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
val | index |
Results:
Result | Description |
---|---|
hash | index |
util.hash_combine
(::lingodb::compiler::dialect::util::HashCombine)
Syntax:
operation ::= `util.hash_combine` $h1 `,` $h2 attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
h1 | index |
h2 | index |
Results:
Result | Description |
---|---|
hash | index |
util.hash_varlen
(::lingodb::compiler::dialect::util::HashVarLen)
Syntax:
operation ::= `util.hash_varlen` $val attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
val | type representing variable-length data up to 2^31 bytes |
Results:
Result | Description |
---|---|
hash | index |
util.invalid_ref
(::lingodb::compiler::dialect::util::InvalidRefOp)
Syntax:
operation ::= `util.invalid_ref` type($ref) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Results:
Result | Description |
---|---|
ref | ref type |
util.is_ref_valid
(::lingodb::compiler::dialect::util::IsRefValidOp)
Syntax:
operation ::= `util.is_ref_valid` $ref `:` type($ref) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
ref | ref type |
Results:
Result | Description |
---|---|
valid | 1-bit signless integer |
util.load
(::lingodb::compiler::dialect::util::LoadOp)
Syntax:
operation ::= `util.load` $ref `[` $idx `]` `:`type($ref) `->` type($val) attr-dict
Interfaces: MemoryEffectOpInterface
Operands:
Operand | Description |
---|---|
ref | ref type |
idx | index |
Results:
Result | Description |
---|---|
val | any type |
util.pack
(::lingodb::compiler::dialect::util::PackOp)
String constant
Syntax:
operation ::= `util.pack` $vals `:` type($vals) attr-dict `->` type($tuple)
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
vals | variadic of any type |
Results:
Result | Description |
---|---|
tuple | tuple with any combination of any type values |
util.ptr_tag_matches
(::lingodb::compiler::dialect::util::PtrTagMatches)
Syntax:
operation ::= `util.ptr_tag_matches` $hash `,` $ref `:` type($ref) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
ref | ref type |
hash | index |
Results:
Result | Description |
---|---|
matches | 1-bit signless integer |
util.sizeof
(::lingodb::compiler::dialect::util::SizeOfOp)
Syntax:
operation ::= `util.sizeof` $type attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Attributes:
Attribute | MLIR Type | Description |
---|---|---|
type | ::mlir::TypeAttr | any type attribute |
Results:
Result | Description |
---|---|
res | index |
util.store
(::lingodb::compiler::dialect::util::StoreOp)
Syntax:
operation ::= `util.store` $val `:` type($val) `,` $ref `[` $idx `]` `:`type($ref) attr-dict
Operands:
Operand | Description |
---|---|
val | any type |
ref | ref type |
idx | index |
util.to_generic_memref
(::lingodb::compiler::dialect::util::ToGenericMemrefOp)
Syntax:
operation ::= `util.to_generic_memref` $memref `:` type($memref) `->` type($ref) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
memref | memref of 8-bit signless integer values |
Results:
Result | Description |
---|---|
ref | ref type |
util.to_memref
(::lingodb::compiler::dialect::util::ToMemrefOp)
Syntax:
operation ::= `util.to_memref` $ref `:` type($ref) `->` type($memref) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
ref | ref type |
Results:
Result | Description |
---|---|
memref | memref of any type values |
util.tupleelementptr
(::lingodb::compiler::dialect::util::TupleElementPtrOp)
Syntax:
operation ::= `util.tupleelementptr` $ref `[` $idx `]` `:`type($ref) `->` type($res) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Attributes:
Attribute | MLIR Type | Description |
---|---|---|
idx | ::mlir::IntegerAttr | 32-bit signless integer attribute |
Operands:
Operand | Description |
---|---|
ref | ref type |
Results:
Result | Description |
---|---|
res | ref type |
util.undef
(::lingodb::compiler::dialect::util::UndefOp)
Undefined value
Syntax:
operation ::= `util.undef` attr-dict `:` type($res)
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Results:
Result | Description |
---|---|
res | any type |
util.unpack
(::lingodb::compiler::dialect::util::UnPackOp)
Unpack tuple
Syntax:
operation ::= `util.unpack` $tuple `:` type($tuple) attr-dict `->` type($vals)
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
tuple | tuple with any combination of any type values |
Results:
Result | Description |
---|---|
vals | variadic of any type |
util.untag_ptr
(::lingodb::compiler::dialect::util::UnTagPtr)
Syntax:
operation ::= `util.untag_ptr` $ref `:` type($ref) `->` type($res) attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
ref | ref type |
Results:
Result | Description |
---|---|
res | ref type |
util.varlen32_cmp
(::lingodb::compiler::dialect::util::VarLenCmp)
Syntax:
operation ::= `util.varlen32_cmp` $left `,` $right attr-dict
Operands:
Operand | Description |
---|---|
left | type representing variable-length data up to 2^31 bytes |
right | type representing variable-length data up to 2^31 bytes |
Results:
Result | Description |
---|---|
eq | 1-bit signless integer |
needs_detailed_eval | 1-bit signless integer |
util.varlen32_create
(::lingodb::compiler::dialect::util::CreateVarLen)
Syntax:
operation ::= `util.varlen32_create` $ref `,` $len attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Operands:
Operand | Description |
---|---|
ref | ref type |
len | 32-bit signless integer |
Results:
Result | Description |
---|---|
varlen | type representing variable-length data up to 2^31 bytes |
util.varlen32_create_const
(::lingodb::compiler::dialect::util::CreateConstVarLen)
Syntax:
operation ::= `util.varlen32_create_const` $str attr-dict
Traits: AlwaysSpeculatableImplTrait
Interfaces: ConditionallySpeculatable
, NoMemoryEffect (MemoryEffectOpInterface)
Effects: MemoryEffects::Effect{}
Attributes:
Attribute | MLIR Type | Description |
---|---|---|
str | ::mlir::StringAttr | string attribute |
Results:
Result | Description |
---|---|
varlen | type representing variable-length data up to 2^31 bytes |
util.varlen32_getlen
(::lingodb::compiler::dialect::util::VarLenGetLen)
Syntax:
operation ::= `util.varlen32_getlen` $varlen attr-dict
Operands:
Operand | Description |
---|---|
varlen | type representing variable-length data up to 2^31 bytes |
Results:
Result | Description |
---|---|
len | index |
util.varlen32_try_cheap_hash
(::lingodb::compiler::dialect::util::VarLenTryCheapHash)
Syntax:
operation ::= `util.varlen32_try_cheap_hash` $varlen attr-dict
Operands:
Operand | Description |
---|---|
varlen | type representing variable-length data up to 2^31 bytes |
Results:
Result | Description |
---|---|
complete | 1-bit signless integer |
hash | index |
Types
BufferType
buffer
Syntax:
!util.buffer<
mlir::Type # t
>
Parameters:
Parameter | C++ type | Description |
---|---|---|
t | mlir::Type |
RefType
ref type
Parameters:
Parameter | C++ type | Description |
---|---|---|
elementType | mlir::Type |
VarLen32Type
type representing variable-length data up to 2^31 bytes
Syntax: !util.varlen32