Skip to content

Higher level API

Core.Bool Method
julia
Bool(attr)

Returns the value stored in the given bool attribute.

source
Core.Float64 Method
julia
Float64(attr)

Returns the value stored in the given floating point attribute, interpreting the value as double.

source
Core.Int64 Method
julia
Int64(attr)

Returns the value stored in the given integer attribute, assuming the value is of signed type and fits into a signed 64-bit integer.

source
Core.String Method
julia
String(attr)

Returns the attribute values as a string reference. The data remains live as long as the context in which the attribute lives.

source
Core.String Method
julia
String(ident)

Gets the string value of the identifier.

source
Core.UInt64 Method
julia
UInt64(attr)

Returns the value stored in the given integer attribute, assuming the value is of unsigned type and fits into an unsigned 64-bit integer.

source
Reactant.MLIR.IR.AffineMap Method
julia
AffineMap(ndims, nsymbols, affineExprs; context=context())

Creates an affine map with results defined by the given list of affine expressions. The map resulting map also has the requested number of input dimensions and symbols, regardless of them being used in the results.

source
Reactant.MLIR.IR.AffineMap Method
julia
AffineMap(ndims, nsymbols; context=context())

Creates a zero result affine map of the given dimensions and symbols in the context. The affine map is owned by the context.

source
Reactant.MLIR.IR.AffineMap Method
julia
AffineMap(attr)

Returns the affine map wrapped in the given affine map attribute.

source
Reactant.MLIR.IR.AffineMap Method
julia
AffineMap(; context=context())

Creates a zero result affine map with no dimensions or symbols in the context. The affine map is owned by the context.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(str; context=context())

Creates a string attribute in the given context containing the given string.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(value; context=context())

Creates a bool attribute in the given context with the given value.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(elements; context=context())

Creates a dictionary attribute containing the given list of elements in the provided context.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(affineMap)

Creates an affine map attribute wrapping the given map. The attribute belongs to the same context as the affine map.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(type, str)

Creates a string attribute in the given context containing the given string. Additionally, the attribute has the given type.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(type)

Creates a type attribute wrapping the given type in the same context as the type.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(float; context=context(), location=Location(), check=false)

Creates a floating point attribute in the given context with the given double value and double-precision FP semantics. If check=true, emits appropriate diagnostics on illegal arguments.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(complex; context=context(), location=Location(), check=false)

Creates a complex attribute in the given context with the given complex value and double-precision FP semantics.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(elements; context=context())

Creates an array element containing the given list of elements in the given context.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute()

Returns an empty attribute.

source
Reactant.MLIR.IR.Attribute Method
julia
Attribute(int)

Creates an integer attribute of the given type with the given integer value.

source
Reactant.MLIR.IR.Block Method
julia
Block(args, locs)

Creates a new empty block with the given argument types and transfers ownership to the caller.

source
Reactant.MLIR.IR.BlockIterator Type
julia
BlockIterator(region::Region)

Iterates over all blocks in the given region.

source
Reactant.MLIR.IR.Context Method
julia
Context()

Creates an MLIR context and transfers its ownership to the caller.

source
Reactant.MLIR.IR.ExecutionEngine Type
julia
ExecutionEngine(op, optLevel, sharedlibs = [])

Creates an ExecutionEngine for the provided ModuleOp. The ModuleOp is expected to be "translatable" to LLVM IR (only contains operations in dialects that implement the LLVMTranslationDialectInterface). The module ownership stays with the client and can be destroyed as soon as the call returns. optLevel is the optimization level to be used for transformation and code generation. LLVM passes at optLevel are run before code generation. The number and array of paths corresponding to shared libraries that will be loaded are specified via numPaths and sharedLibPaths respectively. TODO: figure out other options.

source
Reactant.MLIR.IR.Identifier Method
julia
Identifier(context, str)

Gets an identifier with the given string value.

source
Reactant.MLIR.IR.IntegerSet Method
julia
IntegerSet(ndims, nsymbols, constraints, eqflags; context=context())

Gets or creates a new integer set in the given context. The set is defined by a list of affine constraints, with the given number of input dimensions and symbols, which are treated as either equalities (eqflags is 1) or inequalities (eqflags is 0). Both constraints and eqflags need to be arrays of the same length.

source
Reactant.MLIR.IR.IntegerSet Method
julia
Integerset(ndims, nsymbols; context=context())

Gets or creates a new canonically empty integer set with the give number of dimensions and symbols in the given context.

source
Reactant.MLIR.IR.LogicalResult Type
julia
LogicalResult

A logical result value, essentially a boolean with named states. LLVM convention for using boolean values to designate success or failure of an operation is a moving target, so MLIR opted for an explicit class. Instances of LogicalResult must only be inspected using the associated functions.

source
Reactant.MLIR.IR.Module Type
julia
Module(location=Location())

Creates a new, empty module and transfers ownership to the caller.

source
Reactant.MLIR.IR.NamedAttribute Method
julia
NamedAttribute(name, attr)

Associates an attribute with the name. Takes ownership of neither.

source
Reactant.MLIR.IR.OpPassManager Method
julia
OpPassManager(opPassManager, operationName)

Nest an OpPassManager under the provided OpPassManager, the nested passmanager will only run on operations matching the provided name. The returned OpPassManager will be destroyed when the parent is destroyed.

source
Reactant.MLIR.IR.OpPassManager Method
julia
OpPassManager(passManager, operationName)

Nest an OpPassManager under the top-level PassManager, the nested passmanager will only run on operations matching the provided name. The returned OpPassManager will be destroyed when the parent is destroyed. To further nest more OpPassManager under the newly returned one, see mlirOpPassManagerNest below.

source
Reactant.MLIR.IR.OpPassManager Method
julia
OpPassManager(passManager)

Cast a top-level PassManager to a generic OpPassManager.

source
Reactant.MLIR.IR.Operation Method
julia
Operation(module)

Views the module as a generic operation.

source
Reactant.MLIR.IR.OperationIterator Type
julia
OperationIterator(block::Block)

Iterates over all operations for the given block.

source
Reactant.MLIR.IR.PassManager Method
julia
PassManager(anchorOp; context=context())

Create a new top-level PassManager anchored on anchorOp.

source
Reactant.MLIR.IR.PassManager Method
julia
PassManager(; context=context())

Create a new top-level PassManager.

source
Reactant.MLIR.IR.Region Method
julia
Region()

Creates a new empty region and transfers ownership to the caller.

source
Reactant.MLIR.IR.RegionIterator Type
julia
RegionIterator(::Operation)

Iterates over all sub-regions for the given operation.

source
Reactant.MLIR.IR.SymbolTable Method
julia
mlirSymbolTableCreate(operation)

Creates a symbol table for the given operation. If the operation does not have the SymbolTable trait, returns a null symbol table.

source
Reactant.MLIR.IR.Type Method
julia
Type(attr)

Returns the type stored in the given type attribute.

source
Reactant.MLIR.IR.Type Method
julia
Type(T::Core.Type{<:Integer}; context=context()

Creates a signless integer type of the given bitwidth in the context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(::Core.Type{Reactant.F8E4M3B11FNUZ}; context=context())

Creates a f8e4m3b11fnuz type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(::Core.Type{Reactant.F8E4M3FNUZ}; context=context())

Creates a f8e4m3fnuz type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(::Core.Type{Reactant.F8E4M3FN}; context=context())

Creates a f8e4m3fn type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(::Core.Type{Reactant.F8E5M2FNUZ}; context=context())

Creates a f8e5m2fnuz type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(::Core.Type{Reactant.F8E5M2}; context=context())

Creates a f8e5m2 type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(T::Core.Type{<:Signed}; context=context()

Creates a signed integer type of the given bitwidth in the context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(T::Core.Type{<:Unsigned}; context=context()

Creates an unsigned integer type of the given bitwidth in the context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(T::Core.Type{Bool}; context=context()

Creates a 1-bit signless integer type in the context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(::Core.Type{Float16}; context=context())

Creates an f16 type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(Core.Type{Float32}; context=context())

Creates an f32 type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(Core.Type{Float64}; context=context())

Creates a f64 type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(::Core.Type{Nothing}; context=context())

Creates a None type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(elements; context=context())
Type(::Core.Type{<:Tuple{T...}}; context=context())

Creates a tuple type that consists of the given list of elemental types. The type is owned by the context.

source
Reactant.MLIR.IR.Type Method
julia
Type(Complex{T}) where {T}

Creates a complex type with the given element type in the same context as the element type. The type is owned by the context.

source
Base.:* Method
julia
*(lhs, rhs)

Creates an affine mul expression with 'lhs' and 'rhs'.

source
Base.:+ Method
julia
+(lhs, rhs)

Creates an affine add expression with 'lhs' and 'rhs'.

source
Base.:== Method
julia
==(a, b)

Returns true if the two affine expressions are equal.

source
Base.:== Method
julia
==(a, b)

Checks if two affine maps are equal.

source
Base.:== Method
julia
==(a1, a2)

Checks if two attributes are equal.

source
Base.:== Method
julia
==(block, other)

Checks whether two blocks handles point to the same block. This does not perform deep comparison.

source
Base.:== Method
julia
==(ident, other)

Checks whether two identifiers are the same.

source
Base.:== Method
julia
==(s1, s2)

Checks if two integer set objects are equal. This is a "shallow" comparison of two objects. Only the sets with some small number of constraints are uniqued and compare equal here. Set objects that represent the same integer set with different constraints may be considered non-equal by this check. Set difference followed by an (expensive) emptiness check should be used to check equivalence of the underlying integer sets.

source
Base.:== Method
julia
==(region, other)

Checks whether two region handles point to the same region. This does not perform deep comparison.

source
Base.:== Method
julia
==(t1, t2)

Checks if two types are equal.

source
Base.:== Method
julia
==(typeID1, typeID2)

Checks if two type ids are equal.

source
Base.:== Method
julia
==(value1, value2)

Returns 1 if two values are equal, 0 otherwise.

source
Base.cld Method
julia
cld(lhs, rhs)

Creates an affine ceildiv expression with 'lhs' and 'rhs'.

source
Base.copy Method
julia
copy(op)

Creates a deep copy of an operation. The operation is not inserted and ownership is transferred to the caller.

source
Base.div Method
julia
div(lhs, rhs)
÷(lhs, rhs)
fld(lhs, rhs)

Creates an affine floordiv expression with 'lhs' and 'rhs'.

source
Base.fill Method
julia
fill(attr, shapedType)

Creates a dense elements attribute with the given Shaped type containing a single replicated element (splat).

source
Base.gcd Method
julia
gcd(affineExpr)

Returns the greatest known integral divisor of this affine expression. The result is always positive.

source
Base.hash Method
julia
hash(typeID)

Returns the hash value of the type id.

source
Base.insert! Method
julia
insert!(block, index, operation)

Takes an operation owned by the caller and inserts it as index to the block. This is an expensive operation that scans the block linearly, prefer insertBefore/After instead.

source
Base.insert! Method
julia
insert!(region, index, block)

Takes a block owned by the caller and inserts it at index to the given region. This is an expensive operation that linearly scans the region, prefer insertAfter/Before instead.

source
Base.isempty Method
julia
isempty(affineMap)

Checks whether the given affine map is an empty affine map.

source
Base.isperm Method
julia
isperm(affineMap)

Checks whether the given affine map represents a symbol-less permutation map.

source
Base.mod Method
julia
mod(lhs, rhs)

Creates an affine mod expression with 'lhs' and 'rhs'.

source
Base.ndims Method
julia
ndims(affineMap)

Returns the number of dimensions of the given affine map.

source
Base.ndims Method
julia
ndims(set)

Returns the number of dimensions in the given set.

source
Base.ndims Method
julia
ndims(type)

Returns the rank of the given ranked shaped type.

source
Base.parse Method
julia
parse(passManager, pipeline)

Parse a textual MLIR pass pipeline and add it to the provided OpPassManager.

source
Base.parse Method
julia
parse(::Core.Type{Attribute}, str; context=context())

Parses an attribute. The attribute is owned by the context.

source
Base.parse Method
julia
parse(::Type{Module}, module; context=context())

Parses a module from the string and transfers ownership to the caller.

source
Base.parse Method
julia
parse(type; context=context())

Parses a type. The type is owned by the context.

source
Base.push! Method
julia
push!(block, operation)

Takes an operation owned by the caller and appends it to the block.

source
Base.push! Method
julia
push!(region, block)

Takes a block owned by the caller and appends it to the given region.

source
Base.push! Method
julia
push!(symboltable, operation)

Inserts the given operation into the given symbol table. The operation must have the symbol trait. If the symbol table already has a symbol with the same name, renames the symbol being inserted to ensure name uniqueness. Note that this does not move the operation itself into the block of the symbol table operation, this should be done separately. Returns the name of the symbol after insertion.

source
Base.replace Method
julia
mlirAffineMapReplace(affineMap, expression => replacement, numResultDims, numResultSyms)

Apply AffineExpr::replace(map) to each of the results and return a new new AffineMap with the new results and the specified number of dims and symbols.

source
Base.replace Method
julia
mlirIntegerSetReplaceGet(set, dimReplacements, symbolReplacements, numResultDims, numResultSymbols)

Gets or creates a new integer set in which the values and dimensions of the given set are replaced with the given affine expressions. dimReplacements and symbolReplacements are expected to point to at least as many consecutive expressions as the given set has dimensions and symbols, respectively. The new set will have numResultDims and numResultSymbols dimensions and symbols, respectively.

source
Base.reshape Method
julia
Base.reshape(attr, shapedType)

Creates a dense elements attribute that has the same data as the given dense elements attribute and a different shaped type. The new type must have the same total number of elements.

source
Base.size Method
julia
size(type, i)

Returns the i-th dimension of the given ranked shaped type.

source
Base.write Method
julia
write(fileName, jit)

Dump as an object in fileName.

source
Reactant.MLIR.IR.AffineDimensionExpr Method
julia
AffineDimensionExpr(position; context=context)

Creates an affine dimension expression with 'position' in the context.

source
Reactant.MLIR.IR.BFloat16Type Method

BFloat16Type(; context=context())

Creates a bf16 type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.ConstantAffineMap Method
julia
ConstantAffineMap(val; context=context())

Creates a single constant result affine map in the context. The affine map is owned by the context.

source
Reactant.MLIR.IR.ConstantExpr Method
julia
ConstantExpr(constant::Int; context=context())

Creates an affine constant expression with 'constant' in the context.

source
Reactant.MLIR.IR.DenseElementsAttribute Method
julia
DenseElementsAttribute(array::AbstractArray)

Creates a dense elements attribute with the given shaped type from elements of a specific type. Expects the element type of the shaped type to match the data element type.

source
Reactant.MLIR.IR.DenseElementsAttribute Method
julia
DenseElementsAttribute(array::AbstractArray{String})

Creates a dense elements attribute with the given shaped type from string elements.

source
Reactant.MLIR.IR.DenseElementsAttribute Method
julia
DenseElementsAttribute(shapedType, elements)

Creates a dense elements attribute with the given Shaped type and elements in the same context as the type.

source
Reactant.MLIR.IR.FlatSymbolRefAttribute Method
julia
FlatSymbolRefAttribute(ctx, symbol)

Creates a flat symbol reference attribute in the given context referencing a symbol identified by the given string.

source
Reactant.MLIR.IR.Float8E4M3FN Method
julia
Float8E4M3FN(; context=context())

Creates an f8E4M3FN type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.Float8E5M2 Method
julia
Float8E5M2(; context=context())

Creates an f8E5M2 type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.FunctionType Method
julia
FunctionType(inputs, results; context=context())

Creates a function type, mapping a list of input types to result types.

source
Reactant.MLIR.IR.IdentityAffineMap Method
julia
IdentityAffineMap(ndims; context=context())

Creates an affine map with 'ndims' identity in the context. The affine map is owned by the context.

source
Reactant.MLIR.IR.IndexType Method
julia
IndexType(; context=context())

Creates an index type in the given context. The type is owned by the context.

source
Reactant.MLIR.IR.MemRefType Method
julia
MemRefType(elementType, rank, shape, layout, memorySpace; location=Location(), check=false)

Creates a MemRef type with the given rank and shape, a potentially empty list of affine layout maps, the given memory space and element type, in the same context as element type. The type is owned by the context. If check=true, emits appropriate diagnostics on illegal arguments.

source
Reactant.MLIR.IR.MemRefType Method
julia
MemRefType(elementType, rank, shape, memorySpace; location=Location(), check=false)

Creates a MemRef type with the given rank, shape, memory space and element type in the same context as the element type. The type has no affine maps, i.e. represents a default row-major contiguous memref. The type is owned by the context. If check=true, emits appropriate diagnostics on illegal arguments.

source
Reactant.MLIR.IR.MemRefType Method
julia
MemRefType(elementType, memorySpace)

Creates an Unranked MemRef type with the given element type and in the given memory space. The type is owned by the context of element type. If check=true, emits appropriate diagnostics on illegal arguments.

source
Reactant.MLIR.IR.MinorIdentityAffineMap Method
julia
MinorIdentityAffineMap(ndims, nresults; context=context())

Creates an identity affine map on the most minor dimensions in the context. The affine map is owned by the context. The function asserts that the number of dimensions is greater or equal to the number of results.

source
Reactant.MLIR.IR.OpaqueAttribute Method
julia
OpaqueAttribute(dialectNamespace, dataLength, data, type; context=context())

Creates an opaque attribute in the given context associated with the dialect identified by its namespace. The attribute contains opaque byte data of the specified length (data need not be null-terminated).

source
Reactant.MLIR.IR.OpaqueType Method
julia
OpaqueType(dialectNamespace, typeData; context=context())

Creates an opaque type in the given context associated with the dialect identified by its namespace. The type contains opaque byte data of the specified length (data need not be null-terminated).

source
Reactant.MLIR.IR.PermutationAffineMap Method
julia
PermutationAffineMap(permutation; context=context())

Creates an affine map with a permutation expression and its size in the context. The permutation expression is a non-empty vector of integers. The elements of the permutation vector must be continuous from 0 and cannot be repeated (i.e. [1,2,0] is a valid permutation. [2,0] or [1,1,2] is an invalid invalid permutation). The affine map is owned by the context.

source
Reactant.MLIR.IR.SymbolExpr Method
julia
SymbolExpr(position; context=context())

Creates an affine symbol expression with 'position' in the context.

source
Reactant.MLIR.IR.SymbolRefAttribute Method
julia
SymbolRefAttribute(symbol, references; context=context())

Creates a symbol reference attribute in the given context referencing a symbol identified by the given string inside a list of nested references. Each of the references in the list must not be nested.

source
Reactant.MLIR.IR.TensorType Function
julia
TensorType(shape, elementType, encoding=Attribute(); location=Location(), check=false)

Creates a tensor type of a fixed rank with the given shape, element type, and optional encoding in the same context as the element type. The type is owned by the context. Tensor types without any specific encoding field should assign mlirAttributeGetNull to this parameter. If check=true, emits appropriate diagnostics on illegal arguments.

source
Reactant.MLIR.IR.TensorType Method
julia
TensorType(elementType)

Creates an unranked tensor type with the given element type in the same context as the element type. The type is owned by the context. If check=true, emits appropriate diagnostics on illegal arguments.

source
Reactant.MLIR.IR.UnitAttribute Method
julia
UnitAttribute(; context=context())

Creates a unit attribute in the given context.

source
Reactant.MLIR.IR.VectorType Method
julia
VectorType(rank, shape, elementType; location=Location(), check=false)

Creates a vector type of the shape identified by its rank and dimensions, with the given element type in the same context as the element type. The type is owned by the context. If check=true, emits appropriate diagnostics on illegal arguments.

source
Reactant.MLIR.IR.add_owned_pass! Method
julia
add_owned_pass!(opPassManager, pass)

Add a pass and transfer ownership to the provided OpPassManager. If the pass is not a generic operation pass or matching the type of the provided OpPassManager, a new OpPassManager is implicitly nested under the provided OpPassManager.

source
Reactant.MLIR.IR.add_owned_pass! Method
julia
add_owned_pass!(passManager, pass)

Add a pass and transfer ownership to the provided top-level PassManager. If the pass is not a generic operation pass or a ModulePass, a new OpPassManager is implicitly nested under the provided PassManager.

source
Reactant.MLIR.IR.add_pipeline! Method
julia
add_pipeline!(passManager, pipelineElements, callback, userData)

Parse a sequence of textual MLIR pass pipeline elements and add them to the provided OpPassManager. If parsing fails an error message is reported using the provided callback.

source
Reactant.MLIR.IR.affinemap Method
julia
affinemap(type)

Returns the affine map of the given MemRef type.

source
Reactant.MLIR.IR.argument Method
julia
argument(block, i)

Returns i-th argument of the block.

source
Reactant.MLIR.IR.attr! Method
julia
attr!(op, name, attr)

Sets an attribute by name, replacing the existing if it exists or adding a new one otherwise.

source
Reactant.MLIR.IR.attr Method
julia
attr(op, name)

Returns an attribute attached to the operation given its name.

source
Reactant.MLIR.IR.attr Method
julia
attr(op, i)

Return i-th attribute of the operation.

source
Reactant.MLIR.IR.bitwidth Method
julia
bitwidth(type)

Returns the bitwidth of an integer type.

source
Reactant.MLIR.IR.block Method
julia
block(op)

Gets the block that owns this operation, returning null if the operation is not owned.

source
Reactant.MLIR.IR.block_arg_num Method
julia
block_arg_num(value)

Returns the position of the value in the argument list of its block.

source
Reactant.MLIR.IR.block_owner Method
julia
block_owner(value)

Returns the block in which this value is defined as an argument. Asserts if the value is not a block argument.

source
Reactant.MLIR.IR.body Method
julia
body(module)

Gets the body of the module, i.e. the only block it contains.

source
Reactant.MLIR.IR.compose Method
julia
compose(affineExpr, affineMap)

Composes the given map with the given expression.

source
Reactant.MLIR.IR.constraint Method
julia
mlirIntegerSetGetConstraint(set, i)

Returns i-th constraint of the set.

source
Reactant.MLIR.IR.context Method
julia
context(affineExpr)

Gets the context that owns the affine expression.

source
Reactant.MLIR.IR.context Method
julia
context(affineMap)

Gets the context that the given affine map was created with.

source
Reactant.MLIR.IR.context Method
julia
context(attribute)

Gets the context that an attribute was created with.

source
Reactant.MLIR.IR.context Method
julia
context(ident)

Returns the context associated with this identifier

source
Reactant.MLIR.IR.context Method
julia
context(set)

Gets the context in which the given integer set lives.

source
Reactant.MLIR.IR.context Method
julia
context(module)

Gets the context that a module was created with.

source
Reactant.MLIR.IR.context Method
julia
context(op)

Gets the context this operation is associated with.

source
Reactant.MLIR.IR.context Method
julia
context(type)

Gets the context that a type was created with.

source
Reactant.MLIR.IR.data Method
julia
data(attr)

Returns the raw data as a string reference. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.IR.data Method
julia
mlirOpaqueTypeGetData(type)

Returns the raw data as a string reference. The data remains live as long as the context in which the type lives.

source
Reactant.MLIR.IR.delete! Method
julia
delete!(symboltable, operation)

Removes the given operation from the symbol table and erases it.

source
Reactant.MLIR.IR.dynsize Method
julia
dynsize()

Returns the value indicating a dynamic size in a shaped type. Prefer isdynsize to direct comparisons with this value.

source
Reactant.MLIR.IR.dynstrideoroffset Method
julia
mlirShapedTypeGetDynamicStrideOrOffset()

Returns the value indicating a dynamic stride or offset in a shaped type. Prefer isdynstrideoroffset to direct comparisons with this value.

source
Reactant.MLIR.IR.enable_ir_printing! Method
julia
enable_ir_printing!(passManager)

Enable mlir-print-ir-after-all.

source
Reactant.MLIR.IR.enable_verifier! Function
julia
enable_verifier!(passManager, enable)

Enable / disable verify-each.

source
Reactant.MLIR.IR.encoding Method
julia
encoding(type)

Gets the 'encoding' attribute from the ranked tensor type, returning a nothing if none.

source
Reactant.MLIR.IR.failure Method
julia
failure()

Creates a logical result representing a failure.

source
Reactant.MLIR.IR.first_block Method
julia
first_block(region)

Gets the first block in the region.

source
Reactant.MLIR.IR.first_op Method
julia
first_op(block)

Returns the first operation in the block or nothing if empty.

source
Reactant.MLIR.IR.first_use Method
julia
first_use(value)

Returns an OpOperand representing the first use of the value, or a nothing if there are no uses.

source
Reactant.MLIR.IR.flatsymbol Method
julia
flatsymbol(attr)

Returns the referenced symbol as a string reference. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.IR.hasrank Method
julia
hasrank(type)

Checks whether the given shaped type is ranked.

source
Reactant.MLIR.IR.hasstaticshape Method
julia
hasstaticshape(type)

Checks whether the given shaped type has a static shape.

source
Reactant.MLIR.IR.input Method
julia
input(type, i)

Returns the i-th input type.

source
Reactant.MLIR.IR.insert_after! Method
julia
insert_after!(block, reference, operation)

Takes an operation owned by the caller and inserts it after the (non-owned) reference operation in the given block. If the reference is null, prepends the operation. Otherwise, the reference must belong to the block.

source
Reactant.MLIR.IR.insert_after! Method
julia
insert_after!(region, reference, block)

Takes a block owned by the caller and inserts it after the (non-owned) reference block in the given region. The reference block must belong to the region. If the reference block is null, prepends the block to the region.

source
Reactant.MLIR.IR.insert_before! Method
julia
insert_before!(block, reference, operation)

Takes an operation owned by the caller and inserts it before the (non-owned) reference operation in the given block. If the reference is null, appends the operation. Otherwise, the reference must belong to the block.

source
Reactant.MLIR.IR.insert_before! Method
julia
insert_before!(region, reference, block)

Takes a block owned by the caller and inserts it before the (non-owned) reference block in the given region. The reference block must belong to the region. If the reference block is null, appends the block to the region.

source
Reactant.MLIR.IR.is_block_arg Method
julia
is_block_arg(value)

Returns 1 if the value is a block argument, 0 otherwise.

source
Reactant.MLIR.IR.is_op_res Method
julia
is_op_res(value)

Returns 1 if the value is an operation result, 0 otherwise.

source
Reactant.MLIR.IR.is_pure_affine Method
julia
is_pure_affine(affineExpr)

Checks whether the given affine expression is a pure affine expression, i.e. mul, floordiv, ceildic, and mod is only allowed w.r.t constants.

source
Reactant.MLIR.IR.is_registered Method
julia
is_registered(name; context=context())

Returns whether the given fully-qualified operation (i.e. 'dialect.operation') is registered with the context. This will return true if the dialect is loaded and the operation is registered within the dialect.

source
Reactant.MLIR.IR.is_symbolic_or_constant Method
julia
is_symbolic_or_constant(affineExpr)

Checks whether the given affine expression is made out of only symbols and constants.

source
Reactant.MLIR.IR.isadd Method
julia
isadd(affineExpr)

Checks whether the given affine expression is an add expression.

source
Reactant.MLIR.IR.isaffinemap Method
julia
isaffinemap(attr)

Checks whether the given attribute is an affine map attribute.

source
Reactant.MLIR.IR.isarray Method
julia
isarray(attr)

Checks whether the given attribute is an array attribute.

source
Reactant.MLIR.IR.isbf16 Method
julia
isbf16(type)

Checks whether the given type is a bf16 type.

source
Reactant.MLIR.IR.isbinary Method
julia
isbinary(affineExpr)

Checks whether the given affine expression is binary.

source
Reactant.MLIR.IR.isbool Method
julia
isbool(attr)

Checks whether the given attribute is a bool attribute.

source
Reactant.MLIR.IR.isceildiv Method
julia
isceildiv(affineExpr)

Checks whether the given affine expression is an ceildiv expression.

source
Reactant.MLIR.IR.iscomplex Method
julia
iscomplex(type)

Checks whether the given type is a Complex type.

source
Reactant.MLIR.IR.isconstantexpr Method
julia
isconstantexpr(affineExpr)

Checks whether the given affine expression is a constant expression.

source
Reactant.MLIR.IR.isconstrainteq Method
julia
mlirIntegerSetIsConstraintEq(set, i)

Returns true of the i-th constraint of the set is an equality constraint, false otherwise.

source
Reactant.MLIR.IR.isdenseelements Method
julia
isdenseelements(attr)

Checks whether the given attribute is a dense elements attribute.

source
Reactant.MLIR.IR.isdict Method
julia
isdict(attr)

Checks whether the given attribute is a dictionary attribute.

source
Reactant.MLIR.IR.isdimexpr Method
julia
isdimexpr(affineExpr)

Checks whether the given affine expression is a dimension expression.

source
Reactant.MLIR.IR.isdyndim Method
julia
isdyndim(type, i)

Checks wither the i-th dimension of the given shaped type is dynamic.

source
Reactant.MLIR.IR.isdynsize Method
julia
isdynsize(size)

Checks whether the given value is used as a placeholder for dynamic sizes in shaped types.

source
Reactant.MLIR.IR.isdynstrideoroffset Method
julia
mlirShapedTypeIsDynamicStrideOrOffset(val)

Checks whether the given value is used as a placeholder for dynamic strides and offsets in shaped types.

source
Reactant.MLIR.IR.iselements Method
julia
iselements(attr)

Checks whether the given attribute is an elements attribute.

source
Reactant.MLIR.IR.isempty Method
julia
isempty(set)

Checks whether the given set is a canonical empty set, e.g., the set returned by mlirIntegerSetEmptyGet.

source
Reactant.MLIR.IR.isf16 Method
julia
isf16(type)

Checks whether the given type is an f16 type.

source
Reactant.MLIR.IR.isf32 Method
julia
isf32(type)

Checks whether the given type is an f32 type.

source
Reactant.MLIR.IR.isf64 Method
julia
isf64(type)

Checks whether the given type is an f64 type.

source
Reactant.MLIR.IR.isf8e4m3b11fnuz Method
julia
isf8e4m3b11fnuz(type)

Checks whether the given type is an f8E4M3B11FNUZ type.

source
Reactant.MLIR.IR.isf8e4m3fn Method
julia
isf8e4m3fn(type)

Checks whether the given type is an f8E4M3FN type.

source
Reactant.MLIR.IR.isf8e4m3fnuz Method
julia
isf8e4m3fnuz(type)

Checks whether the given type is an f8E4M3FNUZ type.

source
Reactant.MLIR.IR.isf8e5m2 Method
julia
isf8e5m2(type)

Checks whether the given type is an f8E5M2 type.

source
Reactant.MLIR.IR.isf8e5m2fnuz Method
julia
isf8e5m2fnuz(type)

Checks whether the given type is an f8E5M2FNUZ type.

source
Reactant.MLIR.IR.isfailure Method
julia
isfailure(res)

Checks if the given logical result represents a failure.

source
Reactant.MLIR.IR.isflatsymbolref Method
julia
isflatsymbolref(attr)

Checks whether the given attribute is a flat symbol reference attribute.

source
Reactant.MLIR.IR.isfloat Method
julia
isfloat(attr)

Checks whether the given attribute is a floating point attribute.

source
Reactant.MLIR.IR.isfloordiv Method
julia
isfloordiv(affineExpr)

Checks whether the given affine expression is an floordiv expression.

source
Reactant.MLIR.IR.isfunction Method
julia
isfunction(type)

Checks whether the given type is a function type.

source
Reactant.MLIR.IR.isfunctionofdimexpr Method
julia
isfunctionofdimexpr(affineExpr, position)

Checks whether the given affine expression involves AffineDimExpr 'position'.

source
Reactant.MLIR.IR.isidentity Method
julia
isidentity(affineMap)

Checks whether the given affine map is an identity affine map. The function asserts that the number of dimensions is greater or equal to the number of results.

source
Reactant.MLIR.IR.isindex Method
julia
isindex(type)

Checks whether the given type is an index type.

source
Reactant.MLIR.IR.isinteger Method
julia
isinteger(attr)

Checks whether the given attribute is an integer attribute.

source
Reactant.MLIR.IR.isinteger Method
julia
isinteger(type)

Checks whether the given type is an integer type.

source
Reactant.MLIR.IR.isintegerset Method
julia
isintegerset(attr)

Checks whether the given attribute is an integer set attribute.

source
Reactant.MLIR.IR.ismemref Method
julia
ismemref(type)

Checks whether the given type is a MemRef type.

source
Reactant.MLIR.IR.isminoridentity Method
julia
isminoridentity(affineMap)

Checks whether the given affine map is a minor identity affine map.

source
Reactant.MLIR.IR.ismod Method
julia
ismod(affineExpr)

Checks whether the given affine expression is an mod expression.

source
Reactant.MLIR.IR.ismul Method
julia
ismul(affineExpr)

Checks whether the given affine expression is an mul expression.

source
Reactant.MLIR.IR.ismultipleof Method
julia
ismultipleof(affineExpr, factor)

Checks whether the given affine expression is a multiple of 'factor'.

source
Reactant.MLIR.IR.isnone Method
julia
mlirTypeIsANone(type)

Checks whether the given type is a None type.

source
Reactant.MLIR.IR.isopaque Method
julia
isopaque(attr)

Checks whether the given attribute is an opaque attribute.

source
Reactant.MLIR.IR.isopaque Method
julia
isopaque(type)

Checks whether the given type is an opaque type.

source
Reactant.MLIR.IR.isprojperm Method
julia
isprojperm(affineMap)

Checks whether the given affine map represents a subset of a symbol-less permutation map.

source
Reactant.MLIR.IR.isrankedtensor Method
julia
isrankedtensor(type)

Checks whether the given type is a ranked tensor type.

source
Reactant.MLIR.IR.isshaped Method
julia
isshaped(type)

Checks whether the given type is a Shaped type.

source
Reactant.MLIR.IR.issigned Method
julia
issigned(type)

Checks whether the given integer type is signed.

source
Reactant.MLIR.IR.issignless Method
julia
issignless(type)

Checks whether the given integer type is signless.

source
Reactant.MLIR.IR.issingleconstant Method
julia
issingleconstant(affineMap)

Checks whether the given affine map is a single result constant affine map.

source
Reactant.MLIR.IR.issparseelements Method
julia
issparseelements(attr)

Checks whether the given attribute is a sparse elements attribute.

source
Reactant.MLIR.IR.issplat Method
julia
issplat(attr)

Checks whether the given dense elements attribute contains a single replicated value (splat).

source
Reactant.MLIR.IR.isstring Method
julia
isstring(attr)

Checks whether the given attribute is a string attribute.

source
Reactant.MLIR.IR.issuccess Method
julia
issuccess(res)

Checks if the given logical result represents a success.

source
Reactant.MLIR.IR.issymbolexpr Method
julia
issymbolexpr(affineExpr)

Checks whether the given affine expression is a symbol expression.

source
Reactant.MLIR.IR.issymbolref Method
julia
issymbolref(attr)

Checks whether the given attribute is a symbol reference attribute.

source
Reactant.MLIR.IR.istensor Method
julia
istensor(type)

Checks whether the given type is a Tensor type.

source
Reactant.MLIR.IR.istuple Method
julia
istuple(type)

Checks whether the given type is a tuple type.

source
Reactant.MLIR.IR.istype Method
julia
istype(attr)

Checks whether the given attribute is a type attribute.

source
Reactant.MLIR.IR.isunit Method
julia
isunit(attr)

Checks whether the given attribute is a unit attribute.

source
Reactant.MLIR.IR.isunrankedmemref Method
julia
mlirTypeIsAUnrankedMemRef(type)

Checks whether the given type is an UnrankedMemRef type.

source
Reactant.MLIR.IR.isunrankedtensor Method
julia
isunrankedtensor(type)

Checks whether the given type is an unranked tensor type.

source
Reactant.MLIR.IR.isunsigned Method
julia
isunsigned(type)

Checks whether the given integer type is unsigned.

source
Reactant.MLIR.IR.isvector Method
julia
isvector(type)

Checks whether the given type is a Vector type.

source
Reactant.MLIR.IR.layout Method
julia
layout(type)

Returns the layout of the given MemRef type.

source
Reactant.MLIR.IR.leafref Method
julia
leafref(attr)

Returns the string reference to the leaf referenced symbol. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.IR.lhs Method
julia
lhs(affineExpr)

Returns the left hand side affine expression of the given affine binary operation expression.

source
Reactant.MLIR.IR.location Method
julia
location(op)

Gets the location of the operation.

source
Reactant.MLIR.IR.lookup Method
julia
lookup(jit, name)

Lookup a native function in the execution engine by name, returns nullptr if the name can't be looked-up.

source
Reactant.MLIR.IR.lookup Method
julia
lookup(symboltable, name)

Looks up a symbol with the given name in the given symbol table and returns the operation that corresponds to the symbol. If the symbol cannot be found, returns a null operation.

source
Reactant.MLIR.IR.majorsubmap Method
julia
majorsubmap(affineMap, nresults)

Returns the affine map consisting of the most major nresults results. Returns the null AffineMap if the nresults is equal to zero. Returns the affineMap if nresults is greater or equals to number of results of the given affine map.

source
Reactant.MLIR.IR.memspace Method
julia
mlirMemRefTypeGetMemorySpace(type)

Returns the memory space of the given MemRef type.

source
Reactant.MLIR.IR.minorsubmap Method
julia
minorsubmap(affineMap, nresults)

Returns the affine map consisting of the most minor nresults results. Returns the null AffineMap if the nresults is equal to zero. Returns the affineMap if nresults is greater or equals to number of results of the given affine map.

source
Reactant.MLIR.IR.move_after! Method
julia
move_after!(op, other)

Moves the given operation immediately after the other operation in its parent block. The given operation may be owned by the caller or by its current block. The other operation must belong to a block. In any case, the ownership is transferred to the block of the other operation.

source
Reactant.MLIR.IR.move_before! Method
julia
move_before!(op, other)

Moves the given operation immediately before the other operation in its parent block. The given operation may be owner by the caller or by its current block. The other operation must belong to a block. In any case, the ownership is transferred to the block of the other operation.

source
Reactant.MLIR.IR.name Method
julia
name(op)

Gets the name of the operation as an identifier.

source
Reactant.MLIR.IR.namespace Method
julia
mlirOpaqueAttrGetDialectNamespace(attr)

Returns the namespace of the dialect with which the given opaque attribute is associated. The namespace string is owned by the context.

source
Reactant.MLIR.IR.namespace Method
julia
mlirOpaqueTypeGetDialectNamespace(type)

Returns the namespace of the dialect with which the given opaque type is associated. The namespace string is owned by the context.

source
Reactant.MLIR.IR.nargs Method
julia
nargs(block)

Returns the number of arguments of the block.

source
Reactant.MLIR.IR.nattrs Method
julia
nattrs(op)

Returns the number of attributes attached to the operation.

source
Reactant.MLIR.IR.nconstraints Method
julia
nconstraints(set)

Returns the number of constraints (equalities + inequalities) in the given set.

source
Reactant.MLIR.IR.nequalities Method
julia
nequalities(set)

Returns the number of equalities in the given set.

source
Reactant.MLIR.IR.next Method
julia
next(block)

Returns the block immediately following the given block in its parent region or nothing if last.

source
Reactant.MLIR.IR.next Method
julia
next(opOperand)

Returns an op operand representing the next use of the value, or nothing if there is no next use.

source
Reactant.MLIR.IR.ninequalities Method
julia
ninequalities(set)

Returns the number of inequalities in the given set.

source
Reactant.MLIR.IR.ninputs Method
julia
ninputs(affineMap)

Returns the number of inputs (dimensions + symbols) of the given affine map.

source
Reactant.MLIR.IR.ninputs Method
julia
ninputs(set)

Returns the number of inputs (dimensions + symbols) in the given set.

source
Reactant.MLIR.IR.ninputs Method
julia
ninputs(type)

Returns the number of input types.

source
Reactant.MLIR.IR.nnestedrefs Method
julia
nnestedrefs(attr)

Returns the number of references nested in the given symbol reference attribute.

source
Reactant.MLIR.IR.noperands Method
julia
noperands(op)

Returns the number of operands of the operation.

source
Reactant.MLIR.IR.nregions Method
julia
nregions(op)

Returns the number of regions attached to the given operation.

source
Reactant.MLIR.IR.nresults Method
julia
nresults(affineMap)

Returns the number of results of the given affine map.

source
Reactant.MLIR.IR.nresults Method
julia
nresults(op)

Returns the number of results of the operation.

source
Reactant.MLIR.IR.nresults Method
julia
nresults(type)

Returns the number of result types.

source
Reactant.MLIR.IR.nsuccessors Method
julia
nsuccessors(op)

Returns the number of successor blocks of the operation.

source
Reactant.MLIR.IR.nsymbols Method
julia
nsymbols(affineMap)

Returns the number of symbols of the given affine map.

source
Reactant.MLIR.IR.nsymbols Method
julia
nsymbols(set)

Returns the number of symbols in the given set.

source
Reactant.MLIR.IR.op_owner Method
julia
op_owner(value)

Returns an operation that produced this value as its result. Asserts if the value is not an op result.

source
Reactant.MLIR.IR.op_res_num Method
julia
op_res_num(value)

Returns the position of the value in the list of results of the operation that produced it.

source
Reactant.MLIR.IR.operand Function
julia
operand(op, i)

Returns i-th operand of the operation.

source
Reactant.MLIR.IR.operand! Method
julia
operand!(op, i, value)

Sets the i-th operand of the operation.

source
Reactant.MLIR.IR.operandindex Method
julia
operandindex(opOperand)

Returns the operand number of an op operand.

source
Reactant.MLIR.IR.owner Method
julia
owner(opOperand)

Returns the owner operation of an op operand.

source
Reactant.MLIR.IR.parent_op Method
julia
parent_op(block)

Returns the closest surrounding operation that contains this block.

source
Reactant.MLIR.IR.parent_op Method
julia
parent_op(op)

Gets the operation that owns this operation, returning null if the operation is not owned.

source
Reactant.MLIR.IR.parent_region Method
julia
parent_region(block)

Returns the region that contains this block.

source
Reactant.MLIR.IR.position Method
julia
position(affineExpr)

Returns the position of the given affine dimension expression, affine symbol expression or ...

source
Reactant.MLIR.IR.push_argument! Method
julia
push_argument!(block, type; location=Location())

Appends an argument of the specified type to the block. Returns the newly added argument.

source
Reactant.MLIR.IR.region Method
julia
region(op, i)

Returns i-th region attached to the operation.

source
Reactant.MLIR.IR.result Function
julia
result(op, i)

Returns i-th result of the operation.

source
Reactant.MLIR.IR.result Function
julia
result(type, i)

Returns the i-th result type.

source
Reactant.MLIR.IR.result Method
julia
result(affineMap, pos)

Returns the result at the given position.

source
Reactant.MLIR.IR.result Method
julia
result(affineMap)

Returns the constant result of the given affine map. The function asserts that the map has a single constant result.

source
Reactant.MLIR.IR.rhs Method
julia
rhs(affineExpr)

Returns the right hand side affine expression of the given affine binary operation expression.

source
Reactant.MLIR.IR.rmattr! Method
julia
rmattr!(op, name)

Removes an attribute by name. Returns false if the attribute was not found and true if removed.

source
Reactant.MLIR.IR.rmfromparent! Method
julia
rmfromparent!(op)

Removes the given operation from its parent block. The operation is not destroyed. The ownership of the operation is transferred to the caller.

source
Reactant.MLIR.IR.rootref Method
julia
rootref(attr)

Returns the string reference to the root referenced symbol. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.IR.run! Method
julia
run!(passManager, module)

Run the provided passManager on the given module.

source
Reactant.MLIR.IR.submap Method
julia
submap(affineMap, positions)

Returns the affine map consisting of the positions subset.

source
Reactant.MLIR.IR.success Method
julia
success()

Creates a logical result representing a success.

source
Reactant.MLIR.IR.successor Method
julia
successor(op, i)

Returns i-th successor of the operation.

source
Reactant.MLIR.IR.terminator Method
julia
terminator(block)

Returns the terminator operation in the block or nothing if no terminator.

source
Reactant.MLIR.IR.type! Method
julia
set_type!(value, type)

Sets the type of the block argument to the given type.

source
Reactant.MLIR.IR.type Method
julia
type(attribute)

Gets the type of this attribute.

source
Reactant.MLIR.IR.type Method
julia
type(value)

Returns the type of the value.

source
Reactant.MLIR.IR.typeid Method
julia
typeid(attribute)

Gets the type id of the attribute.

source
Reactant.MLIR.IR.typeid Method
julia
typeid(op)

Gets the type id of the operation. Returns null if the operation does not have a registered operation description.

source
Reactant.MLIR.IR.typeid Method
julia
typeid(type)

Gets the type ID of the type.

source
Reactant.MLIR.IR.value Method
julia
value(affineExpr)

Returns the value of the given affine constant expression.

source
Reactant.MLIR.IR.verify Method
julia
verify(op)

Verify the operation and return true if it passes, false if it fails.

source
Reactant.MLIR.IR.verifyall Method
julia
verifyall(operation; debug=false)

Prints the operations which could not be verified.

source
Reactant.MLIR.IR.@affinemap Macro
julia
@affinemap (d1, d2, d3, ...)[s1, s2, ...] -> (d0 + d1, ...)

Returns an affine map from the provided Julia expression. On the right hand side are allowed the following function calls:

  • +, *, ÷, %, fld, cld

The rhs can only contains dimensions and symbols present on the left hand side or integer literals.

julia
julia> using Reactant.MLIR: IR

julia> IR.context!(IR.Context()) do
           IR.@affinemap (d1, d2)[s0] -> (d1 + s0, d2 % 10)
       end
MLIR.IR.AffineMap(#= (d0, d1)[s0] -> (d0 + s0, d1 mod 10) =#)
source

MLIR C API

Reactant.MLIR.API.LLVMAttributeRef Type

Used to represent an attributes.

See also

llvm::Attribute

source
Reactant.MLIR.API.LLVMBasicBlockRef Type

Represents a basic block of instructions in LLVM IR.

This models llvm::BasicBlock.

source
Reactant.MLIR.API.LLVMBinaryRef Type

See also

llvm::object::Binary

source
Reactant.MLIR.API.LLVMBool Type

LLVMCSupportTypes Types and Enumerations

@{

source
Reactant.MLIR.API.LLVMBuilderRef Type

Represents an LLVM basic block builder.

This models llvm::IRBuilder.

source
Reactant.MLIR.API.LLVMComdatRef Type

See also

llvm::Comdat

source
Reactant.MLIR.API.LLVMContextRef Type

The top-level container for all LLVM global data. See the LLVMContext class.

source
Reactant.MLIR.API.LLVMDIBuilderRef Type

Represents an LLVM debug info builder.

This models llvm::DIBuilder.

source
Reactant.MLIR.API.LLVMDbgRecordRef Type

See also

llvm::DbgRecord

source
Reactant.MLIR.API.LLVMDiagnosticInfoRef Type

See also

llvm::DiagnosticInfo

source
Reactant.MLIR.API.LLVMJITEventListenerRef Type

See also

llvm::JITEventListener

source
Reactant.MLIR.API.LLVMMemoryBufferRef Type

Used to pass regions of memory through LLVM interfaces.

See also

llvm::MemoryBuffer

source
Reactant.MLIR.API.LLVMMetadataRef Type

Represents an LLVM Metadata.

This models llvm::Metadata.

source
Reactant.MLIR.API.LLVMModuleFlagEntry Type

See also

llvm::Module::ModuleFlagEntry

source
Reactant.MLIR.API.LLVMModuleProviderRef Type

Interface used to provide a module to JIT or interpreter. This is now just a synonym for llvm::Module, but we have to keep using the different type to keep binary compatibility.

source
Reactant.MLIR.API.LLVMModuleRef Type

The top-level container for all other LLVM Intermediate Representation (IR) objects.

See also

llvm::Module

source
Reactant.MLIR.API.LLVMNamedMDNodeRef Type

Represents an LLVM Named Metadata Node.

This models llvm::NamedMDNode.

source
Reactant.MLIR.API.LLVMOperandBundleRef Type

See also

llvm::OperandBundleDef

source
Reactant.MLIR.API.LLVMPassManagerRef Type

See also

llvm::PassManagerBase

source
Reactant.MLIR.API.LLVMTypeRef Type

Each value in the LLVM IR has a type, an LLVMTypeRef.

See also

llvm::Type

source
Reactant.MLIR.API.LLVMUseRef Type

Used to get the users and usees of a Value.

See also

llvm::Use

source
Reactant.MLIR.API.LLVMValueMetadataEntry Type

Represents an entry in a Global Object's metadata attachments.

This models std::pair<unsigned, MDNode *>

source
Reactant.MLIR.API.LLVMValueRef Type

Represents an individual value in LLVM IR.

This models llvm::Value.

source
Reactant.MLIR.API.MlirDiagnostic Type
julia
MlirDiagnostic

An opaque reference to a diagnostic, always owned by the diagnostics engine (context). Must not be stored outside of the diagnostic handler.

source
Reactant.MLIR.API.MlirDiagnosticHandler Type

Diagnostic handler type. Accepts a reference to a diagnostic, which is only guaranteed to be live during the call. The handler is passed the userData that was provided when the handler was attached to a context. If the handler processed the diagnostic completely, it is expected to return success. Otherwise, it is expected to return failure to indicate that other handlers should attempt to process the diagnostic.

source
Reactant.MLIR.API.MlirDiagnosticHandlerID Type

Opaque identifier of a diagnostic handler, useful to detach a handler.

source
Reactant.MLIR.API.MlirDiagnosticSeverity Type
julia
MlirDiagnosticSeverity

Severity of a diagnostic.

source
Reactant.MLIR.API.MlirExternalPassCallbacks Type
julia
MlirExternalPassCallbacks

Structure of external MlirPass callbacks. All callbacks are required to be set unless otherwise specified.

FieldNote
constructThis callback is called from the pass is created. This is analogous to a C++ pass constructor.
destructThis callback is called when the pass is destroyed This is analogous to a C++ pass destructor.
initializeThis callback is optional. The callback is called before the pass is run, allowing a chance to initialize any complex state necessary for running the pass. See Pass::initialize(MLIRContext *).
cloneThis callback is called when the pass is cloned. See Pass::clonePass().
runThis callback is called when the pass is run. See Pass::runOnOperation().
source
Reactant.MLIR.API.MlirLlvmThreadPool Type
julia
MlirLlvmThreadPool

Re-export llvm::ThreadPool so as to avoid including the LLVM C API directly.

source
Reactant.MLIR.API.MlirLogicalResult Type
julia
MlirLogicalResult

A logical result value, essentially a boolean with named states. LLVM convention for using boolean values to designate success or failure of an operation is a moving target, so MLIR opted for an explicit class. Instances of MlirLogicalResult must only be inspected using the associated functions.

source
Reactant.MLIR.API.MlirNamedAttribute Type
julia
MlirNamedAttribute

Named MLIR attribute.

A named attribute is essentially a (name, attribute) pair where the name is a string.

source
Reactant.MLIR.API.MlirOperationState Type
julia
MlirOperationState

An auxiliary class for constructing operations.

This class contains all the information necessary to construct the operation. It owns the MlirRegions it has pointers to and does not own anything else. By default, the state can be constructed from a name and location, the latter being also used to access the context, and has no other components. These components can be added progressively until the operation is constructed. Users are not expected to rely on the internals of this class and should use mlirOperationState* functions instead.

source
Reactant.MLIR.API.MlirOperationWalkCallback Type

Operation walker type. The handler is passed an (opaque) reference to an operation and a pointer to a userData.

source
Reactant.MLIR.API.MlirShapedTypeComponentsCallback Type

These callbacks are used to return multiple shaped type components from functions while transferring ownership to the caller. The first argument is the has rank boolean followed by the the rank and a pointer to the shape (if applicable). The next argument is the element type, then the attribute. The last argument is an opaque pointer forwarded to the callback by the caller. This callback will be called potentially multiple times for each shaped type components.

source
Reactant.MLIR.API.MlirSparseTensorLevelType Type

Dimension level types (and properties) that define sparse tensors. See the documentation in SparseTensorAttrDefs.td for their meaning.

These correspond to SparseTensorEncodingAttr::LevelType in the C++ API. If updating, keep them in sync and update the static_assert in the impl file.

source
Reactant.MLIR.API.MlirStringCallback Type

A callback for returning string references.

This function is called back by the functions that need to return a reference to the portion of the string with the following arguments: - an MlirStringRef representing the current portion of the string - a pointer to user data forwarded from the printing call.

source
Reactant.MLIR.API.MlirStringRef Type
julia
MlirStringRef

A pointer to a sized fragment of a string, not necessarily null-terminated. Does not own the underlying string. This is equivalent to llvm::StringRef.

FieldNote
dataPointer to the first symbol.
lengthLength of the fragment.
source
Reactant.MLIR.API.MlirTypesCallback Type

These callbacks are used to return multiple types from functions while transferring ownership to the caller. The first argument is the number of consecutive elements pointed to by the second argument. The third argument is an opaque pointer forwarded to the callback by the caller.

source
Reactant.MLIR.API.MlirWalkOrder Type
julia
MlirWalkOrder

Traversal order for operation walk.

source
Reactant.MLIR.API.MlirWalkResult Type
julia
MlirWalkResult

Operation walk result.

source
Reactant.MLIR.API.LLVMAddSymbol Method
julia
LLVMAddSymbol(symbolName, symbolValue)

This functions permanently adds the symbol symbolName with the value symbolValue. These symbols are searched before any libraries.

See also

sys::DynamicLibrary::AddSymbol()

source
Reactant.MLIR.API.LLVMLoadLibraryPermanently Method
julia
LLVMLoadLibraryPermanently(Filename)

This function permanently loads the dynamic library at the given path. It is safe to call this function multiple times for the same library.

See also

sys::DynamicLibrary::LoadLibraryPermanently()

source
Reactant.MLIR.API.LLVMParseCommandLineOptions Method
julia
LLVMParseCommandLineOptions(argc, argv, Overview)

This function parses the given arguments using the LLVM command line parser. Note that the only stable thing about this function is its signature; you cannot rely on any particular set of command line arguments being interpreted the same way across LLVM versions.

See also

llvm:🆑:ParseCommandLineOptions()

source
Reactant.MLIR.API.LLVMSearchForAddressOfSymbol Method
julia
LLVMSearchForAddressOfSymbol(symbolName)

This function will search through all previously loaded dynamic libraries for the symbol symbolName. If it is found, the address of that symbol is returned. If not, null is returned.

See also

sys::DynamicLibrary::SearchForAddressOfSymbol()

source
Reactant.MLIR.API.mlirAffineAddExprGet Method
julia
mlirAffineAddExprGet(lhs, rhs)

Creates an affine add expression with 'lhs' and 'rhs'.

source
Reactant.MLIR.API.mlirAffineBinaryOpExprGetLHS Method
julia
mlirAffineBinaryOpExprGetLHS(affineExpr)

Returns the left hand side affine expression of the given affine binary operation expression.

source
Reactant.MLIR.API.mlirAffineBinaryOpExprGetRHS Method
julia
mlirAffineBinaryOpExprGetRHS(affineExpr)

Returns the right hand side affine expression of the given affine binary operation expression.

source
Reactant.MLIR.API.mlirAffineCeilDivExprGet Method
julia
mlirAffineCeilDivExprGet(lhs, rhs)

Creates an affine ceildiv expression with 'lhs' and 'rhs'.

source
Reactant.MLIR.API.mlirAffineConstantExprGet Method
julia
mlirAffineConstantExprGet(ctx, constant)

Creates an affine constant expression with 'constant' in the context.

source
Reactant.MLIR.API.mlirAffineConstantExprGetValue Method
julia
mlirAffineConstantExprGetValue(affineExpr)

Returns the value of the given affine constant expression.

source
Reactant.MLIR.API.mlirAffineDimExprGet Method
julia
mlirAffineDimExprGet(ctx, position)

Creates an affine dimension expression with 'position' in the context.

source
Reactant.MLIR.API.mlirAffineDimExprGetPosition Method
julia
mlirAffineDimExprGetPosition(affineExpr)

Returns the position of the given affine dimension expression.

source
Reactant.MLIR.API.mlirAffineExprCompose Method
julia
mlirAffineExprCompose(affineExpr, affineMap)

Composes the given map with the given expression.

source
Reactant.MLIR.API.mlirAffineExprDump Method
julia
mlirAffineExprDump(affineExpr)

Prints the affine expression to the standard error stream.

source
Reactant.MLIR.API.mlirAffineExprEqual Method
julia
mlirAffineExprEqual(lhs, rhs)

Returns true if the two affine expressions are equal.

source
Reactant.MLIR.API.mlirAffineExprGetContext Method
julia
mlirAffineExprGetContext(affineExpr)

Gets the context that owns the affine expression.

source
Reactant.MLIR.API.mlirAffineExprGetLargestKnownDivisor Method
julia
mlirAffineExprGetLargestKnownDivisor(affineExpr)

Returns the greatest known integral divisor of this affine expression. The result is always positive.

source
Reactant.MLIR.API.mlirAffineExprIsAAdd Method
julia
mlirAffineExprIsAAdd(affineExpr)

Checks whether the given affine expression is an add expression.

source
Reactant.MLIR.API.mlirAffineExprIsABinary Method
julia
mlirAffineExprIsABinary(affineExpr)

Checks whether the given affine expression is binary.

source
Reactant.MLIR.API.mlirAffineExprIsACeilDiv Method
julia
mlirAffineExprIsACeilDiv(affineExpr)

Checks whether the given affine expression is an ceildiv expression.

source
Reactant.MLIR.API.mlirAffineExprIsAConstant Method
julia
mlirAffineExprIsAConstant(affineExpr)

Checks whether the given affine expression is a constant expression.

source
Reactant.MLIR.API.mlirAffineExprIsADim Method
julia
mlirAffineExprIsADim(affineExpr)

Checks whether the given affine expression is a dimension expression.

source
Reactant.MLIR.API.mlirAffineExprIsAFloorDiv Method
julia
mlirAffineExprIsAFloorDiv(affineExpr)

Checks whether the given affine expression is an floordiv expression.

source
Reactant.MLIR.API.mlirAffineExprIsAMod Method
julia
mlirAffineExprIsAMod(affineExpr)

Checks whether the given affine expression is an mod expression.

source
Reactant.MLIR.API.mlirAffineExprIsAMul Method
julia
mlirAffineExprIsAMul(affineExpr)

Checks whether the given affine expression is an mul expression.

source
Reactant.MLIR.API.mlirAffineExprIsASymbol Method
julia
mlirAffineExprIsASymbol(affineExpr)

Checks whether the given affine expression is a symbol expression.

source
Reactant.MLIR.API.mlirAffineExprIsFunctionOfDim Method
julia
mlirAffineExprIsFunctionOfDim(affineExpr, position)

Checks whether the given affine expression involves AffineDimExpr 'position'.

source
Reactant.MLIR.API.mlirAffineExprIsMultipleOf Method
julia
mlirAffineExprIsMultipleOf(affineExpr, factor)

Checks whether the given affine expression is a multiple of 'factor'.

source
Reactant.MLIR.API.mlirAffineExprIsNull Method
julia
mlirAffineExprIsNull(affineExpr)

Returns true if the given affine expression is a null expression. Note constant zero is not a null expression.

source
Reactant.MLIR.API.mlirAffineExprIsPureAffine Method
julia
mlirAffineExprIsPureAffine(affineExpr)

Checks whether the given affine expression is a pure affine expression, i.e. mul, floordiv, ceildic, and mod is only allowed w.r.t constants.

source
Reactant.MLIR.API.mlirAffineExprIsSymbolicOrConstant Method
julia
mlirAffineExprIsSymbolicOrConstant(affineExpr)

Checks whether the given affine expression is made out of only symbols and constants.

source
Reactant.MLIR.API.mlirAffineExprPrint Method
julia
mlirAffineExprPrint(affineExpr, callback, userData)

Prints an affine expression by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirAffineFloorDivExprGet Method
julia
mlirAffineFloorDivExprGet(lhs, rhs)

Creates an affine floordiv expression with 'lhs' and 'rhs'.

source
Reactant.MLIR.API.mlirAffineMapAttrGet Method
julia
mlirAffineMapAttrGet(map)

Creates an affine map attribute wrapping the given map. The attribute belongs to the same context as the affine map.

source
Reactant.MLIR.API.mlirAffineMapAttrGetTypeID Method
julia
mlirAffineMapAttrGetTypeID()

Returns the typeID of an AffineMap attribute.

source
Reactant.MLIR.API.mlirAffineMapAttrGetValue Method
julia
mlirAffineMapAttrGetValue(attr)

Returns the affine map wrapped in the given affine map attribute.

source
Reactant.MLIR.API.mlirAffineMapCompressUnusedSymbols Method
julia
mlirAffineMapCompressUnusedSymbols(affineMaps, size, result, populateResult)

Returns the simplified affine map resulting from dropping the symbols that do not appear in any of the individual maps in affineMaps. Asserts that all maps in affineMaps are normalized to the same number of dims and symbols. Takes a callback populateResult to fill the res container with value m at entry idx. This allows returning without worrying about ownership considerations.

source
Reactant.MLIR.API.mlirAffineMapConstantGet Method
julia
mlirAffineMapConstantGet(ctx, val)

Creates a single constant result affine map in the context. The affine map is owned by the context.

source
Reactant.MLIR.API.mlirAffineMapDump Method
julia
mlirAffineMapDump(affineMap)

Prints the affine map to the standard error stream.

source
Reactant.MLIR.API.mlirAffineMapEmptyGet Method
julia
mlirAffineMapEmptyGet(ctx)

Creates a zero result affine map with no dimensions or symbols in the context. The affine map is owned by the context.

source
Reactant.MLIR.API.mlirAffineMapEqual Method
julia
mlirAffineMapEqual(a1, a2)

Checks if two affine maps are equal.

source
Reactant.MLIR.API.mlirAffineMapGet Method
julia
mlirAffineMapGet(ctx, dimCount, symbolCount, nAffineExprs, affineExprs)

Creates an affine map with results defined by the given list of affine expressions. The map resulting map also has the requested number of input dimensions and symbols, regardless of them being used in the results.

source
Reactant.MLIR.API.mlirAffineMapGetContext Method
julia
mlirAffineMapGetContext(affineMap)

Gets the context that the given affine map was created with

source
Reactant.MLIR.API.mlirAffineMapGetMajorSubMap Method
julia
mlirAffineMapGetMajorSubMap(affineMap, numResults)

Returns the affine map consisting of the most major numResults results. Returns the null AffineMap if the numResults is equal to zero. Returns the affineMap if numResults is greater or equals to number of results of the given affine map.

source
Reactant.MLIR.API.mlirAffineMapGetMinorSubMap Method
julia
mlirAffineMapGetMinorSubMap(affineMap, numResults)

Returns the affine map consisting of the most minor numResults results. Returns the null AffineMap if the numResults is equal to zero. Returns the affineMap if numResults is greater or equals to number of results of the given affine map.

source
Reactant.MLIR.API.mlirAffineMapGetNumDims Method
julia
mlirAffineMapGetNumDims(affineMap)

Returns the number of dimensions of the given affine map.

source
Reactant.MLIR.API.mlirAffineMapGetNumInputs Method
julia
mlirAffineMapGetNumInputs(affineMap)

Returns the number of inputs (dimensions + symbols) of the given affine map.

source
Reactant.MLIR.API.mlirAffineMapGetNumResults Method
julia
mlirAffineMapGetNumResults(affineMap)

Returns the number of results of the given affine map.

source
Reactant.MLIR.API.mlirAffineMapGetNumSymbols Method
julia
mlirAffineMapGetNumSymbols(affineMap)

Returns the number of symbols of the given affine map.

source
Reactant.MLIR.API.mlirAffineMapGetResult Method
julia
mlirAffineMapGetResult(affineMap, pos)

Returns the result at the given position.

source
Reactant.MLIR.API.mlirAffineMapGetSingleConstantResult Method
julia
mlirAffineMapGetSingleConstantResult(affineMap)

Returns the constant result of the given affine map. The function asserts that the map has a single constant result.

source
Reactant.MLIR.API.mlirAffineMapGetSubMap Method
julia
mlirAffineMapGetSubMap(affineMap, size, resultPos)

Returns the affine map consisting of the resultPos subset.

source
Reactant.MLIR.API.mlirAffineMapIsEmpty Method
julia
mlirAffineMapIsEmpty(affineMap)

Checks whether the given affine map is an empty affine map.

source
Reactant.MLIR.API.mlirAffineMapIsIdentity Method
julia
mlirAffineMapIsIdentity(affineMap)

Checks whether the given affine map is an identity affine map. The function asserts that the number of dimensions is greater or equal to the number of results.

source
Reactant.MLIR.API.mlirAffineMapIsMinorIdentity Method
julia
mlirAffineMapIsMinorIdentity(affineMap)

Checks whether the given affine map is a minor identity affine map.

source
Reactant.MLIR.API.mlirAffineMapIsNull Method
julia
mlirAffineMapIsNull(affineMap)

Checks whether an affine map is null.

source
Reactant.MLIR.API.mlirAffineMapIsPermutation Method
julia
mlirAffineMapIsPermutation(affineMap)

Checks whether the given affine map represents a symbol-less permutation map.

source
Reactant.MLIR.API.mlirAffineMapIsProjectedPermutation Method
julia
mlirAffineMapIsProjectedPermutation(affineMap)

Checks whether the given affine map represents a subset of a symbol-less permutation map.

source
Reactant.MLIR.API.mlirAffineMapIsSingleConstant Method
julia
mlirAffineMapIsSingleConstant(affineMap)

Checks whether the given affine map is a single result constant affine map.

source
Reactant.MLIR.API.mlirAffineMapMinorIdentityGet Method
julia
mlirAffineMapMinorIdentityGet(ctx, dims, results)

Creates an identity affine map on the most minor dimensions in the context. The affine map is owned by the context. The function asserts that the number of dimensions is greater or equal to the number of results.

source
Reactant.MLIR.API.mlirAffineMapMultiDimIdentityGet Method
julia
mlirAffineMapMultiDimIdentityGet(ctx, numDims)

Creates an affine map with 'numDims' identity in the context. The affine map is owned by the context.

source
Reactant.MLIR.API.mlirAffineMapPermutationGet Method
julia
mlirAffineMapPermutationGet(ctx, size, permutation)

Creates an affine map with a permutation expression and its size in the context. The permutation expression is a non-empty vector of integers. The elements of the permutation vector must be continuous from 0 and cannot be repeated (i.e. [1,2,0] is a valid permutation. [2,0] or [1,1,2] is an invalid permutation.) The affine map is owned by the context.

source
Reactant.MLIR.API.mlirAffineMapPrint Method
julia
mlirAffineMapPrint(affineMap, callback, userData)

Prints an affine map by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirAffineMapReplace Method
julia
mlirAffineMapReplace(affineMap, expression, replacement, numResultDims, numResultSyms)

Apply AffineExpr::replace(map) to each of the results and return a new new AffineMap with the new results and the specified number of dims and symbols.

source
Reactant.MLIR.API.mlirAffineMapZeroResultGet Method
julia
mlirAffineMapZeroResultGet(ctx, dimCount, symbolCount)

Creates a zero result affine map of the given dimensions and symbols in the context. The affine map is owned by the context.

source
Reactant.MLIR.API.mlirAffineModExprGet Method
julia
mlirAffineModExprGet(lhs, rhs)

Creates an affine mod expression with 'lhs' and 'rhs'.

source
Reactant.MLIR.API.mlirAffineMulExprGet Method
julia
mlirAffineMulExprGet(lhs, rhs)

Creates an affine mul expression with 'lhs' and 'rhs'.

source
Reactant.MLIR.API.mlirAffineSymbolExprGet Method
julia
mlirAffineSymbolExprGet(ctx, position)

Creates an affine symbol expression with 'position' in the context.

source
Reactant.MLIR.API.mlirAffineSymbolExprGetPosition Method
julia
mlirAffineSymbolExprGetPosition(affineExpr)

Returns the position of the given affine symbol expression.

source
Reactant.MLIR.API.mlirAnyQuantizedTypeGet Method
julia
mlirAnyQuantizedTypeGet(flags, storageType, expressedType, storageTypeMin, storageTypeMax)

Creates an instance of AnyQuantizedType with the given parameters in the same context as storageType and returns it. The instance is owned by the context.

source
Reactant.MLIR.API.mlirArrayAttrGet Method
julia
mlirArrayAttrGet(ctx, numElements, elements)

Creates an array element containing the given list of elements in the given context.

source
Reactant.MLIR.API.mlirArrayAttrGetElement Method
julia
mlirArrayAttrGetElement(attr, pos)

Returns pos-th element stored in the given array attribute.

source
Reactant.MLIR.API.mlirArrayAttrGetNumElements Method
julia
mlirArrayAttrGetNumElements(attr)

Returns the number of elements stored in the given array attribute.

source
Reactant.MLIR.API.mlirArrayAttrGetTypeID Method
julia
mlirArrayAttrGetTypeID()

Returns the typeID of an Array attribute.

source
Reactant.MLIR.API.mlirAsmStateCreateForOperation Method
julia
mlirAsmStateCreateForOperation(op, flags)

Creates new AsmState, as with AsmState the IR should not be mutated in-between using this state. Must be freed with a call to mlirAsmStateDestroy().

source
Reactant.MLIR.API.mlirAsmStateCreateForValue Method
julia
mlirAsmStateCreateForValue(value, flags)

Creates new AsmState from value. Must be freed with a call to mlirAsmStateDestroy().

source
Reactant.MLIR.API.mlirAsmStateDestroy Method
julia
mlirAsmStateDestroy(state)

Destroys printing flags created with mlirAsmStateCreate.

source
Reactant.MLIR.API.mlirAttributeDump Method
julia
mlirAttributeDump(attr)

Prints the attribute to the standard error stream.

source
Reactant.MLIR.API.mlirAttributeEqual Method
julia
mlirAttributeEqual(a1, a2)

Checks if two attributes are equal.

source
Reactant.MLIR.API.mlirAttributeGetContext Method
julia
mlirAttributeGetContext(attribute)

Gets the context that an attribute was created with.

source
Reactant.MLIR.API.mlirAttributeGetDialect Method
julia
mlirAttributeGetDialect(attribute)

Gets the dialect of the attribute.

source
Reactant.MLIR.API.mlirAttributeGetNull Method
julia
mlirAttributeGetNull()

Returns an empty attribute.

source
Reactant.MLIR.API.mlirAttributeGetType Method
julia
mlirAttributeGetType(attribute)

Gets the type of this attribute.

source
Reactant.MLIR.API.mlirAttributeGetTypeID Method
julia
mlirAttributeGetTypeID(attribute)

Gets the type id of the attribute.

source
Reactant.MLIR.API.mlirAttributeIsAAffineMap Method
julia
mlirAttributeIsAAffineMap(attr)

Checks whether the given attribute is an affine map attribute.

source
Reactant.MLIR.API.mlirAttributeIsAArray Method
julia
mlirAttributeIsAArray(attr)

Checks whether the given attribute is an array attribute.

source
Reactant.MLIR.API.mlirAttributeIsABool Method
julia
mlirAttributeIsABool(attr)

Checks whether the given attribute is a bool attribute.

source
Reactant.MLIR.API.mlirAttributeIsADenseBoolArray Method
julia
mlirAttributeIsADenseBoolArray(attr)

Checks whether the given attribute is a dense array attribute.

source
Reactant.MLIR.API.mlirAttributeIsADenseElements Method
julia
mlirAttributeIsADenseElements(attr)

Checks whether the given attribute is a dense elements attribute.

source
Reactant.MLIR.API.mlirAttributeIsADictionary Method
julia
mlirAttributeIsADictionary(attr)

Checks whether the given attribute is a dictionary attribute.

source
Reactant.MLIR.API.mlirAttributeIsAElements Method
julia
mlirAttributeIsAElements(attr)

Checks whether the given attribute is an elements attribute.

source
Reactant.MLIR.API.mlirAttributeIsAFlatSymbolRef Method
julia
mlirAttributeIsAFlatSymbolRef(attr)

Checks whether the given attribute is a flat symbol reference attribute.

source
Reactant.MLIR.API.mlirAttributeIsAFloat Method
julia
mlirAttributeIsAFloat(attr)

Checks whether the given attribute is a floating point attribute.

source
Reactant.MLIR.API.mlirAttributeIsAInteger Method
julia
mlirAttributeIsAInteger(attr)

Checks whether the given attribute is an integer attribute.

source
Reactant.MLIR.API.mlirAttributeIsAIntegerSet Method
julia
mlirAttributeIsAIntegerSet(attr)

Checks whether the given attribute is an integer set attribute.

source
Reactant.MLIR.API.mlirAttributeIsAOpaque Method
julia
mlirAttributeIsAOpaque(attr)

Checks whether the given attribute is an opaque attribute.

source
Reactant.MLIR.API.mlirAttributeIsASparseElements Method
julia
mlirAttributeIsASparseElements(attr)

Checks whether the given attribute is a sparse elements attribute.

source
Reactant.MLIR.API.mlirAttributeIsASparseTensorEncodingAttr Method
julia
mlirAttributeIsASparseTensorEncodingAttr(attr)

Checks whether the given attribute is a sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirAttributeIsAString Method
julia
mlirAttributeIsAString(attr)

Checks whether the given attribute is a string attribute.

source
Reactant.MLIR.API.mlirAttributeIsASymbolRef Method
julia
mlirAttributeIsASymbolRef(attr)

Checks whether the given attribute is a symbol reference attribute.

source
Reactant.MLIR.API.mlirAttributeIsAType Method
julia
mlirAttributeIsAType(attr)

Checks whether the given attribute is a type attribute.

source
Reactant.MLIR.API.mlirAttributeIsAUnit Method
julia
mlirAttributeIsAUnit(attr)

Checks whether the given attribute is a unit attribute.

source
Reactant.MLIR.API.mlirAttributeIsNull Method
julia
mlirAttributeIsNull(attr)

Checks whether an attribute is null.

source
Reactant.MLIR.API.mlirAttributeParseGet Method
julia
mlirAttributeParseGet(context, attr)

Parses an attribute. The attribute is owned by the context.

source
Reactant.MLIR.API.mlirAttributePrint Method
julia
mlirAttributePrint(attr, callback, userData)

Prints an attribute by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirBF16TypeGet Method
julia
mlirBF16TypeGet(ctx)

Creates a bf16 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirBFloat16TypeGetTypeID Method
julia
mlirBFloat16TypeGetTypeID()

Returns the typeID of an BFloat16 type.

source
Reactant.MLIR.API.mlirBlockAddArgument Method
julia
mlirBlockAddArgument(block, type, loc)

Appends an argument of the specified type to the block. Returns the newly added argument.

source
Reactant.MLIR.API.mlirBlockAppendOwnedOperation Method
julia
mlirBlockAppendOwnedOperation(block, operation)

Takes an operation owned by the caller and appends it to the block.

source
Reactant.MLIR.API.mlirBlockArgumentGetArgNumber Method
julia
mlirBlockArgumentGetArgNumber(value)

Returns the position of the value in the argument list of its block.

source
Reactant.MLIR.API.mlirBlockArgumentGetOwner Method
julia
mlirBlockArgumentGetOwner(value)

Returns the block in which this value is defined as an argument. Asserts if the value is not a block argument.

source
Reactant.MLIR.API.mlirBlockArgumentSetType Method
julia
mlirBlockArgumentSetType(value, type)

Sets the type of the block argument to the given type.

source
Reactant.MLIR.API.mlirBlockCreate Method
julia
mlirBlockCreate(nArgs, args, locs)

Creates a new empty block with the given argument types and transfers ownership to the caller.

source
Reactant.MLIR.API.mlirBlockDestroy Method
julia
mlirBlockDestroy(block)

Takes a block owned by the caller and destroys it.

source
Reactant.MLIR.API.mlirBlockDetach Method
julia
mlirBlockDetach(block)

Detach a block from the owning region and assume ownership.

source
Reactant.MLIR.API.mlirBlockEqual Method
julia
mlirBlockEqual(block, other)

Checks whether two blocks handles point to the same block. This does not perform deep comparison.

source
Reactant.MLIR.API.mlirBlockEraseArgument Method
julia
mlirBlockEraseArgument(block, index)

Erase the argument at 'index' and remove it from the argument list.

source
Reactant.MLIR.API.mlirBlockGetArgument Method
julia
mlirBlockGetArgument(block, pos)

Returns pos-th argument of the block.

source
Reactant.MLIR.API.mlirBlockGetFirstOperation Method
julia
mlirBlockGetFirstOperation(block)

Returns the first operation in the block.

source
Reactant.MLIR.API.mlirBlockGetNextInRegion Method
julia
mlirBlockGetNextInRegion(block)

Returns the block immediately following the given block in its parent region.

source
Reactant.MLIR.API.mlirBlockGetNumArguments Method
julia
mlirBlockGetNumArguments(block)

Returns the number of arguments of the block.

source
Reactant.MLIR.API.mlirBlockGetParentOperation Method
julia
mlirBlockGetParentOperation(arg1)

Returns the closest surrounding operation that contains this block.

source
Reactant.MLIR.API.mlirBlockGetParentRegion Method
julia
mlirBlockGetParentRegion(block)

Returns the region that contains this block.

source
Reactant.MLIR.API.mlirBlockGetTerminator Method
julia
mlirBlockGetTerminator(block)

Returns the terminator operation in the block or null if no terminator.

source
Reactant.MLIR.API.mlirBlockInsertArgument Method
julia
mlirBlockInsertArgument(block, pos, type, loc)

Inserts an argument of the specified type at a specified index to the block. Returns the newly added argument.

source
Reactant.MLIR.API.mlirBlockInsertOwnedOperation Method
julia
mlirBlockInsertOwnedOperation(block, pos, operation)

Takes an operation owned by the caller and inserts it as pos to the block. This is an expensive operation that scans the block linearly, prefer insertBefore/After instead.

source
Reactant.MLIR.API.mlirBlockInsertOwnedOperationAfter Method
julia
mlirBlockInsertOwnedOperationAfter(block, reference, operation)

Takes an operation owned by the caller and inserts it after the (non-owned) reference operation in the given block. If the reference is null, prepends the operation. Otherwise, the reference must belong to the block.

source
Reactant.MLIR.API.mlirBlockInsertOwnedOperationBefore Method
julia
mlirBlockInsertOwnedOperationBefore(block, reference, operation)

Takes an operation owned by the caller and inserts it before the (non-owned) reference operation in the given block. If the reference is null, appends the operation. Otherwise, the reference must belong to the block.

source
Reactant.MLIR.API.mlirBlockIsNull Method
julia
mlirBlockIsNull(block)

Checks whether a block is null.

source
Reactant.MLIR.API.mlirBlockPrint Method
julia
mlirBlockPrint(block, callback, userData)

Prints a block by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirBoolAttrGet Method
julia
mlirBoolAttrGet(ctx, value)

Creates a bool attribute in the given context with the given value.

source
Reactant.MLIR.API.mlirBoolAttrGetValue Method
julia
mlirBoolAttrGetValue(attr)

Returns the value stored in the given bool attribute.

source
Reactant.MLIR.API.mlirBytecodeWriterConfigCreate Method
julia
mlirBytecodeWriterConfigCreate()

Creates new printing flags with defaults, intended for customization. Must be freed with a call to mlirBytecodeWriterConfigDestroy().

source
Reactant.MLIR.API.mlirBytecodeWriterConfigDesiredEmitVersion Method
julia
mlirBytecodeWriterConfigDesiredEmitVersion(flags, version)

Sets the version to emit in the writer config.

source
Reactant.MLIR.API.mlirBytecodeWriterConfigDestroy Method
julia
mlirBytecodeWriterConfigDestroy(config)

Destroys printing flags created with mlirBytecodeWriterConfigCreate.

source
Reactant.MLIR.API.mlirCalibratedQuantizedTypeGet Method
julia
mlirCalibratedQuantizedTypeGet(expressedType, min, max)

Creates an instance of CalibratedQuantizedType with the given parameters in the same context as expressedType and returns it. The instance is owned by the context.

source
Reactant.MLIR.API.mlirCalibratedQuantizedTypeGetMax Method
julia
mlirCalibratedQuantizedTypeGetMax(type)

Returns the max value of the given calibrated quantized type.

source
Reactant.MLIR.API.mlirCalibratedQuantizedTypeGetMin Method
julia
mlirCalibratedQuantizedTypeGetMin(type)

Returns the min value of the given calibrated quantized type.

source
Reactant.MLIR.API.mlirComplexTypeGet Method
julia
mlirComplexTypeGet(elementType)

Creates a complex type with the given element type in the same context as the element type. The type is owned by the context.

source
Reactant.MLIR.API.mlirComplexTypeGetElementType Method
julia
mlirComplexTypeGetElementType(type)

Returns the element type of the given complex type.

source
Reactant.MLIR.API.mlirComplexTypeGetTypeID Method
julia
mlirComplexTypeGetTypeID()

Returns the typeID of an Complex type.

source
Reactant.MLIR.API.mlirContextAppendDialectRegistry Method
julia
mlirContextAppendDialectRegistry(ctx, registry)

Append the contents of the given dialect registry to the registry associated with the context.

source
Reactant.MLIR.API.mlirContextAttachDiagnosticHandler Method
julia
mlirContextAttachDiagnosticHandler(context, handler, userData, deleteUserData)

Attaches the diagnostic handler to the context. Handlers are invoked in the reverse order of attachment until one of them processes the diagnostic completely. When a handler is invoked it is passed the userData that was provided when it was attached. If non-NULL, deleteUserData is called once the system no longer needs to call the handler (for instance after the handler is detached or the context is destroyed). Returns an identifier that can be used to detach the handler.

source
Reactant.MLIR.API.mlirContextCreate Method
julia
mlirContextCreate()

Creates an MLIR context and transfers its ownership to the caller. This sets the default multithreading option (enabled).

source
Reactant.MLIR.API.mlirContextCreateWithRegistry Method
julia
mlirContextCreateWithRegistry(registry, threadingEnabled)

Creates an MLIR context, setting the multithreading setting explicitly and pre-loading the dialects from the provided DialectRegistry.

source
Reactant.MLIR.API.mlirContextCreateWithThreading Method
julia
mlirContextCreateWithThreading(threadingEnabled)

Creates an MLIR context with an explicit setting of the multithreading setting and transfers its ownership to the caller.

source
Reactant.MLIR.API.mlirContextDestroy Method
julia
mlirContextDestroy(context)

Takes an MLIR context owned by the caller and destroys it.

source
Reactant.MLIR.API.mlirContextDetachDiagnosticHandler Method
julia
mlirContextDetachDiagnosticHandler(context, id)

Detaches an attached diagnostic handler from the context given its identifier.

source
Reactant.MLIR.API.mlirContextEnableMultithreading Method
julia
mlirContextEnableMultithreading(context, enable)

Set threading mode (must be set to false to mlir-print-ir-after-all).

source
Reactant.MLIR.API.mlirContextEqual Method
julia
mlirContextEqual(ctx1, ctx2)

Checks if two contexts are equal.

source
Reactant.MLIR.API.mlirContextGetAllowUnregisteredDialects Method
julia
mlirContextGetAllowUnregisteredDialects(context)

Returns whether the context allows unregistered dialects.

source
Reactant.MLIR.API.mlirContextGetNumLoadedDialects Method
julia
mlirContextGetNumLoadedDialects(context)

Returns the number of dialects loaded by the context.

source
Reactant.MLIR.API.mlirContextGetNumRegisteredDialects Method
julia
mlirContextGetNumRegisteredDialects(context)

Returns the number of dialects registered with the given context. A registered dialect will be loaded if needed by the parser.

source
Reactant.MLIR.API.mlirContextGetOrLoadDialect Method
julia
mlirContextGetOrLoadDialect(context, name)

Gets the dialect instance owned by the given context using the dialect namespace to identify it, loads (i.e., constructs the instance of) the dialect if necessary. If the dialect is not registered with the context, returns null. Use mlirContextLoad<Name>Dialect to load an unregistered dialect.

source
Reactant.MLIR.API.mlirContextIsNull Method
julia
mlirContextIsNull(context)

Checks whether a context is null.

source
Reactant.MLIR.API.mlirContextIsRegisteredOperation Method
julia
mlirContextIsRegisteredOperation(context, name)

Returns whether the given fully-qualified operation (i.e. 'dialect.operation') is registered with the context. This will return true if the dialect is loaded and the operation is registered within the dialect.

source
Reactant.MLIR.API.mlirContextLoadAllAvailableDialects Method
julia
mlirContextLoadAllAvailableDialects(context)

Eagerly loads all available dialects registered with a context, making them available for use for IR construction.

source
Reactant.MLIR.API.mlirContextSetAllowUnregisteredDialects Method
julia
mlirContextSetAllowUnregisteredDialects(context, allow)

Sets whether unregistered dialects are allowed in this context.

source
Reactant.MLIR.API.mlirContextSetThreadPool Method
julia
mlirContextSetThreadPool(context, threadPool)

Sets the thread pool of the context explicitly, enabling multithreading in the process. This API should be used to avoid re-creating thread pools in long-running applications that perform multiple compilations, see the C++ documentation for MLIRContext for details.

source
Reactant.MLIR.API.mlirCreateExternalPass Method
julia
mlirCreateExternalPass(passID, name, argument, description, opName, nDependentDialects, dependentDialects, callbacks, userData)

Creates an external MlirPass that calls the supplied callbacks using the supplied userData. If opName is empty, the pass is a generic operation pass. Otherwise it is an operation pass specific to the specified pass name.

source
Reactant.MLIR.API.mlirDenseArrayGetNumElements Method
julia
mlirDenseArrayGetNumElements(attr)

Get the size of a dense array.

source
Reactant.MLIR.API.mlirDenseBoolArrayGet Method
julia
mlirDenseBoolArrayGet(ctx, size, values)

Create a dense array attribute with the given elements.

source
Reactant.MLIR.API.mlirDenseBoolArrayGetElement Method
julia
mlirDenseBoolArrayGetElement(attr, pos)

Get an element of a dense array.

source
Reactant.MLIR.API.mlirDenseBoolResourceElementsAttrGetValue Method
julia
mlirDenseBoolResourceElementsAttrGetValue(attr, pos)

Returns the pos-th value (flat contiguous indexing) of a specific type contained by the given dense resource elements attribute.

source
Reactant.MLIR.API.mlirDenseElementsAttrBoolGet Method
julia
mlirDenseElementsAttrBoolGet(shapedType, numElements, elements)

Creates a dense elements attribute with the given shaped type from elements of a specific type. Expects the element type of the shaped type to match the data element type.

source
Reactant.MLIR.API.mlirDenseElementsAttrGet Method
julia
mlirDenseElementsAttrGet(shapedType, numElements, elements)

Creates a dense elements attribute with the given Shaped type and elements in the same context as the type.

source
Reactant.MLIR.API.mlirDenseElementsAttrGetBoolValue Method
julia
mlirDenseElementsAttrGetBoolValue(attr, pos)

Returns the pos-th value (flat contiguous indexing) of a specific type contained by the given dense elements attribute.

source
Reactant.MLIR.API.mlirDenseElementsAttrGetRawData Method
julia
mlirDenseElementsAttrGetRawData(attr)

Returns the raw data of the given dense elements attribute.

source
Reactant.MLIR.API.mlirDenseElementsAttrGetSplatValue Method
julia
mlirDenseElementsAttrGetSplatValue(attr)

Returns the single replicated value (splat) of a specific type contained by the given dense elements attribute.

source
Reactant.MLIR.API.mlirDenseElementsAttrIsSplat Method
julia
mlirDenseElementsAttrIsSplat(attr)

Checks whether the given dense elements attribute contains a single replicated value (splat).

source
Reactant.MLIR.API.mlirDenseElementsAttrRawBufferGet Method
julia
mlirDenseElementsAttrRawBufferGet(shapedType, rawBufferSize, rawBuffer)

Creates a dense elements attribute with the given Shaped type and elements populated from a packed, row-major opaque buffer of contents.

The format of the raw buffer is a densely packed array of values that can be bitcast to the storage format of the element type specified. Types that are not byte aligned will be: - For bitwidth > 1: Rounded up to the next byte. - For bitwidth = 1: Packed into 8bit bytes with bits corresponding to the linear order of the shape type from MSB to LSB, padded to on the right.

A raw buffer of a single element (or for 1-bit, a byte of value 0 or 255) will be interpreted as a splat. User code should be prepared for additional, conformant patterns to be identified as splats in the future.

source
Reactant.MLIR.API.mlirDenseElementsAttrReshapeGet Method
julia
mlirDenseElementsAttrReshapeGet(attr, shapedType)

Creates a dense elements attribute that has the same data as the given dense elements attribute and a different shaped type. The new type must have the same total number of elements.

source
Reactant.MLIR.API.mlirDenseElementsAttrSplatGet Method
julia
mlirDenseElementsAttrSplatGet(shapedType, element)

Creates a dense elements attribute with the given Shaped type containing a single replicated element (splat).

source
Reactant.MLIR.API.mlirDenseElementsAttrStringGet Method
julia
mlirDenseElementsAttrStringGet(shapedType, numElements, strs)

Creates a dense elements attribute with the given shaped type from string elements.

source
Reactant.MLIR.API.mlirDenseIntOrFPElementsAttrGetTypeID Method
julia
mlirDenseIntOrFPElementsAttrGetTypeID()

Returns the typeID of an DenseIntOrFPElements attribute.

source
Reactant.MLIR.API.mlirDiagnosticGetLocation Method
julia
mlirDiagnosticGetLocation(diagnostic)

Returns the location at which the diagnostic is reported.

source
Reactant.MLIR.API.mlirDiagnosticGetNote Method
julia
mlirDiagnosticGetNote(diagnostic, pos)

Returns pos-th note attached to the diagnostic. Expects pos to be a valid zero-based index into the list of notes.

source
Reactant.MLIR.API.mlirDiagnosticGetNumNotes Method
julia
mlirDiagnosticGetNumNotes(diagnostic)

Returns the number of notes attached to the diagnostic.

source
Reactant.MLIR.API.mlirDiagnosticGetSeverity Method
julia
mlirDiagnosticGetSeverity(diagnostic)

Returns the severity of the diagnostic.

source
Reactant.MLIR.API.mlirDiagnosticPrint Method
julia
mlirDiagnosticPrint(diagnostic, callback, userData)

Prints a diagnostic using the provided callback.

source
Reactant.MLIR.API.mlirDialectEqual Method
julia
mlirDialectEqual(dialect1, dialect2)

Checks if two dialects that belong to the same context are equal. Dialects from different contexts will not compare equal.

source
Reactant.MLIR.API.mlirDialectGetContext Method
julia
mlirDialectGetContext(dialect)

Returns the context that owns the dialect.

source
Reactant.MLIR.API.mlirDialectGetNamespace Method
julia
mlirDialectGetNamespace(dialect)

Returns the namespace of the given dialect.

source
Reactant.MLIR.API.mlirDialectHandleGetNamespace Method
julia
mlirDialectHandleGetNamespace(arg1)

Returns the namespace associated with the provided dialect handle.

source
Reactant.MLIR.API.mlirDialectHandleInsertDialect Method
julia
mlirDialectHandleInsertDialect(arg1, arg2)

Inserts the dialect associated with the provided dialect handle into the provided dialect registry

source
Reactant.MLIR.API.mlirDialectHandleLoadDialect Method
julia
mlirDialectHandleLoadDialect(arg1, arg2)

Loads the dialect associated with the provided dialect handle.

source
Reactant.MLIR.API.mlirDialectHandleRegisterDialect Method
julia
mlirDialectHandleRegisterDialect(arg1, arg2)

Registers the dialect associated with the provided dialect handle.

source
Reactant.MLIR.API.mlirDialectIsNull Method
julia
mlirDialectIsNull(dialect)

Checks if the dialect is null.

source
Reactant.MLIR.API.mlirDialectRegistryCreate Method
julia
mlirDialectRegistryCreate()

Creates a dialect registry and transfers its ownership to the caller.

source
Reactant.MLIR.API.mlirDialectRegistryDestroy Method
julia
mlirDialectRegistryDestroy(registry)

Takes a dialect registry owned by the caller and destroys it.

source
Reactant.MLIR.API.mlirDialectRegistryIsNull Method
julia
mlirDialectRegistryIsNull(registry)

Checks if the dialect registry is null.

source
Reactant.MLIR.API.mlirDictionaryAttrGet Method
julia
mlirDictionaryAttrGet(ctx, numElements, elements)

Creates a dictionary attribute containing the given list of elements in the provided context.

source
Reactant.MLIR.API.mlirDictionaryAttrGetElement Method
julia
mlirDictionaryAttrGetElement(attr, pos)

Returns pos-th element of the given dictionary attribute.

source
Reactant.MLIR.API.mlirDictionaryAttrGetElementByName Method
julia
mlirDictionaryAttrGetElementByName(attr, name)

Returns the dictionary attribute element with the given name or NULL if the given name does not exist in the dictionary.

source
Reactant.MLIR.API.mlirDictionaryAttrGetNumElements Method
julia
mlirDictionaryAttrGetNumElements(attr)

Returns the number of attributes contained in a dictionary attribute.

source
Reactant.MLIR.API.mlirDictionaryAttrGetTypeID Method
julia
mlirDictionaryAttrGetTypeID()

Returns the typeID of a Dictionary attribute.

source
Reactant.MLIR.API.mlirDisctinctAttrCreate Method
julia
mlirDisctinctAttrCreate(referencedAttr)

Creates a DisctinctAttr with the referenced attribute.

source
Reactant.MLIR.API.mlirElementsAttrGetNumElements Method
julia
mlirElementsAttrGetNumElements(attr)

Gets the total number of elements in the given elements attribute. In order to iterate over the attribute, obtain its type, which must be a statically shaped type and use its sizes to build a multi-dimensional index.

source
Reactant.MLIR.API.mlirElementsAttrGetValue Method
julia
mlirElementsAttrGetValue(attr, rank, idxs)

Returns the element at the given rank-dimensional index.

source
Reactant.MLIR.API.mlirElementsAttrIsValidIndex Method
julia
mlirElementsAttrIsValidIndex(attr, rank, idxs)

Checks whether the given rank-dimensional index is valid in the given elements attribute.

source
Reactant.MLIR.API.mlirEmitError Method
julia
mlirEmitError(location, message)

Emits an error at the given location through the diagnostics engine. Used for testing purposes.

source
Reactant.MLIR.API.mlirEnableGlobalDebug Method
julia
mlirEnableGlobalDebug(enable)

Sets the global debugging flag.

source
Reactant.MLIR.API.mlirExecutionEngineCreate Method
julia
mlirExecutionEngineCreate(op, optLevel, numPaths, sharedLibPaths, enableObjectDump)

Creates an ExecutionEngine for the provided ModuleOp. The ModuleOp is expected to be "translatable" to LLVM IR (only contains operations in dialects that implement the LLVMTranslationDialectInterface). The module ownership stays with the client and can be destroyed as soon as the call returns. optLevel is the optimization level to be used for transformation and code generation. LLVM passes at optLevel are run before code generation. The number and array of paths corresponding to shared libraries that will be loaded are specified via numPaths and sharedLibPaths respectively. TODO: figure out other options.

source
Reactant.MLIR.API.mlirExecutionEngineDestroy Method
julia
mlirExecutionEngineDestroy(jit)

Destroy an ExecutionEngine instance.

source
Reactant.MLIR.API.mlirExecutionEngineDumpToObjectFile Method
julia
mlirExecutionEngineDumpToObjectFile(jit, fileName)

Dump as an object in fileName.

source
Reactant.MLIR.API.mlirExecutionEngineInvokePacked Method
julia
mlirExecutionEngineInvokePacked(jit, name, arguments)

Invoke a native function in the execution engine by name with the arguments and result of the invoked function passed as an array of pointers. The function must have been tagged with the llvm.emit\_c\_interface attribute. Returns a failure if the execution fails for any reason (the function name can't be resolved for instance).

source
Reactant.MLIR.API.mlirExecutionEngineIsNull Method
julia
mlirExecutionEngineIsNull(jit)

Checks whether an execution engine is null.

source
Reactant.MLIR.API.mlirExecutionEngineLookup Method
julia
mlirExecutionEngineLookup(jit, name)

Lookup a native function in the execution engine by name, returns nullptr if the name can't be looked-up.

source
Reactant.MLIR.API.mlirExecutionEngineLookupPacked Method
julia
mlirExecutionEngineLookupPacked(jit, name)

Lookup the wrapper of the native function in the execution engine with the given name, returns nullptr if the function can't be looked-up.

source
Reactant.MLIR.API.mlirExecutionEngineRegisterSymbol Method
julia
mlirExecutionEngineRegisterSymbol(jit, name, sym)

Register a symbol with the jit: this symbol will be accessible to the jitted code.

source
Reactant.MLIR.API.mlirExternalPassSignalFailure Method
julia
mlirExternalPassSignalFailure(pass)

This signals that the pass has failed. This is only valid to call during the run callback of MlirExternalPassCallbacks. See Pass::signalPassFailure().

source
Reactant.MLIR.API.mlirF16TypeGet Method
julia
mlirF16TypeGet(ctx)

Creates an f16 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirF32TypeGet Method
julia
mlirF32TypeGet(ctx)

Creates an f32 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirF64TypeGet Method
julia
mlirF64TypeGet(ctx)

Creates a f64 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFlatSymbolRefAttrGet Method
julia
mlirFlatSymbolRefAttrGet(ctx, symbol)

Creates a flat symbol reference attribute in the given context referencing a symbol identified by the given string.

source
Reactant.MLIR.API.mlirFlatSymbolRefAttrGetValue Method
julia
mlirFlatSymbolRefAttrGetValue(attr)

Returns the referenced symbol as a string reference. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.API.mlirFloat16TypeGetTypeID Method
julia
mlirFloat16TypeGetTypeID()

Returns the typeID of an Float16 type.

source
Reactant.MLIR.API.mlirFloat32TypeGetTypeID Method
julia
mlirFloat32TypeGetTypeID()

Returns the typeID of an Float32 type.

source
Reactant.MLIR.API.mlirFloat4E2M1FNTypeGet Method
julia
mlirFloat4E2M1FNTypeGet(ctx)

Creates an f4E2M1FN type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat4E2M1FNTypeGetTypeID Method
julia
mlirFloat4E2M1FNTypeGetTypeID()

Returns the typeID of an Float4E2M1FN type.

source
Reactant.MLIR.API.mlirFloat64TypeGetTypeID Method
julia
mlirFloat64TypeGetTypeID()

Returns the typeID of an Float64 type.

source
Reactant.MLIR.API.mlirFloat6E2M3FNTypeGet Method
julia
mlirFloat6E2M3FNTypeGet(ctx)

Creates an f6E2M3FN type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat6E2M3FNTypeGetTypeID Method
julia
mlirFloat6E2M3FNTypeGetTypeID()

Returns the typeID of an Float6E2M3FN type.

source
Reactant.MLIR.API.mlirFloat6E3M2FNTypeGet Method
julia
mlirFloat6E3M2FNTypeGet(ctx)

Creates an f6E3M2FN type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat6E3M2FNTypeGetTypeID Method
julia
mlirFloat6E3M2FNTypeGetTypeID()

Returns the typeID of an Float6E3M2FN type.

source
Reactant.MLIR.API.mlirFloat8E3M4TypeGet Method
julia
mlirFloat8E3M4TypeGet(ctx)

Creates an f8E3M4 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E3M4TypeGetTypeID Method
julia
mlirFloat8E3M4TypeGetTypeID()

Returns the typeID of an Float8E3M4 type.

source
Reactant.MLIR.API.mlirFloat8E4M3B11FNUZTypeGet Method
julia
mlirFloat8E4M3B11FNUZTypeGet(ctx)

Creates an f8E4M3B11FNUZ type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E4M3B11FNUZTypeGetTypeID Method
julia
mlirFloat8E4M3B11FNUZTypeGetTypeID()

Returns the typeID of an Float8E4M3B11FNUZ type.

source
Reactant.MLIR.API.mlirFloat8E4M3FNTypeGet Method
julia
mlirFloat8E4M3FNTypeGet(ctx)

Creates an f8E4M3FN type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E4M3FNTypeGetTypeID Method
julia
mlirFloat8E4M3FNTypeGetTypeID()

Returns the typeID of an Float8E4M3FN type.

source
Reactant.MLIR.API.mlirFloat8E4M3FNUZTypeGet Method
julia
mlirFloat8E4M3FNUZTypeGet(ctx)

Creates an f8E4M3FNUZ type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E4M3FNUZTypeGetTypeID Method
julia
mlirFloat8E4M3FNUZTypeGetTypeID()

Returns the typeID of an Float8E4M3FNUZ type.

source
Reactant.MLIR.API.mlirFloat8E4M3TypeGet Method
julia
mlirFloat8E4M3TypeGet(ctx)

Creates an f8E4M3 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E4M3TypeGetTypeID Method
julia
mlirFloat8E4M3TypeGetTypeID()

Returns the typeID of an Float8E4M3 type.

source
Reactant.MLIR.API.mlirFloat8E5M2FNUZTypeGet Method
julia
mlirFloat8E5M2FNUZTypeGet(ctx)

Creates an f8E5M2FNUZ type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E5M2FNUZTypeGetTypeID Method
julia
mlirFloat8E5M2FNUZTypeGetTypeID()

Returns the typeID of an Float8E5M2FNUZ type.

source
Reactant.MLIR.API.mlirFloat8E5M2TypeGet Method
julia
mlirFloat8E5M2TypeGet(ctx)

Creates an f8E5M2 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E5M2TypeGetTypeID Method
julia
mlirFloat8E5M2TypeGetTypeID()

Returns the typeID of an Float8E5M2 type.

source
Reactant.MLIR.API.mlirFloat8E8M0FNUTypeGet Method
julia
mlirFloat8E8M0FNUTypeGet(ctx)

Creates an f8E8M0FNU type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirFloat8E8M0FNUTypeGetTypeID Method
julia
mlirFloat8E8M0FNUTypeGetTypeID()

Returns the typeID of an Float8E8M0FNU type.

source
Reactant.MLIR.API.mlirFloatAttrDoubleGet Method
julia
mlirFloatAttrDoubleGet(ctx, type, value)

Creates a floating point attribute in the given context with the given double value and double-precision FP semantics.

source
Reactant.MLIR.API.mlirFloatAttrDoubleGetChecked Method
julia
mlirFloatAttrDoubleGetChecked(loc, type, value)

Same as "mlirFloatAttrDoubleGet", but if the type is not valid for a construction of a FloatAttr, returns a null MlirAttribute.

source
Reactant.MLIR.API.mlirFloatAttrGetTypeID Method
julia
mlirFloatAttrGetTypeID()

Returns the typeID of a Float attribute.

source
Reactant.MLIR.API.mlirFloatAttrGetValueDouble Method
julia
mlirFloatAttrGetValueDouble(attr)

Returns the value stored in the given floating point attribute, interpreting the value as double.

source
Reactant.MLIR.API.mlirFloatTF32TypeGetTypeID Method
julia
mlirFloatTF32TypeGetTypeID()

Returns the typeID of a TF32 type.

source
Reactant.MLIR.API.mlirFloatTypeGetWidth Method
julia
mlirFloatTypeGetWidth(type)

Returns the bitwidth of a floating-point type.

source
Reactant.MLIR.API.mlirFreezeRewritePattern Method
julia
mlirFreezeRewritePattern(op)

FrozenRewritePatternSet API

source
Reactant.MLIR.API.mlirFuncSetArgAttr Method
julia
mlirFuncSetArgAttr(op, pos, name, attr)

Sets the argument attribute 'name' of an argument at index 'pos'. Asserts that the operation is a FuncOp.

source
Reactant.MLIR.API.mlirFunctionTypeGet Method
julia
mlirFunctionTypeGet(ctx, numInputs, inputs, numResults, results)

Creates a function type, mapping a list of input types to result types.

source
Reactant.MLIR.API.mlirFunctionTypeGetInput Method
julia
mlirFunctionTypeGetInput(type, pos)

Returns the pos-th input type.

source
Reactant.MLIR.API.mlirFunctionTypeGetNumInputs Method
julia
mlirFunctionTypeGetNumInputs(type)

Returns the number of input types.

source
Reactant.MLIR.API.mlirFunctionTypeGetNumResults Method
julia
mlirFunctionTypeGetNumResults(type)

Returns the number of result types.

source
Reactant.MLIR.API.mlirFunctionTypeGetResult Method
julia
mlirFunctionTypeGetResult(type, pos)

Returns the pos-th result type.

source
Reactant.MLIR.API.mlirFunctionTypeGetTypeID Method
julia
mlirFunctionTypeGetTypeID()

Returns the typeID of an Function type.

source
Reactant.MLIR.API.mlirIRRewriterCreate Method
julia
mlirIRRewriterCreate(context)

Create an IRRewriter and transfer ownership to the caller.

source
Reactant.MLIR.API.mlirIRRewriterCreateFromOp Method
julia
mlirIRRewriterCreateFromOp(op)

Create an IRRewriter and transfer ownership to the caller. Additionally set the insertion point before the operation.

source
Reactant.MLIR.API.mlirIRRewriterDestroy Method
julia
mlirIRRewriterDestroy(rewriter)

Takes an IRRewriter owned by the caller and destroys it. It is the responsibility of the user to only pass an IRRewriter class.

source
Reactant.MLIR.API.mlirIdentifierEqual Method
julia
mlirIdentifierEqual(ident, other)

Checks whether two identifiers are the same.

source
Reactant.MLIR.API.mlirIdentifierGet Method
julia
mlirIdentifierGet(context, str)

Gets an identifier with the given string value.

source
Reactant.MLIR.API.mlirIdentifierGetContext Method
julia
mlirIdentifierGetContext(arg1)

Returns the context associated with this identifier

source
Reactant.MLIR.API.mlirIdentifierStr Method
julia
mlirIdentifierStr(ident)

Gets the string value of the identifier.

source
Reactant.MLIR.API.mlirIndexTypeGet Method
julia
mlirIndexTypeGet(ctx)

Creates an index type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirIndexTypeGetTypeID Method
julia
mlirIndexTypeGetTypeID()

Returns the typeID of an Index type.

source
Reactant.MLIR.API.mlirInferShapedTypeOpInterfaceInferReturnTypes Method
julia
mlirInferShapedTypeOpInterfaceInferReturnTypes(opName, context, location, nOperands, operands, attributes, properties, nRegions, regions, callback, userData)

Infers the return shaped type components of the operation. Calls callback with the types of inferred arguments on success. Returns failure otherwise.

source
Reactant.MLIR.API.mlirInferShapedTypeOpInterfaceTypeID Method
julia
mlirInferShapedTypeOpInterfaceTypeID()

Returns the interface TypeID of the InferShapedTypeOpInterface.

source
Reactant.MLIR.API.mlirInferTypeOpInterfaceInferReturnTypes Method
julia
mlirInferTypeOpInterfaceInferReturnTypes(opName, context, location, nOperands, operands, attributes, properties, nRegions, regions, callback, userData)

Infers the return types of the operation identified by its canonical given the arguments that will be supplied to its generic builder. Calls callback with the types of inferred arguments, potentially several times, on success. Returns failure otherwise.

source
Reactant.MLIR.API.mlirInferTypeOpInterfaceTypeID Method
julia
mlirInferTypeOpInterfaceTypeID()

Returns the interface TypeID of the InferTypeOpInterface.

source
Reactant.MLIR.API.mlirIntegerAttrGet Method
julia
mlirIntegerAttrGet(type, value)

Creates an integer attribute of the given type with the given integer value.

source
Reactant.MLIR.API.mlirIntegerAttrGetTypeID Method
julia
mlirIntegerAttrGetTypeID()

Returns the typeID of an Integer attribute.

source
Reactant.MLIR.API.mlirIntegerAttrGetValueInt Method
julia
mlirIntegerAttrGetValueInt(attr)

Returns the value stored in the given integer attribute, assuming the value is of signless type and fits into a signed 64-bit integer.

source
Reactant.MLIR.API.mlirIntegerAttrGetValueSInt Method
julia
mlirIntegerAttrGetValueSInt(attr)

Returns the value stored in the given integer attribute, assuming the value is of signed type and fits into a signed 64-bit integer.

source
Reactant.MLIR.API.mlirIntegerAttrGetValueUInt Method
julia
mlirIntegerAttrGetValueUInt(attr)

Returns the value stored in the given integer attribute, assuming the value is of unsigned type and fits into an unsigned 64-bit integer.

source
Reactant.MLIR.API.mlirIntegerSetAttrGet Method
julia
mlirIntegerSetAttrGet(set)

Creates an integer set attribute wrapping the given set. The attribute belongs to the same context as the integer set.

source
Reactant.MLIR.API.mlirIntegerSetAttrGetTypeID Method
julia
mlirIntegerSetAttrGetTypeID()

Returns the typeID of an IntegerSet attribute.

source
Reactant.MLIR.API.mlirIntegerSetAttrGetValue Method
julia
mlirIntegerSetAttrGetValue(attr)

Returns the integer set wrapped in the given integer set attribute.

source
Reactant.MLIR.API.mlirIntegerSetDump Method
julia
mlirIntegerSetDump(set)

Prints an integer set to the standard error stream.

source
Reactant.MLIR.API.mlirIntegerSetEmptyGet Method
julia
mlirIntegerSetEmptyGet(context, numDims, numSymbols)

Gets or creates a new canonically empty integer set with the give number of dimensions and symbols in the given context.

source
Reactant.MLIR.API.mlirIntegerSetEqual Method
julia
mlirIntegerSetEqual(s1, s2)

Checks if two integer set objects are equal. This is a "shallow" comparison of two objects. Only the sets with some small number of constraints are uniqued and compare equal here. Set objects that represent the same integer set with different constraints may be considered non-equal by this check. Set difference followed by an (expensive) emptiness check should be used to check equivalence of the underlying integer sets.

source
Reactant.MLIR.API.mlirIntegerSetGet Method
julia
mlirIntegerSetGet(context, numDims, numSymbols, numConstraints, constraints, eqFlags)

Gets or creates a new integer set in the given context. The set is defined by a list of affine constraints, with the given number of input dimensions and symbols, which are treated as either equalities (eqFlags is 1) or inequalities (eqFlags is 0). Both constraints and eqFlags are expected to point to at least numConstraint consecutive values.

source
Reactant.MLIR.API.mlirIntegerSetGetConstraint Method
julia
mlirIntegerSetGetConstraint(set, pos)

Returns pos-th constraint of the set.

source
Reactant.MLIR.API.mlirIntegerSetGetContext Method
julia
mlirIntegerSetGetContext(set)

Gets the context in which the given integer set lives.

source
Reactant.MLIR.API.mlirIntegerSetGetNumConstraints Method
julia
mlirIntegerSetGetNumConstraints(set)

Returns the number of constraints (equalities + inequalities) in the given set.

source
Reactant.MLIR.API.mlirIntegerSetGetNumDims Method
julia
mlirIntegerSetGetNumDims(set)

Returns the number of dimensions in the given set.

source
Reactant.MLIR.API.mlirIntegerSetGetNumEqualities Method
julia
mlirIntegerSetGetNumEqualities(set)

Returns the number of equalities in the given set.

source
Reactant.MLIR.API.mlirIntegerSetGetNumInequalities Method
julia
mlirIntegerSetGetNumInequalities(set)

Returns the number of inequalities in the given set.

source
Reactant.MLIR.API.mlirIntegerSetGetNumInputs Method
julia
mlirIntegerSetGetNumInputs(set)

Returns the number of inputs (dimensions + symbols) in the given set.

source
Reactant.MLIR.API.mlirIntegerSetGetNumSymbols Method
julia
mlirIntegerSetGetNumSymbols(set)

Returns the number of symbols in the given set.

source
Reactant.MLIR.API.mlirIntegerSetIsCanonicalEmpty Method
julia
mlirIntegerSetIsCanonicalEmpty(set)

Checks whether the given set is a canonical empty set, e.g., the set returned by mlirIntegerSetEmptyGet.

source
Reactant.MLIR.API.mlirIntegerSetIsConstraintEq Method
julia
mlirIntegerSetIsConstraintEq(set, pos)

Returns true of the pos-th constraint of the set is an equality constraint, false otherwise.

source
Reactant.MLIR.API.mlirIntegerSetIsNull Method
julia
mlirIntegerSetIsNull(set)

Checks whether an integer set is a null object.

source
Reactant.MLIR.API.mlirIntegerSetPrint Method
julia
mlirIntegerSetPrint(set, callback, userData)

Prints an integer set by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirIntegerSetReplaceGet Method
julia
mlirIntegerSetReplaceGet(set, dimReplacements, symbolReplacements, numResultDims, numResultSymbols)

Gets or creates a new integer set in which the values and dimensions of the given set are replaced with the given affine expressions. dimReplacements and symbolReplacements are expected to point to at least as many consecutive expressions as the given set has dimensions and symbols, respectively. The new set will have numResultDims and numResultSymbols dimensions and symbols, respectively.

source
Reactant.MLIR.API.mlirIntegerTypeGet Method
julia
mlirIntegerTypeGet(ctx, bitwidth)

Creates a signless integer type of the given bitwidth in the context. The type is owned by the context.

source
Reactant.MLIR.API.mlirIntegerTypeGetTypeID Method
julia
mlirIntegerTypeGetTypeID()

Returns the typeID of an Integer type.

source
Reactant.MLIR.API.mlirIntegerTypeGetWidth Method
julia
mlirIntegerTypeGetWidth(type)

Returns the bitwidth of an integer type.

source
Reactant.MLIR.API.mlirIntegerTypeIsSigned Method
julia
mlirIntegerTypeIsSigned(type)

Checks whether the given integer type is signed.

source
Reactant.MLIR.API.mlirIntegerTypeIsSignless Method
julia
mlirIntegerTypeIsSignless(type)

Checks whether the given integer type is signless.

source
Reactant.MLIR.API.mlirIntegerTypeIsUnsigned Method
julia
mlirIntegerTypeIsUnsigned(type)

Checks whether the given integer type is unsigned.

source
Reactant.MLIR.API.mlirIntegerTypeSignedGet Method
julia
mlirIntegerTypeSignedGet(ctx, bitwidth)

Creates a signed integer type of the given bitwidth in the context. The type is owned by the context.

source
Reactant.MLIR.API.mlirIntegerTypeUnsignedGet Method
julia
mlirIntegerTypeUnsignedGet(ctx, bitwidth)

Creates an unsigned integer type of the given bitwidth in the context. The type is owned by the context.

source
Reactant.MLIR.API.mlirIsCurrentDebugType Method
julia
mlirIsCurrentDebugType(type)

Checks if type is set as the current debug type.

source
Reactant.MLIR.API.mlirIsGlobalDebugEnabled Method
julia
mlirIsGlobalDebugEnabled()

Retuns true if the global debugging flag is set, false otherwise.

source
Reactant.MLIR.API.mlirLLVMArrayTypeGet Method
julia
mlirLLVMArrayTypeGet(elementType, numElements)

Creates an llvm.array type.

source
Reactant.MLIR.API.mlirLLVMArrayTypeGetElementType Method
julia
mlirLLVMArrayTypeGetElementType(type)

Returns the element type of the llvm.array type.

source
Reactant.MLIR.API.mlirLLVMCConvAttrGet Method
julia
mlirLLVMCConvAttrGet(ctx, cconv)

Creates a LLVM CConv attribute.

source
Reactant.MLIR.API.mlirLLVMComdatAttrGet Method
julia
mlirLLVMComdatAttrGet(ctx, comdat)

Creates a LLVM Comdat attribute.

source
Reactant.MLIR.API.mlirLLVMDIAnnotationAttrGet Method
julia
mlirLLVMDIAnnotationAttrGet(ctx, name, value)

Creates a LLVM DIAnnotation attribute.

source
Reactant.MLIR.API.mlirLLVMDIBasicTypeAttrGet Method
julia
mlirLLVMDIBasicTypeAttrGet(ctx, tag, name, sizeInBits, encoding)

Creates a LLVM DIBasicType attribute.

source
Reactant.MLIR.API.mlirLLVMDICompileUnitAttrGet Method
julia
mlirLLVMDICompileUnitAttrGet(ctx, id, sourceLanguage, file, producer, isOptimized, emissionKind, nameTableKind)

Creates a LLVM DICompileUnit attribute.

source
Reactant.MLIR.API.mlirLLVMDICompositeTypeAttrGet Method
julia
mlirLLVMDICompositeTypeAttrGet(ctx, recId, isRecSelf, tag, name, file, line, scope, baseType, flags, sizeInBits, alignInBits, nElements, elements, dataLocation, rank, allocated, associated)

Creates a LLVM DICompositeType attribute.

source
Reactant.MLIR.API.mlirLLVMDICompositeTypeAttrGetRecSelf Method
julia
mlirLLVMDICompositeTypeAttrGetRecSelf(recId)

Creates a self-referencing LLVM DICompositeType attribute.

source
Reactant.MLIR.API.mlirLLVMDIDerivedTypeAttrGet Method
julia
mlirLLVMDIDerivedTypeAttrGet(ctx, tag, name, baseType, sizeInBits, alignInBits, offsetInBits, dwarfAddressSpace, extraData)

Creates a LLVM DIDerivedType attribute. Note that dwarfAddressSpace is an optional field, where MLIR_CAPI_DWARF_ADDRESS_SPACE_NULL indicates null and non-negative values indicate a value present.

source
Reactant.MLIR.API.mlirLLVMDIDerivedTypeAttrGetBaseType Method
julia
mlirLLVMDIDerivedTypeAttrGetBaseType(diDerivedType)

Gets the base type from a LLVM DIDerivedType attribute.

source
Reactant.MLIR.API.mlirLLVMDIExpressionAttrGet Method
julia
mlirLLVMDIExpressionAttrGet(ctx, nOperations, operations)

Creates a LLVM DIExpression attribute.

source
Reactant.MLIR.API.mlirLLVMDIExpressionElemAttrGet Method
julia
mlirLLVMDIExpressionElemAttrGet(ctx, opcode, nArguments, arguments)

Creates a LLVM DIExpressionElem attribute.

source
Reactant.MLIR.API.mlirLLVMDIFileAttrGet Method
julia
mlirLLVMDIFileAttrGet(ctx, name, directory)

Creates a LLVM DIFileAttr attribute.

source
Reactant.MLIR.API.mlirLLVMDIFlagsAttrGet Method
julia
mlirLLVMDIFlagsAttrGet(ctx, value)

Creates a LLVM DIFlags attribute.

source
Reactant.MLIR.API.mlirLLVMDIImportedEntityAttrGet Method
julia
mlirLLVMDIImportedEntityAttrGet(ctx, tag, scope, entity, file, line, name, nElements, elements)

Creates a LLVM DIImportedEntityAttr attribute.

source
Reactant.MLIR.API.mlirLLVMDILexicalBlockAttrGet Method
julia
mlirLLVMDILexicalBlockAttrGet(ctx, scope, file, line, column)

Creates a LLVM DILexicalBlock attribute.

source
Reactant.MLIR.API.mlirLLVMDILexicalBlockFileAttrGet Method
julia
mlirLLVMDILexicalBlockFileAttrGet(ctx, scope, file, discriminator)

Creates a LLVM DILexicalBlockFile attribute.

source
Reactant.MLIR.API.mlirLLVMDILocalVariableAttrGet Method
julia
mlirLLVMDILocalVariableAttrGet(ctx, scope, name, diFile, line, arg, alignInBits, diType, flags)

Creates a LLVM DILocalVariableAttr attribute.

source
Reactant.MLIR.API.mlirLLVMDIModuleAttrGet Method
julia
mlirLLVMDIModuleAttrGet(ctx, file, scope, name, configMacros, includePath, apinotes, line, isDecl)

Creates a LLVM DIModuleAttr attribute.

source
Reactant.MLIR.API.mlirLLVMDIModuleAttrGetScope Method
julia
mlirLLVMDIModuleAttrGetScope(diModule)

Gets the scope of this DIModuleAttr.

source
Reactant.MLIR.API.mlirLLVMDINullTypeAttrGet Method
julia
mlirLLVMDINullTypeAttrGet(ctx)

Creates a LLVM DINullType attribute.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGet Method
julia
mlirLLVMDISubprogramAttrGet(ctx, recId, isRecSelf, id, compileUnit, scope, name, linkageName, file, line, scopeLine, subprogramFlags, type, nRetainedNodes, retainedNodes, nAnnotations, annotations)

Creates a LLVM DISubprogramAttr attribute.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGetCompileUnit Method
julia
mlirLLVMDISubprogramAttrGetCompileUnit(diSubprogram)

Gets the compile unit from this DISubprogram.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGetFile Method
julia
mlirLLVMDISubprogramAttrGetFile(diSubprogram)

Gets the file from this DISubprogramAttr.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGetLine Method
julia
mlirLLVMDISubprogramAttrGetLine(diSubprogram)

Gets the line from this DISubprogramAttr.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGetRecSelf Method
julia
mlirLLVMDISubprogramAttrGetRecSelf(recId)

Creates a self-referencing LLVM DISubprogramAttr attribute.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGetScope Method
julia
mlirLLVMDISubprogramAttrGetScope(diSubprogram)

Gets the scope from this DISubprogramAttr.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGetScopeLine Method
julia
mlirLLVMDISubprogramAttrGetScopeLine(diSubprogram)

Gets the scope line from this DISubprogram.

source
Reactant.MLIR.API.mlirLLVMDISubprogramAttrGetType Method
julia
mlirLLVMDISubprogramAttrGetType(diSubprogram)

Gets the type from this DISubprogramAttr.

source
Reactant.MLIR.API.mlirLLVMDISubroutineTypeAttrGet Method
julia
mlirLLVMDISubroutineTypeAttrGet(ctx, callingConvention, nTypes, types)

Creates a LLVM DISubroutineTypeAttr attribute.

source
Reactant.MLIR.API.mlirLLVMFunctionTypeGet Method
julia
mlirLLVMFunctionTypeGet(resultType, nArgumentTypes, argumentTypes, isVarArg)

Creates an llvm.func type.

source
Reactant.MLIR.API.mlirLLVMFunctionTypeGetInput Method
julia
mlirLLVMFunctionTypeGetInput(type, pos)

Returns the pos-th input type.

source
Reactant.MLIR.API.mlirLLVMFunctionTypeGetNumInputs Method
julia
mlirLLVMFunctionTypeGetNumInputs(type)

Returns the number of input types.

source
Reactant.MLIR.API.mlirLLVMFunctionTypeGetReturnType Method
julia
mlirLLVMFunctionTypeGetReturnType(type)

Returns the return type of the function type.

source
Reactant.MLIR.API.mlirLLVMLinkageAttrGet Method
julia
mlirLLVMLinkageAttrGet(ctx, linkage)

Creates a LLVM Linkage attribute.

source
Reactant.MLIR.API.mlirLLVMPointerTypeGet Method
julia
mlirLLVMPointerTypeGet(ctx, addressSpace)

Creates an llvm.ptr type.

source
Reactant.MLIR.API.mlirLLVMPointerTypeGetAddressSpace Method
julia
mlirLLVMPointerTypeGetAddressSpace(pointerType)

Returns address space of llvm.ptr

source
Reactant.MLIR.API.mlirLLVMStructTypeGetElementType Method
julia
mlirLLVMStructTypeGetElementType(type, position)

Returns the positions-th field of the struct. Asserts if the struct is opaque, not yet initialized or if the position is out of range.

source
Reactant.MLIR.API.mlirLLVMStructTypeGetIdentifier Method
julia
mlirLLVMStructTypeGetIdentifier(type)

Returns the identifier of the identified struct. Asserts that the struct is identified, i.e., not literal.

source
Reactant.MLIR.API.mlirLLVMStructTypeGetNumElementTypes Method
julia
mlirLLVMStructTypeGetNumElementTypes(type)

Returns the number of fields in the struct. Asserts if the struct is opaque or not yet initialized.

source
Reactant.MLIR.API.mlirLLVMStructTypeIdentifiedGet Method
julia
mlirLLVMStructTypeIdentifiedGet(ctx, name)

Creates an LLVM identified struct type with no body. If a struct type with this name already exists in the context, returns that type. Use mlirLLVMStructTypeIdentifiedNewGet to create a fresh struct type, potentially renaming it. The body should be set separatelty by calling mlirLLVMStructTypeSetBody, if it isn't set already.

source
Reactant.MLIR.API.mlirLLVMStructTypeIdentifiedNewGet Method
julia
mlirLLVMStructTypeIdentifiedNewGet(ctx, name, nFieldTypes, fieldTypes, isPacked)

Creates an LLVM identified struct type with no body and a name starting with the given prefix. If a struct with the exact name as the given prefix already exists, appends an unspecified suffix to the name so that the name is unique in context.

source
Reactant.MLIR.API.mlirLLVMStructTypeIsLiteral Method
julia
mlirLLVMStructTypeIsLiteral(type)

Returns true if the type is a literal (unnamed) LLVM struct type.

source
Reactant.MLIR.API.mlirLLVMStructTypeIsOpaque Method
julia
mlirLLVMStructTypeIsOpaque(type)

Returns true is the struct is explicitly opaque (will not have a body) or uninitialized (will eventually have a body).

source
Reactant.MLIR.API.mlirLLVMStructTypeIsPacked Method
julia
mlirLLVMStructTypeIsPacked(type)

Returns true if the struct is packed.

source
Reactant.MLIR.API.mlirLLVMStructTypeLiteralGet Method
julia
mlirLLVMStructTypeLiteralGet(ctx, nFieldTypes, fieldTypes, isPacked)

Creates an LLVM literal (unnamed) struct type. This may assert if the fields have types not compatible with the LLVM dialect. For a graceful failure, use the checked version.

source
Reactant.MLIR.API.mlirLLVMStructTypeLiteralGetChecked Method
julia
mlirLLVMStructTypeLiteralGetChecked(loc, nFieldTypes, fieldTypes, isPacked)

Creates an LLVM literal (unnamed) struct type if possible. Emits a diagnostic at the given location and returns null otherwise.

source
Reactant.MLIR.API.mlirLLVMStructTypeSetBody Method
julia
mlirLLVMStructTypeSetBody(structType, nFieldTypes, fieldTypes, isPacked)

Sets the body of the identified struct if it hasn't been set yet. Returns whether the operation was successful.

source
Reactant.MLIR.API.mlirLLVMVoidTypeGet Method
julia
mlirLLVMVoidTypeGet(ctx)

Creates an llmv.void type.

source
Reactant.MLIR.API.mlirLinalgFillBuiltinNamedOpRegion Method
julia
mlirLinalgFillBuiltinNamedOpRegion(mlirOp)

Apply the special region builder for the builtin named Linalg op. Assert that mlirOp is a builtin named Linalg op.

source
Reactant.MLIR.API.mlirLlvmThreadPoolCreate Method
julia
mlirLlvmThreadPoolCreate()

Create an LLVM thread pool. This is reexported here to avoid directly pulling in the LLVM headers directly.

source
Reactant.MLIR.API.mlirLlvmThreadPoolDestroy Method
julia
mlirLlvmThreadPoolDestroy(pool)

Destroy an LLVM thread pool.

source
Reactant.MLIR.API.mlirLoadIRDLDialects Method
julia
mlirLoadIRDLDialects(_module)

Loads all IRDL dialects in the provided module, registering the dialects in the module's associated context.

source
Reactant.MLIR.API.mlirLocationCallSiteGet Method
julia
mlirLocationCallSiteGet(callee, caller)

Creates a call site location with a callee and a caller.

source
Reactant.MLIR.API.mlirLocationEqual Method
julia
mlirLocationEqual(l1, l2)

Checks if two locations are equal.

source
Reactant.MLIR.API.mlirLocationFileLineColGet Method
julia
mlirLocationFileLineColGet(context, filename, line, col)

Creates an File/Line/Column location owned by the given context.

source
Reactant.MLIR.API.mlirLocationFileLineColRangeGet Method
julia
mlirLocationFileLineColRangeGet(context, filename, start_line, start_col, end_line, end_col)

Creates an File/Line/Column range location owned by the given context.

source
Reactant.MLIR.API.mlirLocationFromAttribute Method
julia
mlirLocationFromAttribute(attribute)

Creates a location from a location attribute.

source
Reactant.MLIR.API.mlirLocationFusedGet Method
julia
mlirLocationFusedGet(ctx, nLocations, locations, metadata)

Creates a fused location with an array of locations and metadata.

source
Reactant.MLIR.API.mlirLocationGetAttribute Method
julia
mlirLocationGetAttribute(location)

Returns the underlying location attribute of this location.

source
Reactant.MLIR.API.mlirLocationGetContext Method
julia
mlirLocationGetContext(location)

Gets the context that a location was created with.

source
Reactant.MLIR.API.mlirLocationIsNull Method
julia
mlirLocationIsNull(location)

Checks if the location is null.

source
Reactant.MLIR.API.mlirLocationNameGet Method
julia
mlirLocationNameGet(context, name, childLoc)

Creates a name location owned by the given context. Providing null location for childLoc is allowed and if childLoc is null location, then the behavior is the same as having unknown child location.

source
Reactant.MLIR.API.mlirLocationPrint Method
julia
mlirLocationPrint(location, callback, userData)

Prints a location by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirLocationUnknownGet Method
julia
mlirLocationUnknownGet(context)

Creates a location with unknown position owned by the given context.

source
Reactant.MLIR.API.mlirLogicalResultFailure Method
julia
mlirLogicalResultFailure()

Creates a logical result representing a failure.

source
Reactant.MLIR.API.mlirLogicalResultIsFailure Method
julia
mlirLogicalResultIsFailure(res)

Checks if the given logical result represents a failure.

source
Reactant.MLIR.API.mlirLogicalResultIsSuccess Method
julia
mlirLogicalResultIsSuccess(res)

Checks if the given logical result represents a success.

source
Reactant.MLIR.API.mlirLogicalResultSuccess Method
julia
mlirLogicalResultSuccess()

Creates a logical result representing a success.

source
Reactant.MLIR.API.mlirMemRefTypeContiguousGet Method
julia
mlirMemRefTypeContiguousGet(elementType, rank, shape, memorySpace)

Creates a MemRef type with the given rank, shape, memory space and element type in the same context as the element type. The type has no affine maps, i.e. represents a default row-major contiguous memref. The type is owned by the context.

source
Reactant.MLIR.API.mlirMemRefTypeContiguousGetChecked Method
julia
mlirMemRefTypeContiguousGetChecked(loc, elementType, rank, shape, memorySpace)

Same as "mlirMemRefTypeContiguousGet" but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.

source
Reactant.MLIR.API.mlirMemRefTypeGet Method
julia
mlirMemRefTypeGet(elementType, rank, shape, layout, memorySpace)

Creates a MemRef type with the given rank and shape, a potentially empty list of affine layout maps, the given memory space and element type, in the same context as element type. The type is owned by the context.

source
Reactant.MLIR.API.mlirMemRefTypeGetAffineMap Method
julia
mlirMemRefTypeGetAffineMap(type)

Returns the affine map of the given MemRef type.

source
Reactant.MLIR.API.mlirMemRefTypeGetChecked Method
julia
mlirMemRefTypeGetChecked(loc, elementType, rank, shape, layout, memorySpace)

Same as "mlirMemRefTypeGet" but returns a nullptr-wrapping MlirType o illegal arguments, emitting appropriate diagnostics.

source
Reactant.MLIR.API.mlirMemRefTypeGetLayout Method
julia
mlirMemRefTypeGetLayout(type)

Returns the layout of the given MemRef type.

source
Reactant.MLIR.API.mlirMemRefTypeGetMemorySpace Method
julia
mlirMemRefTypeGetMemorySpace(type)

Returns the memory space of the given MemRef type.

source
Reactant.MLIR.API.mlirMemRefTypeGetStridesAndOffset Method
julia
mlirMemRefTypeGetStridesAndOffset(type, strides, offset)

Returns the strides of the MemRef if the layout map is in strided form. Both strides and offset are out params. strides must point to pre-allocated memory of length equal to the rank of the memref.

source
Reactant.MLIR.API.mlirMemRefTypeGetTypeID Method
julia
mlirMemRefTypeGetTypeID()

Returns the typeID of an MemRef type.

source
Reactant.MLIR.API.mlirMergeSymbolsIntoFromClone Method
julia
mlirMergeSymbolsIntoFromClone(target, other)

Merge the symbols from other into target, potentially renaming them to avoid conflicts. Private symbols may be renamed during the merge, public symbols must have at most one declaration. A name conflict in public symbols is reported as an error before returning a failure.

Note that this clones the other operation unlike the C++ counterpart that takes ownership.

source
Reactant.MLIR.API.mlirModuleCreateEmpty Method
julia
mlirModuleCreateEmpty(location)

Creates a new, empty module and transfers ownership to the caller.

source
Reactant.MLIR.API.mlirModuleCreateParse Method
julia
mlirModuleCreateParse(context, _module)

Parses a module from the string and transfers ownership to the caller.

source
Reactant.MLIR.API.mlirModuleCreateParseFromFile Method
julia
mlirModuleCreateParseFromFile(context, fileName)

Parses a module from file and transfers ownership to the caller.

source
Reactant.MLIR.API.mlirModuleDestroy Method
julia
mlirModuleDestroy(_module)

Takes a module owned by the caller and deletes it.

source
Reactant.MLIR.API.mlirModuleFromOperation Method
julia
mlirModuleFromOperation(op)

Views the generic operation as a module. The returned module is null when the input operation was not a ModuleOp.

source
Reactant.MLIR.API.mlirModuleGetBody Method
julia
mlirModuleGetBody(_module)

Gets the body of the module, i.e. the only block it contains.

source
Reactant.MLIR.API.mlirModuleGetContext Method
julia
mlirModuleGetContext(_module)

Gets the context that a module was created with.

source
Reactant.MLIR.API.mlirModuleGetOperation Method
julia
mlirModuleGetOperation(_module)

Views the module as a generic operation.

source
Reactant.MLIR.API.mlirModuleIsNull Method
julia
mlirModuleIsNull(_module)

Checks whether a module is null.

source
Reactant.MLIR.API.mlirNamedAttributeGet Method
julia
mlirNamedAttributeGet(name, attr)

Associates an attribute with the name. Takes ownership of neither.

source
Reactant.MLIR.API.mlirNoneTypeGet Method
julia
mlirNoneTypeGet(ctx)

Creates a None type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirNoneTypeGetTypeID Method
julia
mlirNoneTypeGetTypeID()

Returns the typeID of an None type.

source
Reactant.MLIR.API.mlirOpOperandGetNextUse Method
julia
mlirOpOperandGetNextUse(opOperand)

Returns an op operand representing the next use of the value, or a null op operand if there is no next use.

source
Reactant.MLIR.API.mlirOpOperandGetOperandNumber Method
julia
mlirOpOperandGetOperandNumber(opOperand)

Returns the operand number of an op operand.

source
Reactant.MLIR.API.mlirOpOperandGetOwner Method
julia
mlirOpOperandGetOwner(opOperand)

Returns the owner operation of an op operand.

source
Reactant.MLIR.API.mlirOpOperandGetValue Method
julia
mlirOpOperandGetValue(opOperand)

Returns the value of an op operand.

source
Reactant.MLIR.API.mlirOpOperandIsNull Method
julia
mlirOpOperandIsNull(opOperand)

Returns whether the op operand is null.

source
Reactant.MLIR.API.mlirOpPassManagerAddOwnedPass Method
julia
mlirOpPassManagerAddOwnedPass(passManager, pass)

Add a pass and transfer ownership to the provided mlirOpPassManager. If the pass is not a generic operation pass or matching the type of the provided PassManager, a new OpPassManager is implicitly nested under the provided PassManager.

source
Reactant.MLIR.API.mlirOpPassManagerAddPipeline Method
julia
mlirOpPassManagerAddPipeline(passManager, pipelineElements, callback, userData)

Parse a sequence of textual MLIR pass pipeline elements and add them to the provided OpPassManager. If parsing fails an error message is reported using the provided callback.

source
Reactant.MLIR.API.mlirOpPassManagerGetNestedUnder Method
julia
mlirOpPassManagerGetNestedUnder(passManager, operationName)

Nest an OpPassManager under the provided OpPassManager, the nested passmanager will only run on operations matching the provided name. The returned OpPassManager will be destroyed when the parent is destroyed.

source
Reactant.MLIR.API.mlirOpPrintingFlagsAssumeVerified Method
julia
mlirOpPrintingFlagsAssumeVerified(flags)

Do not verify the operation when using custom operation printers.

source
Reactant.MLIR.API.mlirOpPrintingFlagsCreate Method
julia
mlirOpPrintingFlagsCreate()

Creates new printing flags with defaults, intended for customization. Must be freed with a call to mlirOpPrintingFlagsDestroy().

source
Reactant.MLIR.API.mlirOpPrintingFlagsDestroy Method
julia
mlirOpPrintingFlagsDestroy(flags)

Destroys printing flags created with mlirOpPrintingFlagsCreate.

source
Reactant.MLIR.API.mlirOpPrintingFlagsElideLargeElementsAttrs Method
julia
mlirOpPrintingFlagsElideLargeElementsAttrs(flags, largeElementLimit)

Enables the elision of large elements attributes by printing a lexically valid but otherwise meaningless form instead of the element data. The largeElementLimit is used to configure what is considered to be a "large" ElementsAttr by providing an upper limit to the number of elements.

source
Reactant.MLIR.API.mlirOpPrintingFlagsElideLargeResourceString Method
julia
mlirOpPrintingFlagsElideLargeResourceString(flags, largeResourceLimit)

Enables the elision of large resources strings by omitting them from the dialect_resources section. The largeResourceLimit is used to configure what is considered to be a "large" resource by providing an upper limit to the string size.

source
Reactant.MLIR.API.mlirOpPrintingFlagsEnableDebugInfo Method
julia
mlirOpPrintingFlagsEnableDebugInfo(flags, enable, prettyForm)

Enable or disable printing of debug information (based on enable). If 'prettyForm' is set to true, debug information is printed in a more readable 'pretty' form. Note: The IR generated with 'prettyForm' is not parsable.

source
Reactant.MLIR.API.mlirOpPrintingFlagsPrintGenericOpForm Method
julia
mlirOpPrintingFlagsPrintGenericOpForm(flags)

Always print operations in the generic form.

source
Reactant.MLIR.API.mlirOpPrintingFlagsSkipRegions Method
julia
mlirOpPrintingFlagsSkipRegions(flags)

Skip printing regions.

source
Reactant.MLIR.API.mlirOpPrintingFlagsUseLocalScope Method
julia
mlirOpPrintingFlagsUseLocalScope(flags)

Use local scope when printing the operation. This allows for using the printer in a more localized and thread-safe setting, but may not necessarily be identical to what the IR will look like when dumping the full module.

source
Reactant.MLIR.API.mlirOpResultGetOwner Method
julia
mlirOpResultGetOwner(value)

Returns an operation that produced this value as its result. Asserts if the value is not an op result.

source
Reactant.MLIR.API.mlirOpResultGetResultNumber Method
julia
mlirOpResultGetResultNumber(value)

Returns the position of the value in the list of results of the operation that produced it.

source
Reactant.MLIR.API.mlirOpaqueAttrGet Method
julia
mlirOpaqueAttrGet(ctx, dialectNamespace, dataLength, data, type)

Creates an opaque attribute in the given context associated with the dialect identified by its namespace. The attribute contains opaque byte data of the specified length (data need not be null-terminated).

source
Reactant.MLIR.API.mlirOpaqueAttrGetData Method
julia
mlirOpaqueAttrGetData(attr)

Returns the raw data as a string reference. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.API.mlirOpaqueAttrGetDialectNamespace Method
julia
mlirOpaqueAttrGetDialectNamespace(attr)

Returns the namespace of the dialect with which the given opaque attribute is associated. The namespace string is owned by the context.

source
Reactant.MLIR.API.mlirOpaqueAttrGetTypeID Method
julia
mlirOpaqueAttrGetTypeID()

Returns the typeID of an Opaque attribute.

source
Reactant.MLIR.API.mlirOpaqueTypeGet Method
julia
mlirOpaqueTypeGet(ctx, dialectNamespace, typeData)

Creates an opaque type in the given context associated with the dialect identified by its namespace. The type contains opaque byte data of the specified length (data need not be null-terminated).

source
Reactant.MLIR.API.mlirOpaqueTypeGetData Method
julia
mlirOpaqueTypeGetData(type)

Returns the raw data as a string reference. The data remains live as long as the context in which the type lives.

source
Reactant.MLIR.API.mlirOpaqueTypeGetDialectNamespace Method
julia
mlirOpaqueTypeGetDialectNamespace(type)

Returns the namespace of the dialect with which the given opaque type is associated. The namespace string is owned by the context.

source
Reactant.MLIR.API.mlirOpaqueTypeGetTypeID Method
julia
mlirOpaqueTypeGetTypeID()

Returns the typeID of an Opaque type.

source
Reactant.MLIR.API.mlirOperationClone Method
julia
mlirOperationClone(op)

Creates a deep copy of an operation. The operation is not inserted and ownership is transferred to the caller.

source
Reactant.MLIR.API.mlirOperationCreate Method
julia
mlirOperationCreate(state)

Creates an operation and transfers ownership to the caller. Note that caller owned child objects are transferred in this call and must not be further used. Particularly, this applies to any regions added to the state (the implementation may invalidate any such pointers).

This call can fail under the following conditions, in which case, it will return a null operation and emit diagnostics: - Result type inference is enabled and cannot be performed.

source
Reactant.MLIR.API.mlirOperationCreateParse Method
julia
mlirOperationCreateParse(context, sourceStr, sourceName)

Parses an operation, giving ownership to the caller. If parsing fails a null operation will be returned, and an error diagnostic emitted.

sourceStr may be either the text assembly format, or binary bytecode format. sourceName is used as the file name of the source; any IR without locations will get a FileLineColLoc location with sourceName as the file name.

source
Reactant.MLIR.API.mlirOperationDestroy Method
julia
mlirOperationDestroy(op)

Takes an operation owned by the caller and destroys it.

source
Reactant.MLIR.API.mlirOperationDump Method
julia
mlirOperationDump(op)

Prints an operation to stderr.

source
Reactant.MLIR.API.mlirOperationEqual Method
julia
mlirOperationEqual(op, other)

Checks whether two operation handles point to the same operation. This does not perform deep comparison.

source
Reactant.MLIR.API.mlirOperationGetAttribute Method
julia
mlirOperationGetAttribute(op, pos)

Return pos-th attribute of the operation. Deprecated, please use mlirOperationGetInherentAttribute or mlirOperationGetDiscardableAttribute.

source
Reactant.MLIR.API.mlirOperationGetAttributeByName Method
julia
mlirOperationGetAttributeByName(op, name)

Returns an attribute attached to the operation given its name. Deprecated, please use mlirOperationGetInherentAttributeByName or mlirOperationGetDiscardableAttributeByName.

source
Reactant.MLIR.API.mlirOperationGetBlock Method
julia
mlirOperationGetBlock(op)

Gets the block that owns this operation, returning null if the operation is not owned.

source
Reactant.MLIR.API.mlirOperationGetContext Method
julia
mlirOperationGetContext(op)

Gets the context this operation is associated with

source
Reactant.MLIR.API.mlirOperationGetDiscardableAttribute Method
julia
mlirOperationGetDiscardableAttribute(op, pos)

Return pos-th discardable attribute of the operation.

source
Reactant.MLIR.API.mlirOperationGetDiscardableAttributeByName Method
julia
mlirOperationGetDiscardableAttributeByName(op, name)

Returns a discardable attribute attached to the operation given its name.

source
Reactant.MLIR.API.mlirOperationGetFirstRegion Method
julia
mlirOperationGetFirstRegion(op)

Returns first region attached to the operation.

source
Reactant.MLIR.API.mlirOperationGetInherentAttributeByName Method
julia
mlirOperationGetInherentAttributeByName(op, name)

Returns an inherent attribute attached to the operation given its name.

source
Reactant.MLIR.API.mlirOperationGetLocation Method
julia
mlirOperationGetLocation(op)

Gets the location of the operation.

source
Reactant.MLIR.API.mlirOperationGetName Method
julia
mlirOperationGetName(op)

Gets the name of the operation as an identifier.

source
Reactant.MLIR.API.mlirOperationGetNextInBlock Method
julia
mlirOperationGetNextInBlock(op)

Returns an operation immediately following the given operation it its enclosing block.

source
Reactant.MLIR.API.mlirOperationGetNumAttributes Method
julia
mlirOperationGetNumAttributes(op)

Returns the number of attributes attached to the operation. Deprecated, please use mlirOperationGetNumInherentAttributes or mlirOperationGetNumDiscardableAttributes.

source
Reactant.MLIR.API.mlirOperationGetNumDiscardableAttributes Method
julia
mlirOperationGetNumDiscardableAttributes(op)

Returns the number of discardable attributes attached to the operation.

source
Reactant.MLIR.API.mlirOperationGetNumOperands Method
julia
mlirOperationGetNumOperands(op)

Returns the number of operands of the operation.

source
Reactant.MLIR.API.mlirOperationGetNumRegions Method
julia
mlirOperationGetNumRegions(op)

Returns the number of regions attached to the given operation.

source
Reactant.MLIR.API.mlirOperationGetNumResults Method
julia
mlirOperationGetNumResults(op)

Returns the number of results of the operation.

source
Reactant.MLIR.API.mlirOperationGetNumSuccessors Method
julia
mlirOperationGetNumSuccessors(op)

Returns the number of successor blocks of the operation.

source
Reactant.MLIR.API.mlirOperationGetOperand Method
julia
mlirOperationGetOperand(op, pos)

Returns pos-th operand of the operation.

source
Reactant.MLIR.API.mlirOperationGetParentOperation Method
julia
mlirOperationGetParentOperation(op)

Gets the operation that owns this operation, returning null if the operation is not owned.

source
Reactant.MLIR.API.mlirOperationGetRegion Method
julia
mlirOperationGetRegion(op, pos)

Returns pos-th region attached to the operation.

source
Reactant.MLIR.API.mlirOperationGetResult Method
julia
mlirOperationGetResult(op, pos)

Returns pos-th result of the operation.

source
Reactant.MLIR.API.mlirOperationGetSuccessor Method
julia
mlirOperationGetSuccessor(op, pos)

Returns pos-th successor of the operation.

source
Reactant.MLIR.API.mlirOperationGetTypeID Method
julia
mlirOperationGetTypeID(op)

Gets the type id of the operation. Returns null if the operation does not have a registered operation description.

source
Reactant.MLIR.API.mlirOperationHasInherentAttributeByName Method
julia
mlirOperationHasInherentAttributeByName(op, name)

Returns true if this operation defines an inherent attribute with this name. Note: the attribute can be optional, so mlirOperationGetInherentAttributeByName can still return a null attribute.

source
Reactant.MLIR.API.mlirOperationImplementsInterface Method
julia
mlirOperationImplementsInterface(operation, interfaceTypeID)

Returns true if the given operation implements an interface identified by its TypeID.

source
Reactant.MLIR.API.mlirOperationImplementsInterfaceStatic Method
julia
mlirOperationImplementsInterfaceStatic(operationName, context, interfaceTypeID)

Returns true if the operation identified by its canonical string name implements the interface identified by its TypeID in the given context. Note that interfaces may be attached to operations in some contexts and not others.

source
Reactant.MLIR.API.mlirOperationIsNull Method
julia
mlirOperationIsNull(op)

Checks whether the underlying operation is null.

source
Reactant.MLIR.API.mlirOperationMoveAfter Method
julia
mlirOperationMoveAfter(op, other)

Moves the given operation immediately after the other operation in its parent block. The given operation may be owned by the caller or by its current block. The other operation must belong to a block. In any case, the ownership is transferred to the block of the other operation.

source
Reactant.MLIR.API.mlirOperationMoveBefore Method
julia
mlirOperationMoveBefore(op, other)

Moves the given operation immediately before the other operation in its parent block. The given operation may be owner by the caller or by its current block. The other operation must belong to a block. In any case, the ownership is transferred to the block of the other operation.

source
Reactant.MLIR.API.mlirOperationPrint Method
julia
mlirOperationPrint(op, callback, userData)

Prints an operation by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirOperationPrintWithFlags Method
julia
mlirOperationPrintWithFlags(op, flags, callback, userData)

Same as mlirOperationPrint but accepts flags controlling the printing behavior.

source
Reactant.MLIR.API.mlirOperationPrintWithState Method
julia
mlirOperationPrintWithState(op, state, callback, userData)

Same as mlirOperationPrint but accepts AsmState controlling the printing behavior as well as caching computed names.

source
Reactant.MLIR.API.mlirOperationRemoveAttributeByName Method
julia
mlirOperationRemoveAttributeByName(op, name)

Removes an attribute by name. Returns false if the attribute was not found and true if removed. Deprecated, please use mlirOperationRemoveInherentAttributeByName or mlirOperationRemoveDiscardableAttributeByName.

source
Reactant.MLIR.API.mlirOperationRemoveDiscardableAttributeByName Method
julia
mlirOperationRemoveDiscardableAttributeByName(op, name)

Removes a discardable attribute by name. Returns false if the attribute was not found and true if removed.

source
Reactant.MLIR.API.mlirOperationRemoveFromParent Method
julia
mlirOperationRemoveFromParent(op)

Removes the given operation from its parent block. The operation is not destroyed. The ownership of the operation is transferred to the caller.

source
Reactant.MLIR.API.mlirOperationSetAttributeByName Method
julia
mlirOperationSetAttributeByName(op, name, attr)

Sets an attribute by name, replacing the existing if it exists or adding a new one otherwise. Deprecated, please use mlirOperationSetInherentAttributeByName or mlirOperationSetDiscardableAttributeByName.

source
Reactant.MLIR.API.mlirOperationSetDiscardableAttributeByName Method
julia
mlirOperationSetDiscardableAttributeByName(op, name, attr)

Sets a discardable attribute by name, replacing the existing if it exists or adding a new one otherwise. The new attr Attribute is not allowed to be null, use mlirOperationRemoveDiscardableAttributeByName to remove an Attribute instead.

source
Reactant.MLIR.API.mlirOperationSetInherentAttributeByName Method
julia
mlirOperationSetInherentAttributeByName(op, name, attr)

Sets an inherent attribute by name, replacing the existing if it exists. This has no effect if "name" does not match an inherent attribute.

source
Reactant.MLIR.API.mlirOperationSetOperand Method
julia
mlirOperationSetOperand(op, pos, newValue)

Sets the pos-th operand of the operation.

source
Reactant.MLIR.API.mlirOperationSetOperands Method
julia
mlirOperationSetOperands(op, nOperands, operands)

Replaces the operands of the operation.

source
Reactant.MLIR.API.mlirOperationSetSuccessor Method
julia
mlirOperationSetSuccessor(op, pos, block)

Set pos-th successor of the operation.

source
Reactant.MLIR.API.mlirOperationStateAddResults Method
julia
mlirOperationStateAddResults(state, n, results)

Adds a list of components to the operation state.

source
Reactant.MLIR.API.mlirOperationStateEnableResultTypeInference Method
julia
mlirOperationStateEnableResultTypeInference(state)

Enables result type inference for the operation under construction. If enabled, then the caller must not have called mlirOperationStateAddResults(). Note that if enabled, the mlirOperationCreate() call is failable: it will return a null operation on inference failure and will emit diagnostics.

source
Reactant.MLIR.API.mlirOperationStateGet Method
julia
mlirOperationStateGet(name, loc)

Constructs an operation state from a name and a location.

source
Reactant.MLIR.API.mlirOperationVerify Method
julia
mlirOperationVerify(op)

Verify the operation and return true if it passes, false if it fails.

source
Reactant.MLIR.API.mlirOperationWalk Method
julia
mlirOperationWalk(op, callback, userData, walkOrder)

Walks operation op in walkOrder and calls callback on that operation. *userData is passed to the callback as well and can be used to tunnel some context or other data into the callback.

source
Reactant.MLIR.API.mlirOperationWriteBytecode Method
julia
mlirOperationWriteBytecode(op, callback, userData)

Same as mlirOperationPrint but writing the bytecode format.

source
Reactant.MLIR.API.mlirOperationWriteBytecodeWithConfig Method
julia
mlirOperationWriteBytecodeWithConfig(op, config, callback, userData)

Same as mlirOperationWriteBytecode but with writer config and returns failure only if desired bytecode could not be honored.

source
Reactant.MLIR.API.mlirParsePassPipeline Method
julia
mlirParsePassPipeline(passManager, pipeline, callback, userData)

Parse a textual MLIR pass pipeline and assign it to the provided OpPassManager. If parsing fails an error message is reported using the provided callback.

source
Reactant.MLIR.API.mlirPassManagerAddOwnedPass Method
julia
mlirPassManagerAddOwnedPass(passManager, pass)

Add a pass and transfer ownership to the provided top-level mlirPassManager. If the pass is not a generic operation pass or a ModulePass, a new OpPassManager is implicitly nested under the provided PassManager.

source
Reactant.MLIR.API.mlirPassManagerCreate Method
julia
mlirPassManagerCreate(ctx)

Create a new top-level PassManager with the default anchor.

source
Reactant.MLIR.API.mlirPassManagerCreateOnOperation Method
julia
mlirPassManagerCreateOnOperation(ctx, anchorOp)

Create a new top-level PassManager anchored on anchorOp.

source
Reactant.MLIR.API.mlirPassManagerDestroy Method
julia
mlirPassManagerDestroy(passManager)

Destroy the provided PassManager.

source
Reactant.MLIR.API.mlirPassManagerEnableIRPrinting Method
julia
mlirPassManagerEnableIRPrinting(passManager, printBeforeAll, printAfterAll, printModuleScope, printAfterOnlyOnChange, printAfterOnlyOnFailure, flags, treePrintingPath)

Enable IR printing. The treePrintingPath argument is an optional path to a directory where the dumps will be produced. If it isn't provided then dumps are produced to stderr.

source
Reactant.MLIR.API.mlirPassManagerEnableVerifier Method
julia
mlirPassManagerEnableVerifier(passManager, enable)

Enable / disable verify-each.

source
Reactant.MLIR.API.mlirPassManagerGetAsOpPassManager Method
julia
mlirPassManagerGetAsOpPassManager(passManager)

Cast a top-level PassManager to a generic OpPassManager.

source
Reactant.MLIR.API.mlirPassManagerGetNestedUnder Method
julia
mlirPassManagerGetNestedUnder(passManager, operationName)

Nest an OpPassManager under the top-level PassManager, the nested passmanager will only run on operations matching the provided name. The returned OpPassManager will be destroyed when the parent is destroyed. To further nest more OpPassManager under the newly returned one, see mlirOpPassManagerNest below.

source
Reactant.MLIR.API.mlirPassManagerIsNull Method
julia
mlirPassManagerIsNull(passManager)

Checks if a PassManager is null.

source
Reactant.MLIR.API.mlirPassManagerRunOnOp Method
julia
mlirPassManagerRunOnOp(passManager, op)

Run the provided passManager on the given op.

source
Reactant.MLIR.API.mlirPrintPassPipeline Method
julia
mlirPrintPassPipeline(passManager, callback, userData)

Print a textual MLIR pass pipeline by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirQuantizedTypeCastExpressedToStorageType Method
julia
mlirQuantizedTypeCastExpressedToStorageType(type, candidate)

Casts from a type based on the expressed type of the given quantized type to equivalent type based on storage type of the same quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeCastFromExpressedType Method
julia
mlirQuantizedTypeCastFromExpressedType(type, candidate)

Casts from a type based on the expressed type of the given type to a corresponding type based on the given type. Returns a null type if the cast is not valid.

source
Reactant.MLIR.API.mlirQuantizedTypeCastFromStorageType Method
julia
mlirQuantizedTypeCastFromStorageType(type, candidate)

Casts from a type based on the storage type of the given type to a corresponding type based on the given type. Returns a null type if the cast is not valid.

source
Reactant.MLIR.API.mlirQuantizedTypeCastToExpressedType Method
julia
mlirQuantizedTypeCastToExpressedType(type)

Casts from a type based on a quantized type to a corresponding typed based on the expressed type. Returns a null type if the cast is not valid.

source
Reactant.MLIR.API.mlirQuantizedTypeCastToStorageType Method
julia
mlirQuantizedTypeCastToStorageType(type)

Casts from a type based on a quantized type to a corresponding typed based on the storage type. Returns a null type if the cast is not valid.

source
Reactant.MLIR.API.mlirQuantizedTypeGetDefaultMaximumForInteger Method
julia
mlirQuantizedTypeGetDefaultMaximumForInteger(isSigned, integralWidth)

Returns the maximum possible value stored by a quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeGetDefaultMinimumForInteger Method
julia
mlirQuantizedTypeGetDefaultMinimumForInteger(isSigned, integralWidth)

Returns the minimum possible value stored by a quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeGetExpressedType Method
julia
mlirQuantizedTypeGetExpressedType(type)

Gets the original type approximated by the given quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeGetFlags Method
julia
mlirQuantizedTypeGetFlags(type)

Gets the flags associated with the given quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeGetQuantizedElementType Method
julia
mlirQuantizedTypeGetQuantizedElementType(type)

Returns the element type of the given quantized type as another quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeGetSignedFlag Method
julia
mlirQuantizedTypeGetSignedFlag()

Returns the bit flag used to indicate signedness of a quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeGetStorageType Method
julia
mlirQuantizedTypeGetStorageType(type)

Returns the underlying type used to store the values.

source
Reactant.MLIR.API.mlirQuantizedTypeGetStorageTypeIntegralWidth Method
julia
mlirQuantizedTypeGetStorageTypeIntegralWidth(type)

Returns the integral bitwidth that the storage type of the given quantized type can represent exactly.

source
Reactant.MLIR.API.mlirQuantizedTypeGetStorageTypeMax Method
julia
mlirQuantizedTypeGetStorageTypeMax(type)

Returns the maximum value that the storage type of the given quantized type can take.

source
Reactant.MLIR.API.mlirQuantizedTypeGetStorageTypeMin Method
julia
mlirQuantizedTypeGetStorageTypeMin(type)

Returns the minimum value that the storage type of the given quantized type can take.

source
Reactant.MLIR.API.mlirQuantizedTypeIsCompatibleExpressedType Method
julia
mlirQuantizedTypeIsCompatibleExpressedType(type, candidate)

Returns true if the candidate type is compatible with the given quantized type.

source
Reactant.MLIR.API.mlirQuantizedTypeIsSigned Method
julia
mlirQuantizedTypeIsSigned(type)

Returns true if the given type is signed, false otherwise.

source
Reactant.MLIR.API.mlirRankedTensorTypeGet Method
julia
mlirRankedTensorTypeGet(rank, shape, elementType, encoding)

Creates a tensor type of a fixed rank with the given shape, element type, and optional encoding in the same context as the element type. The type is owned by the context. Tensor types without any specific encoding field should assign mlirAttributeGetNull() to this parameter.

source
Reactant.MLIR.API.mlirRankedTensorTypeGetChecked Method
julia
mlirRankedTensorTypeGetChecked(loc, rank, shape, elementType, encoding)

Same as "mlirRankedTensorTypeGet" but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.

source
Reactant.MLIR.API.mlirRankedTensorTypeGetEncoding Method
julia
mlirRankedTensorTypeGetEncoding(type)

Gets the 'encoding' attribute from the ranked tensor type, returning a null attribute if none.

source
Reactant.MLIR.API.mlirRankedTensorTypeGetTypeID Method
julia
mlirRankedTensorTypeGetTypeID()

Returns the typeID of an RankedTensor type.

source
Reactant.MLIR.API.mlirRegionAppendOwnedBlock Method
julia
mlirRegionAppendOwnedBlock(region, block)

Takes a block owned by the caller and appends it to the given region.

source
Reactant.MLIR.API.mlirRegionCreate Method
julia
mlirRegionCreate()

Creates a new empty region and transfers ownership to the caller.

source
Reactant.MLIR.API.mlirRegionDestroy Method
julia
mlirRegionDestroy(region)

Takes a region owned by the caller and destroys it.

source
Reactant.MLIR.API.mlirRegionEqual Method
julia
mlirRegionEqual(region, other)

Checks whether two region handles point to the same region. This does not perform deep comparison.

source
Reactant.MLIR.API.mlirRegionGetFirstBlock Method
julia
mlirRegionGetFirstBlock(region)

Gets the first block in the region.

source
Reactant.MLIR.API.mlirRegionGetNextInOperation Method
julia
mlirRegionGetNextInOperation(region)

Returns the region immediately following the given region in its parent operation.

source
Reactant.MLIR.API.mlirRegionInsertOwnedBlock Method
julia
mlirRegionInsertOwnedBlock(region, pos, block)

Takes a block owned by the caller and inserts it at pos to the given region. This is an expensive operation that linearly scans the region, prefer insertAfter/Before instead.

source
Reactant.MLIR.API.mlirRegionInsertOwnedBlockAfter Method
julia
mlirRegionInsertOwnedBlockAfter(region, reference, block)

Takes a block owned by the caller and inserts it after the (non-owned) reference block in the given region. The reference block must belong to the region. If the reference block is null, prepends the block to the region.

source
Reactant.MLIR.API.mlirRegionInsertOwnedBlockBefore Method
julia
mlirRegionInsertOwnedBlockBefore(region, reference, block)

Takes a block owned by the caller and inserts it before the (non-owned) reference block in the given region. The reference block must belong to the region. If the reference block is null, appends the block to the region.

source
Reactant.MLIR.API.mlirRegionIsNull Method
julia
mlirRegionIsNull(region)

Checks whether a region is null.

source
Reactant.MLIR.API.mlirRegionTakeBody Method
julia
mlirRegionTakeBody(target, source)

Moves the entire content of the source region to the target region.

source
Reactant.MLIR.API.mlirRegisterAllDialects Method
julia
mlirRegisterAllDialects(registry)

Appends all upstream dialects and extensions to the dialect registry.

source
Reactant.MLIR.API.mlirRegisterAllLLVMTranslations Method
julia
mlirRegisterAllLLVMTranslations(context)

Register all translations to LLVM IR for dialects that can support it.

source
Reactant.MLIR.API.mlirRegisterAllPasses Method
julia
mlirRegisterAllPasses()

Register all compiler passes of MLIR.

source
Reactant.MLIR.API.mlirRewriterBaseCancelOpModification Method
julia
mlirRewriterBaseCancelOpModification(rewriter, op)

This method cancels a pending in-place modification. This can only be called on operations that were provided to a call to startOpModification.

source
Reactant.MLIR.API.mlirRewriterBaseClearInsertionPoint Method
julia
mlirRewriterBaseClearInsertionPoint(rewriter)

Reset the insertion point to no location. Creating an operation without a set insertion point is an error, but this can still be useful when the current insertion point a builder refers to is being removed.

source
Reactant.MLIR.API.mlirRewriterBaseClone Method
julia
mlirRewriterBaseClone(rewriter, op)

Creates a deep copy of the specified operation.

source
Reactant.MLIR.API.mlirRewriterBaseCloneRegionBefore Method
julia
mlirRewriterBaseCloneRegionBefore(rewriter, region, before)

Clone the blocks that belong to "region" before the given position in another region "parent".

source
Reactant.MLIR.API.mlirRewriterBaseCloneWithoutRegions Method
julia
mlirRewriterBaseCloneWithoutRegions(rewriter, op)

Creates a deep copy of this operation but keep the operation regions empty.

source
Reactant.MLIR.API.mlirRewriterBaseCreateBlockBefore Method
julia
mlirRewriterBaseCreateBlockBefore(rewriter, insertBefore, nArgTypes, argTypes, locations)

Add new block with 'argTypes' arguments and set the insertion point to the end of it. The block is placed before 'insertBefore'. locs contains the locations of the inserted arguments, and should match the size of argTypes.

source
Reactant.MLIR.API.mlirRewriterBaseEraseBlock Method
julia
mlirRewriterBaseEraseBlock(rewriter, block)

Erases a block along with all operations inside it.

source
Reactant.MLIR.API.mlirRewriterBaseEraseOp Method
julia
mlirRewriterBaseEraseOp(rewriter, op)

Erases an operation that is known to have no uses.

source
Reactant.MLIR.API.mlirRewriterBaseFinalizeOpModification Method
julia
mlirRewriterBaseFinalizeOpModification(rewriter, op)

This method is used to signal the end of an in-place modification of the given operation. This can only be called on operations that were provided to a call to startOpModification.

source
Reactant.MLIR.API.mlirRewriterBaseGetBlock Method
julia
mlirRewriterBaseGetBlock(rewriter)

Returns the current block of the rewriter.

source
Reactant.MLIR.API.mlirRewriterBaseGetContext Method
julia
mlirRewriterBaseGetContext(rewriter)

Get the MLIR context referenced by the rewriter.

source
Reactant.MLIR.API.mlirRewriterBaseGetInsertionBlock Method
julia
mlirRewriterBaseGetInsertionBlock(rewriter)

Return the block the current insertion point belongs to. Note that the insertion point is not necessarily the end of the block.

source
Reactant.MLIR.API.mlirRewriterBaseInlineBlockBefore Method
julia
mlirRewriterBaseInlineBlockBefore(rewriter, source, op, nArgValues, argValues)

Inline the operations of block 'source' before the operation 'op'. The source block will be deleted and must have no uses. 'argValues' is used to replace the block arguments of 'source'

The source block must have no successors. Otherwise, the resulting IR would have unreachable operations.

source
Reactant.MLIR.API.mlirRewriterBaseInlineRegionBefore Method
julia
mlirRewriterBaseInlineRegionBefore(rewriter, region, before)

Move the blocks that belong to "region" before the given position in another region "parent". The two regions must be different. The caller is responsible for creating or updating the operation transferring flow of control to the region and passing it the correct block arguments.

source
Reactant.MLIR.API.mlirRewriterBaseInsert Method
julia
mlirRewriterBaseInsert(rewriter, op)

Insert the given operation at the current insertion point and return it.

source
Reactant.MLIR.API.mlirRewriterBaseMergeBlocks Method
julia
mlirRewriterBaseMergeBlocks(rewriter, source, dest, nArgValues, argValues)

Inline the operations of block 'source' into the end of block 'dest'. The source block will be deleted and must have no uses. 'argValues' is used to replace the block arguments of 'source'

The dest block must have no successors. Otherwise, the resulting IR would have unreachable operation.

source
Reactant.MLIR.API.mlirRewriterBaseMoveBlockBefore Method
julia
mlirRewriterBaseMoveBlockBefore(rewriter, block, existingBlock)

Unlink this block and insert it right before existingBlock.

source
Reactant.MLIR.API.mlirRewriterBaseMoveOpAfter Method
julia
mlirRewriterBaseMoveOpAfter(rewriter, op, existingOp)

Unlink this operation from its current block and insert it right after existingOp which may be in the same or another block in the same function.

source
Reactant.MLIR.API.mlirRewriterBaseMoveOpBefore Method
julia
mlirRewriterBaseMoveOpBefore(rewriter, op, existingOp)

Unlink this operation from its current block and insert it right before existingOp which may be in the same or another block in the same function.

source
Reactant.MLIR.API.mlirRewriterBaseReplaceAllOpUsesWithOperation Method
julia
mlirRewriterBaseReplaceAllOpUsesWithOperation(rewriter, from, to)

Find uses of from and replace them with to. Also notify the listener about every in-place op modification (for every use that was replaced) and that the from operation is about to be replaced.

source
Reactant.MLIR.API.mlirRewriterBaseReplaceAllOpUsesWithValueRange Method
julia
mlirRewriterBaseReplaceAllOpUsesWithValueRange(rewriter, from, nTo, to)

Find uses of from and replace them with to. Also notify the listener about every in-place op modification (for every use that was replaced) and that the from operation is about to be replaced.

source
Reactant.MLIR.API.mlirRewriterBaseReplaceAllUsesExcept Method
julia
mlirRewriterBaseReplaceAllUsesExcept(rewriter, from, to, exceptedUser)

Find uses of from and replace them with to except if the user is exceptedUser. Also notify the listener about every in-place op modification (for every use that was replaced).

source
Reactant.MLIR.API.mlirRewriterBaseReplaceAllUsesWith Method
julia
mlirRewriterBaseReplaceAllUsesWith(rewriter, from, to)

Find uses of from and replace them with to. Also notify the listener about every in-place op modification (for every use that was replaced).

source
Reactant.MLIR.API.mlirRewriterBaseReplaceAllValueRangeUsesWith Method
julia
mlirRewriterBaseReplaceAllValueRangeUsesWith(rewriter, nValues, from, to)

Find uses of from and replace them with to. Also notify the listener about every in-place op modification (for every use that was replaced).

source
Reactant.MLIR.API.mlirRewriterBaseReplaceOpUsesWithinBlock Method
julia
mlirRewriterBaseReplaceOpUsesWithinBlock(rewriter, op, nNewValues, newValues, block)

Find uses of from within block and replace them with to. Also notify the listener about every in-place op modification (for every use that was replaced). The optional allUsesReplaced flag is set to "true" if all uses were replaced.

source
Reactant.MLIR.API.mlirRewriterBaseReplaceOpWithOperation Method
julia
mlirRewriterBaseReplaceOpWithOperation(rewriter, op, newOp)

Replace the results of the given (original) operation with the specified new op (replacement). The result types of the two ops must match. The original op is erased.

source
Reactant.MLIR.API.mlirRewriterBaseReplaceOpWithValues Method
julia
mlirRewriterBaseReplaceOpWithValues(rewriter, op, nValues, values)

Replace the results of the given (original) operation with the specified list of values (replacements). The result types of the given op and the replacements must match. The original op is erased.

source
Reactant.MLIR.API.mlirRewriterBaseSetInsertionPointAfter Method
julia
mlirRewriterBaseSetInsertionPointAfter(rewriter, op)

Sets the insertion point to the node after the specified operation, which will cause subsequent insertions to go right after it.

source
Reactant.MLIR.API.mlirRewriterBaseSetInsertionPointAfterValue Method
julia
mlirRewriterBaseSetInsertionPointAfterValue(rewriter, value)

Sets the insertion point to the node after the specified value. If value has a defining operation, sets the insertion point to the node after such defining operation. This will cause subsequent insertions to go right after it. Otherwise, value is a BlockArgument. Sets the insertion point to the start of its block.

source
Reactant.MLIR.API.mlirRewriterBaseSetInsertionPointBefore Method
julia
mlirRewriterBaseSetInsertionPointBefore(rewriter, op)

Sets the insertion point to the specified operation, which will cause subsequent insertions to go right before it.

source
Reactant.MLIR.API.mlirRewriterBaseSetInsertionPointToEnd Method
julia
mlirRewriterBaseSetInsertionPointToEnd(rewriter, block)

Sets the insertion point to the end of the specified block.

source
Reactant.MLIR.API.mlirRewriterBaseSetInsertionPointToStart Method
julia
mlirRewriterBaseSetInsertionPointToStart(rewriter, block)

Sets the insertion point to the start of the specified block.

source
Reactant.MLIR.API.mlirRewriterBaseStartOpModification Method
julia
mlirRewriterBaseStartOpModification(rewriter, op)

This method is used to notify the rewriter that an in-place operation modification is about to happen. A call to this function must be followed by a call to either finalizeOpModification or cancelOpModification. This is a minor efficiency win (it avoids creating a new operation and removing the old one) but also often allows simpler code in the client.

source
Reactant.MLIR.API.mlirSetGlobalDebugType Method
julia
mlirSetGlobalDebugType(type)

Sets the current debug type, similarly to -debug-only=type in the command-line tools. Note that global debug should be enabled for any output to be produced.

source
Reactant.MLIR.API.mlirSetGlobalDebugTypes Method
julia
mlirSetGlobalDebugTypes(types, n)

Sets multiple current debug types, similarly to `-debug-only=type1,type2" in the command-line tools. Note that global debug should be enabled for any output to be produced.

source
Reactant.MLIR.API.mlirShapedTypeGetDimSize Method
julia
mlirShapedTypeGetDimSize(type, dim)

Returns the dim-th dimension of the given ranked shaped type.

source
Reactant.MLIR.API.mlirShapedTypeGetDynamicSize Method
julia
mlirShapedTypeGetDynamicSize()

Returns the value indicating a dynamic size in a shaped type. Prefer mlirShapedTypeIsDynamicSize to direct comparisons with this value.

source
Reactant.MLIR.API.mlirShapedTypeGetDynamicStrideOrOffset Method
julia
mlirShapedTypeGetDynamicStrideOrOffset()

Returns the value indicating a dynamic stride or offset in a shaped type. Prefer mlirShapedTypeGetDynamicStrideOrOffset to direct comparisons with this value.

source
Reactant.MLIR.API.mlirShapedTypeGetElementType Method
julia
mlirShapedTypeGetElementType(type)

Returns the element type of the shaped type.

source
Reactant.MLIR.API.mlirShapedTypeGetRank Method
julia
mlirShapedTypeGetRank(type)

Returns the rank of the given ranked shaped type.

source
Reactant.MLIR.API.mlirShapedTypeHasRank Method
julia
mlirShapedTypeHasRank(type)

Checks whether the given shaped type is ranked.

source
Reactant.MLIR.API.mlirShapedTypeHasStaticShape Method
julia
mlirShapedTypeHasStaticShape(type)

Checks whether the given shaped type has a static shape.

source
Reactant.MLIR.API.mlirShapedTypeIsDynamicDim Method
julia
mlirShapedTypeIsDynamicDim(type, dim)

Checks wither the dim-th dimension of the given shaped type is dynamic.

source
Reactant.MLIR.API.mlirShapedTypeIsDynamicSize Method
julia
mlirShapedTypeIsDynamicSize(size)

Checks whether the given value is used as a placeholder for dynamic sizes in shaped types.

source
Reactant.MLIR.API.mlirShapedTypeIsDynamicStrideOrOffset Method
julia
mlirShapedTypeIsDynamicStrideOrOffset(val)

Checks whether the given value is used as a placeholder for dynamic strides and offsets in shaped types.

source
Reactant.MLIR.API.mlirSparseElementsAttrGetIndices Method
julia
mlirSparseElementsAttrGetIndices(attr)

Returns the dense elements attribute containing 64-bit integer indices of non-null elements in the given sparse elements attribute.

source
Reactant.MLIR.API.mlirSparseElementsAttrGetTypeID Method
julia
mlirSparseElementsAttrGetTypeID()

Returns the typeID of a SparseElements attribute.

source
Reactant.MLIR.API.mlirSparseElementsAttrGetValues Method
julia
mlirSparseElementsAttrGetValues(attr)

Returns the dense elements attribute containing the non-null elements in the given sparse elements attribute.

source
Reactant.MLIR.API.mlirSparseElementsAttribute Method
julia
mlirSparseElementsAttribute(shapedType, denseIndices, denseValues)

Creates a sparse elements attribute of the given shape from a list of indices and a list of associated values. Both lists are expected to be dense elements attributes with the same number of elements. The list of indices is expected to contain 64-bit integers. The attribute is created in the same context as the type.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGet Method
julia
mlirSparseTensorEncodingAttrGet(ctx, lvlRank, lvlTypes, dimToLvl, lvlTodim, posWidth, crdWidth, explicitVal, implicitVal)

Creates a sparse\_tensor.encoding attribute with the given parameters.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetCrdWidth Method
julia
mlirSparseTensorEncodingAttrGetCrdWidth(attr)

Returns the coordinate bitwidth of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetDimToLvl Method
julia
mlirSparseTensorEncodingAttrGetDimToLvl(attr)

Returns the dimension-to-level mapping of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetExplicitVal Method
julia
mlirSparseTensorEncodingAttrGetExplicitVal(attr)

Returns the explicit value of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetImplicitVal Method
julia
mlirSparseTensorEncodingAttrGetImplicitVal(attr)

Returns the implicit value of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetLvlFmt Method
julia
mlirSparseTensorEncodingAttrGetLvlFmt(attr, lvl)

Returns a specified level-format of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetLvlToDim Method
julia
mlirSparseTensorEncodingAttrGetLvlToDim(attr)

Returns the level-to-dimension mapping of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetLvlType Method
julia
mlirSparseTensorEncodingAttrGetLvlType(attr, lvl)

Returns a specified level-type of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingAttrGetPosWidth Method
julia
mlirSparseTensorEncodingAttrGetPosWidth(attr)

Returns the position bitwidth of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirSparseTensorEncodingGetLvlRank Method
julia
mlirSparseTensorEncodingGetLvlRank(attr)

Returns the level-rank of the sparse\_tensor.encoding attribute.

source
Reactant.MLIR.API.mlirStridedLayoutAttrGetTypeID Method
julia
mlirStridedLayoutAttrGetTypeID()

Returns the typeID of a StridedLayout attribute.

source
Reactant.MLIR.API.mlirStringAttrGet Method
julia
mlirStringAttrGet(ctx, str)

Creates a string attribute in the given context containing the given string.

source
Reactant.MLIR.API.mlirStringAttrGetTypeID Method
julia
mlirStringAttrGetTypeID()

Returns the typeID of a String attribute.

source
Reactant.MLIR.API.mlirStringAttrGetValue Method
julia
mlirStringAttrGetValue(attr)

Returns the attribute values as a string reference. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.API.mlirStringAttrTypedGet Method
julia
mlirStringAttrTypedGet(type, str)

Creates a string attribute in the given context containing the given string. Additionally, the attribute has the given type.

source
Reactant.MLIR.API.mlirStringRefCreate Method
julia
mlirStringRefCreate(str, length)

Constructs a string reference from the pointer and length. The pointer need not reference to a null-terminated string.

source
Reactant.MLIR.API.mlirStringRefCreateFromCString Method
julia
mlirStringRefCreateFromCString(str)

Constructs a string reference from a null-terminated C string. Prefer mlirStringRefCreate if the length of the string is known.

source
Reactant.MLIR.API.mlirStringRefEqual Method
julia
mlirStringRefEqual(string, other)

Returns true if two string references are equal, false otherwise.

source
Reactant.MLIR.API.mlirSymbolRefAttrGet Method
julia
mlirSymbolRefAttrGet(ctx, symbol, numReferences, references)

Creates a symbol reference attribute in the given context referencing a symbol identified by the given string inside a list of nested references. Each of the references in the list must not be nested.

source
Reactant.MLIR.API.mlirSymbolRefAttrGetLeafReference Method
julia
mlirSymbolRefAttrGetLeafReference(attr)

Returns the string reference to the leaf referenced symbol. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.API.mlirSymbolRefAttrGetNestedReference Method
julia
mlirSymbolRefAttrGetNestedReference(attr, pos)

Returns pos-th reference nested in the given symbol reference attribute.

source
Reactant.MLIR.API.mlirSymbolRefAttrGetNumNestedReferences Method
julia
mlirSymbolRefAttrGetNumNestedReferences(attr)

Returns the number of references nested in the given symbol reference attribute.

source
Reactant.MLIR.API.mlirSymbolRefAttrGetRootReference Method
julia
mlirSymbolRefAttrGetRootReference(attr)

Returns the string reference to the root referenced symbol. The data remains live as long as the context in which the attribute lives.

source
Reactant.MLIR.API.mlirSymbolRefAttrGetTypeID Method
julia
mlirSymbolRefAttrGetTypeID()

Returns the typeID of an SymbolRef attribute.

source
Reactant.MLIR.API.mlirSymbolTableCreate Method
julia
mlirSymbolTableCreate(operation)

Creates a symbol table for the given operation. If the operation does not have the SymbolTable trait, returns a null symbol table.

source
Reactant.MLIR.API.mlirSymbolTableDestroy Method
julia
mlirSymbolTableDestroy(symbolTable)

Destroys the symbol table created with mlirSymbolTableCreate. This does not affect the operations in the table.

source
Reactant.MLIR.API.mlirSymbolTableErase Method
julia
mlirSymbolTableErase(symbolTable, operation)

Removes the given operation from the symbol table and erases it.

source
Reactant.MLIR.API.mlirSymbolTableGetSymbolAttributeName Method
julia
mlirSymbolTableGetSymbolAttributeName()

Returns the name of the attribute used to store symbol names compatible with symbol tables.

source
Reactant.MLIR.API.mlirSymbolTableGetVisibilityAttributeName Method
julia
mlirSymbolTableGetVisibilityAttributeName()

Returns the name of the attribute used to store symbol visibility.

source
Reactant.MLIR.API.mlirSymbolTableInsert Method
julia
mlirSymbolTableInsert(symbolTable, operation)

Inserts the given operation into the given symbol table. The operation must have the symbol trait. If the symbol table already has a symbol with the same name, renames the symbol being inserted to ensure name uniqueness. Note that this does not move the operation itself into the block of the symbol table operation, this should be done separately. Returns the name of the symbol after insertion.

source
Reactant.MLIR.API.mlirSymbolTableIsNull Method
julia
mlirSymbolTableIsNull(symbolTable)

Returns true if the symbol table is null.

source
Reactant.MLIR.API.mlirSymbolTableLookup Method
julia
mlirSymbolTableLookup(symbolTable, name)

Looks up a symbol with the given name in the given symbol table and returns the operation that corresponds to the symbol. If the symbol cannot be found, returns a null operation.

source
Reactant.MLIR.API.mlirSymbolTableReplaceAllSymbolUses Method
julia
mlirSymbolTableReplaceAllSymbolUses(oldSymbol, newSymbol, from)

Attempt to replace all uses that are nested within the given operation of the given symbol 'oldSymbol' with the provided 'newSymbol'. This does not traverse into nested symbol tables. Will fail atomically if there are any unknown operations that may be potential symbol tables.

source
Reactant.MLIR.API.mlirSymbolTableWalkSymbolTables Method
julia
mlirSymbolTableWalkSymbolTables(from, allSymUsesVisible, callback, userData)

Walks all symbol table operations nested within, and including, op. For each symbol table operation, the provided callback is invoked with the op and a boolean signifying if the symbols within that symbol table can be treated as if all uses within the IR are visible to the caller. allSymUsesVisible identifies whether all of the symbol uses of symbols within op are visible.

source
Reactant.MLIR.API.mlirTF32TypeGet Method
julia
mlirTF32TypeGet(ctx)

Creates a TF32 type in the given context. The type is owned by the context.

source
Reactant.MLIR.API.mlirTransformApplyNamedSequence Method
julia
mlirTransformApplyNamedSequence(payload, transformRoot, transformModule, transformOptions)

Applies the transformation script starting at the given transform root operation to the given payload operation. The module containing the transform root as well as the transform options should be provided. The transform operation must implement TransformOpInterface and the module must be a ModuleOp. Returns the status of the application.

source
Reactant.MLIR.API.mlirTransformOptionsCreate Method
julia
mlirTransformOptionsCreate()

Creates a default-initialized transform options object.

source
Reactant.MLIR.API.mlirTransformOptionsDestroy Method
julia
mlirTransformOptionsDestroy(transformOptions)

Destroys a transform options object previously created by mlirTransformOptionsCreate.

source
Reactant.MLIR.API.mlirTransformOptionsEnableExpensiveChecks Method
julia
mlirTransformOptionsEnableExpensiveChecks(transformOptions, enable)

Enables or disables expensive checks in transform options.

source
Reactant.MLIR.API.mlirTransformOptionsEnforceSingleTopLevelTransformOp Method
julia
mlirTransformOptionsEnforceSingleTopLevelTransformOp(transformOptions, enable)

Enables or disables the enforcement of the top-level transform op being single in transform options.

source
Reactant.MLIR.API.mlirTransformOptionsGetEnforceSingleTopLevelTransformOp Method
julia
mlirTransformOptionsGetEnforceSingleTopLevelTransformOp(transformOptions)

Returns true if the enforcement of the top-level transform op being single is enabled in transform options.

source
Reactant.MLIR.API.mlirTransformOptionsGetExpensiveChecksEnabled Method
julia
mlirTransformOptionsGetExpensiveChecksEnabled(transformOptions)

Returns true if expensive checks are enabled in transform options.

source
Reactant.MLIR.API.mlirTranslateModuleToLLVMIR Method
julia
mlirTranslateModuleToLLVMIR(_module, context)

Translate operation that satisfies LLVM dialect module requirements into an LLVM IR module living in the given context. This translates operations from any dilalect that has a registered implementation of LLVMTranslationDialectInterface.

Returns

the generated LLVM IR Module from the translated MLIR module, it is owned by the caller.

source
Reactant.MLIR.API.mlirTupleTypeGet Method
julia
mlirTupleTypeGet(ctx, numElements, elements)

Creates a tuple type that consists of the given list of elemental types. The type is owned by the context.

source
Reactant.MLIR.API.mlirTupleTypeGetNumTypes Method
julia
mlirTupleTypeGetNumTypes(type)

Returns the number of types contained in a tuple.

source
Reactant.MLIR.API.mlirTupleTypeGetType Method
julia
mlirTupleTypeGetType(type, pos)

Returns the pos-th type in the tuple type.

source
Reactant.MLIR.API.mlirTupleTypeGetTypeID Method
julia
mlirTupleTypeGetTypeID()

Returns the typeID of an Tuple type.

source
Reactant.MLIR.API.mlirTypeAttrGet Method
julia
mlirTypeAttrGet(type)

Creates a type attribute wrapping the given type in the same context as the type.

source
Reactant.MLIR.API.mlirTypeAttrGetTypeID Method
julia
mlirTypeAttrGetTypeID()

Returns the typeID of a Type attribute.

source
Reactant.MLIR.API.mlirTypeAttrGetValue Method
julia
mlirTypeAttrGetValue(attr)

Returns the type stored in the given type attribute.

source
Reactant.MLIR.API.mlirTypeDump Method
julia
mlirTypeDump(type)

Prints the type to the standard error stream.

source
Reactant.MLIR.API.mlirTypeEqual Method
julia
mlirTypeEqual(t1, t2)

Checks if two types are equal.

source
Reactant.MLIR.API.mlirTypeFromLLVMIRTranslatorCreate Method
julia
mlirTypeFromLLVMIRTranslatorCreate(ctx)

Create an LLVM::TypeFromLLVMIRTranslator and transfer ownership to the caller.

source
Reactant.MLIR.API.mlirTypeFromLLVMIRTranslatorDestroy Method
julia
mlirTypeFromLLVMIRTranslatorDestroy(translator)

Takes an LLVM::TypeFromLLVMIRTranslator owned by the caller and destroys it. It is the responsibility of the user to only pass an LLVM::TypeFromLLVMIRTranslator class.

source
Reactant.MLIR.API.mlirTypeFromLLVMIRTranslatorTranslateType Method
julia
mlirTypeFromLLVMIRTranslatorTranslateType(translator, llvmType)

Translates the given LLVM IR type to the MLIR LLVM dialect.

source
Reactant.MLIR.API.mlirTypeGetContext Method
julia
mlirTypeGetContext(type)

Gets the context that a type was created with.

source
Reactant.MLIR.API.mlirTypeGetDialect Method
julia
mlirTypeGetDialect(type)

Gets the dialect a type belongs to.

source
Reactant.MLIR.API.mlirTypeGetTypeID Method
julia
mlirTypeGetTypeID(type)

Gets the type ID of the type.

source
Reactant.MLIR.API.mlirTypeIDAllocatorAllocateTypeID Method
julia
mlirTypeIDAllocatorAllocateTypeID(allocator)

Allocates a type id that is valid for the lifetime of the allocator

source
Reactant.MLIR.API.mlirTypeIDAllocatorCreate Method
julia
mlirTypeIDAllocatorCreate()

Creates a type id allocator for dynamic type id creation

source
Reactant.MLIR.API.mlirTypeIDAllocatorDestroy Method
julia
mlirTypeIDAllocatorDestroy(allocator)

Deallocates the allocator and all allocated type ids

source
Reactant.MLIR.API.mlirTypeIDCreate Method
julia
mlirTypeIDCreate(ptr)

ptr must be 8 byte aligned and unique to a type valid for the duration of the returned type id's usage

source
Reactant.MLIR.API.mlirTypeIDEqual Method
julia
mlirTypeIDEqual(typeID1, typeID2)

Checks if two type ids are equal.

source
Reactant.MLIR.API.mlirTypeIDHashValue Method
julia
mlirTypeIDHashValue(typeID)

Returns the hash value of the type id.

source
Reactant.MLIR.API.mlirTypeIDIsNull Method
julia
mlirTypeIDIsNull(typeID)

Checks whether a type id is null.

source
Reactant.MLIR.API.mlirTypeIsAAnyQuantizedType Method
julia
mlirTypeIsAAnyQuantizedType(type)

Returns true if the given type is an AnyQuantizedType.

source
Reactant.MLIR.API.mlirTypeIsABF16 Method
julia
mlirTypeIsABF16(type)

Checks whether the given type is a bf16 type.

source
Reactant.MLIR.API.mlirTypeIsACalibratedQuantizedType Method
julia
mlirTypeIsACalibratedQuantizedType(type)

Returns true if the given type is a CalibratedQuantizedType.

source
Reactant.MLIR.API.mlirTypeIsAComplex Method
julia
mlirTypeIsAComplex(type)

Checks whether the given type is a Complex type.

source
Reactant.MLIR.API.mlirTypeIsAF16 Method
julia
mlirTypeIsAF16(type)

Checks whether the given type is an f16 type.

source
Reactant.MLIR.API.mlirTypeIsAF32 Method
julia
mlirTypeIsAF32(type)

Checks whether the given type is an f32 type.

source
Reactant.MLIR.API.mlirTypeIsAF64 Method
julia
mlirTypeIsAF64(type)

Checks whether the given type is an f64 type.

source
Reactant.MLIR.API.mlirTypeIsAFloat Method
julia
mlirTypeIsAFloat(type)

Checks whether the given type is a floating-point type.

source
Reactant.MLIR.API.mlirTypeIsAFloat4E2M1FN Method
julia
mlirTypeIsAFloat4E2M1FN(type)

Checks whether the given type is an f4E2M1FN type.

source
Reactant.MLIR.API.mlirTypeIsAFloat6E2M3FN Method
julia
mlirTypeIsAFloat6E2M3FN(type)

Checks whether the given type is an f6E2M3FN type.

source
Reactant.MLIR.API.mlirTypeIsAFloat6E3M2FN Method
julia
mlirTypeIsAFloat6E3M2FN(type)

Checks whether the given type is an f6E3M2FN type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E3M4 Method
julia
mlirTypeIsAFloat8E3M4(type)

Checks whether the given type is an f8E3M4 type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E4M3 Method
julia
mlirTypeIsAFloat8E4M3(type)

Checks whether the given type is an f8E4M3 type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E4M3B11FNUZ Method
julia
mlirTypeIsAFloat8E4M3B11FNUZ(type)

Checks whether the given type is an f8E4M3B11FNUZ type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E4M3FN Method
julia
mlirTypeIsAFloat8E4M3FN(type)

Checks whether the given type is an f8E4M3FN type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E4M3FNUZ Method
julia
mlirTypeIsAFloat8E4M3FNUZ(type)

Checks whether the given type is an f8E4M3FNUZ type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E5M2 Method
julia
mlirTypeIsAFloat8E5M2(type)

Checks whether the given type is an f8E5M2 type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E5M2FNUZ Method
julia
mlirTypeIsAFloat8E5M2FNUZ(type)

Checks whether the given type is an f8E5M2FNUZ type.

source
Reactant.MLIR.API.mlirTypeIsAFloat8E8M0FNU Method
julia
mlirTypeIsAFloat8E8M0FNU(type)

Checks whether the given type is an f8E8M0FNU type.

source
Reactant.MLIR.API.mlirTypeIsAFunction Method
julia
mlirTypeIsAFunction(type)

Checks whether the given type is a function type.

source
Reactant.MLIR.API.mlirTypeIsAIndex Method
julia
mlirTypeIsAIndex(type)

Checks whether the given type is an index type.

source
Reactant.MLIR.API.mlirTypeIsAInteger Method
julia
mlirTypeIsAInteger(type)

Checks whether the given type is an integer type.

source
Reactant.MLIR.API.mlirTypeIsALLVMPointerType Method
julia
mlirTypeIsALLVMPointerType(type)

Returns true if the type is an LLVM dialect pointer type.

source
Reactant.MLIR.API.mlirTypeIsALLVMStructType Method
julia
mlirTypeIsALLVMStructType(type)

Returns true if the type is an LLVM dialect struct type.

source
Reactant.MLIR.API.mlirTypeIsAMemRef Method
julia
mlirTypeIsAMemRef(type)

Checks whether the given type is a MemRef type.

source
Reactant.MLIR.API.mlirTypeIsANone Method
julia
mlirTypeIsANone(type)

Checks whether the given type is a None type.

source
Reactant.MLIR.API.mlirTypeIsAOpaque Method
julia
mlirTypeIsAOpaque(type)

Checks whether the given type is an opaque type.

source
Reactant.MLIR.API.mlirTypeIsAQuantizedType Method
julia
mlirTypeIsAQuantizedType(type)

Returns true if the given type is a quantization dialect type.

source
Reactant.MLIR.API.mlirTypeIsARankedTensor Method
julia
mlirTypeIsARankedTensor(type)

Checks whether the given type is a ranked tensor type.

source
Reactant.MLIR.API.mlirTypeIsAShaped Method
julia
mlirTypeIsAShaped(type)

Checks whether the given type is a Shaped type.

source
Reactant.MLIR.API.mlirTypeIsATF32 Method
julia
mlirTypeIsATF32(type)

Checks whether the given type is an TF32 type.

source
Reactant.MLIR.API.mlirTypeIsATensor Method
julia
mlirTypeIsATensor(type)

Checks whether the given type is a Tensor type.

source
Reactant.MLIR.API.mlirTypeIsATuple Method
julia
mlirTypeIsATuple(type)

Checks whether the given type is a tuple type.

source
Reactant.MLIR.API.mlirTypeIsAUniformQuantizedPerAxisType Method
julia
mlirTypeIsAUniformQuantizedPerAxisType(type)

Returns true if the given type is a UniformQuantizedPerAxisType.

source
Reactant.MLIR.API.mlirTypeIsAUniformQuantizedType Method
julia
mlirTypeIsAUniformQuantizedType(type)

Returns true if the given type is a UniformQuantizedType.

source
Reactant.MLIR.API.mlirTypeIsAUnrankedMemRef Method
julia
mlirTypeIsAUnrankedMemRef(type)

Checks whether the given type is an UnrankedMemRef type.

source
Reactant.MLIR.API.mlirTypeIsAUnrankedTensor Method
julia
mlirTypeIsAUnrankedTensor(type)

Checks whether the given type is an unranked tensor type.

source
Reactant.MLIR.API.mlirTypeIsAVector Method
julia
mlirTypeIsAVector(type)

Checks whether the given type is a Vector type.

source
Reactant.MLIR.API.mlirTypeIsNull Method
julia
mlirTypeIsNull(type)

Checks whether a type is null.

source
Reactant.MLIR.API.mlirTypeParseGet Method
julia
mlirTypeParseGet(context, type)

Parses a type. The type is owned by the context.

source
Reactant.MLIR.API.mlirTypePrint Method
julia
mlirTypePrint(type, callback, userData)

Prints a location by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirTypeToLLVMIRTranslatorCreate Method
julia
mlirTypeToLLVMIRTranslatorCreate(ctx)

Create an LLVM::TypeToLLVMIRTranslator and transfer ownership to the caller.

source
Reactant.MLIR.API.mlirTypeToLLVMIRTranslatorDestroy Method
julia
mlirTypeToLLVMIRTranslatorDestroy(translator)

Takes an LLVM::TypeToLLVMIRTranslator owned by the caller and destroys it. It is the responsibility of the user to only pass an LLVM::TypeToLLVMIRTranslator class.

source
Reactant.MLIR.API.mlirTypeToLLVMIRTranslatorTranslateType Method
julia
mlirTypeToLLVMIRTranslatorTranslateType(translator, mlirType)

Translates the given MLIR LLVM dialect to the LLVM IR type.

source
Reactant.MLIR.API.mlirUniformQuantizedPerAxisTypeGet Method
julia
mlirUniformQuantizedPerAxisTypeGet(flags, storageType, expressedType, nDims, scales, zeroPoints, quantizedDimension, storageTypeMin, storageTypeMax)

Creates an instance of UniformQuantizedPerAxisType with the given parameters in the same context as storageType and returns it. scales and zeroPoints point to nDims number of elements. The instance is owned by the context.

source
Reactant.MLIR.API.mlirUniformQuantizedPerAxisTypeGetNumDims Method
julia
mlirUniformQuantizedPerAxisTypeGetNumDims(type)

Returns the number of axes in the given quantized per-axis type.

source
Reactant.MLIR.API.mlirUniformQuantizedPerAxisTypeGetQuantizedDimension Method
julia
mlirUniformQuantizedPerAxisTypeGetQuantizedDimension(type)

Returns the index of the quantized dimension in the given quantized per-axis type.

source
Reactant.MLIR.API.mlirUniformQuantizedPerAxisTypeGetScale Method
julia
mlirUniformQuantizedPerAxisTypeGetScale(type, pos)

Returns pos-th scale of the given quantized per-axis type.

source
Reactant.MLIR.API.mlirUniformQuantizedPerAxisTypeGetZeroPoint Method
julia
mlirUniformQuantizedPerAxisTypeGetZeroPoint(type, pos)

Returns pos-th zero point of the given quantized per-axis type.

source
Reactant.MLIR.API.mlirUniformQuantizedPerAxisTypeIsFixedPoint Method
julia
mlirUniformQuantizedPerAxisTypeIsFixedPoint(type)

Returns true if the given uniform quantized per-axis type is fixed-point.

source
Reactant.MLIR.API.mlirUniformQuantizedTypeGet Method
julia
mlirUniformQuantizedTypeGet(flags, storageType, expressedType, scale, zeroPoint, storageTypeMin, storageTypeMax)

Creates an instance of UniformQuantizedType with the given parameters in the same context as storageType and returns it. The instance is owned by the context.

source
Reactant.MLIR.API.mlirUniformQuantizedTypeGetScale Method
julia
mlirUniformQuantizedTypeGetScale(type)

Returns the scale of the given uniform quantized type.

source
Reactant.MLIR.API.mlirUniformQuantizedTypeGetZeroPoint Method
julia
mlirUniformQuantizedTypeGetZeroPoint(type)

Returns the zero point of the given uniform quantized type.

source
Reactant.MLIR.API.mlirUniformQuantizedTypeIsFixedPoint Method
julia
mlirUniformQuantizedTypeIsFixedPoint(type)

Returns true if the given uniform quantized type is fixed-point.

source
Reactant.MLIR.API.mlirUnitAttrGet Method
julia
mlirUnitAttrGet(ctx)

Creates a unit attribute in the given context.

source
Reactant.MLIR.API.mlirUnitAttrGetTypeID Method
julia
mlirUnitAttrGetTypeID()

Returns the typeID of a Unit attribute.

source
Reactant.MLIR.API.mlirUnmanagedDenseResourceElementsAttrGet Method
julia
mlirUnmanagedDenseResourceElementsAttrGet(shapedType, name, data, dataLength, dataAlignment, dataIsMutable, deleter, userData)

Unlike the typed accessors below, constructs the attribute with a raw data buffer and no type/alignment checking. Use a more strongly typed accessor if possible. If dataIsMutable is false, then an immutable AsmResourceBlob will be created and that passed data contents will be treated as const. If the deleter is non NULL, then it will be called when the data buffer can no longer be accessed (passing userData to it).

source
Reactant.MLIR.API.mlirUnrankedMemRefTypeGet Method
julia
mlirUnrankedMemRefTypeGet(elementType, memorySpace)

Creates an Unranked MemRef type with the given element type and in the given memory space. The type is owned by the context of element type.

source
Reactant.MLIR.API.mlirUnrankedMemRefTypeGetChecked Method
julia
mlirUnrankedMemRefTypeGetChecked(loc, elementType, memorySpace)

Same as "mlirUnrankedMemRefTypeGet" but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.

source
Reactant.MLIR.API.mlirUnrankedMemRefTypeGetTypeID Method
julia
mlirUnrankedMemRefTypeGetTypeID()

Returns the typeID of an UnrankedMemRef type.

source
Reactant.MLIR.API.mlirUnrankedMemrefGetMemorySpace Method
julia
mlirUnrankedMemrefGetMemorySpace(type)

Returns the memory spcae of the given Unranked MemRef type.

source
Reactant.MLIR.API.mlirUnrankedTensorTypeGet Method
julia
mlirUnrankedTensorTypeGet(elementType)

Creates an unranked tensor type with the given element type in the same context as the element type. The type is owned by the context.

source
Reactant.MLIR.API.mlirUnrankedTensorTypeGetChecked Method
julia
mlirUnrankedTensorTypeGetChecked(loc, elementType)

Same as "mlirUnrankedTensorTypeGet" but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.

source
Reactant.MLIR.API.mlirUnrankedTensorTypeGetTypeID Method
julia
mlirUnrankedTensorTypeGetTypeID()

Returns the typeID of an UnrankedTensor type.

source
Reactant.MLIR.API.mlirValueDump Method
julia
mlirValueDump(value)

Prints the value to the standard error stream.

source
Reactant.MLIR.API.mlirValueEqual Method
julia
mlirValueEqual(value1, value2)

Returns 1 if two values are equal, 0 otherwise.

source
Reactant.MLIR.API.mlirValueGetFirstUse Method
julia
mlirValueGetFirstUse(value)

Returns an op operand representing the first use of the value, or a null op operand if there are no uses.

source
Reactant.MLIR.API.mlirValueGetType Method
julia
mlirValueGetType(value)

Returns the type of the value.

source
Reactant.MLIR.API.mlirValueIsABlockArgument Method
julia
mlirValueIsABlockArgument(value)

Returns 1 if the value is a block argument, 0 otherwise.

source
Reactant.MLIR.API.mlirValueIsAOpResult Method
julia
mlirValueIsAOpResult(value)

Returns 1 if the value is an operation result, 0 otherwise.

source
Reactant.MLIR.API.mlirValueIsNull Method
julia
mlirValueIsNull(value)

Returns whether the value is null.

source
Reactant.MLIR.API.mlirValuePrint Method
julia
mlirValuePrint(value, callback, userData)

Prints a value by sending chunks of the string representation and forwarding userData tocallback`. Note that the callback may be called several times with consecutive chunks of the string.

source
Reactant.MLIR.API.mlirValuePrintAsOperand Method
julia
mlirValuePrintAsOperand(value, state, callback, userData)

Prints a value as an operand (i.e., the ValueID).

source
Reactant.MLIR.API.mlirValueReplaceAllUsesExcept Method
julia
mlirValueReplaceAllUsesExcept(of, with, numExceptions, exceptions)

Replace all uses of 'of' value with 'with' value, updating anything in the IR that uses 'of' to use 'with' instead, except if the user is listed in 'exceptions'. The 'exceptions' parameter is an array of MlirOperation pointers with a length of 'numExceptions'.

source
Reactant.MLIR.API.mlirValueReplaceAllUsesOfWith Method
julia
mlirValueReplaceAllUsesOfWith(of, with)

Replace all uses of 'of' value with the 'with' value, updating anything in the IR that uses 'of' to use the other value instead. When this returns there are zero uses of 'of'.

source
Reactant.MLIR.API.mlirValueSetType Method
julia
mlirValueSetType(value, type)

Set the type of the value.

source
Reactant.MLIR.API.mlirVectorTypeGet Method
julia
mlirVectorTypeGet(rank, shape, elementType)

Creates a vector type of the shape identified by its rank and dimensions, with the given element type in the same context as the element type. The type is owned by the context.

source
Reactant.MLIR.API.mlirVectorTypeGetChecked Method
julia
mlirVectorTypeGetChecked(loc, rank, shape, elementType)

Same as "mlirVectorTypeGet" but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.

source
Reactant.MLIR.API.mlirVectorTypeGetScalable Method
julia
mlirVectorTypeGetScalable(rank, shape, scalable, elementType)

Creates a scalable vector type with the shape identified by its rank and dimensions. A subset of dimensions may be marked as scalable via the corresponding flag list, which is expected to have as many entries as the rank of the vector. The vector is created in the same context as the element type.

source
Reactant.MLIR.API.mlirVectorTypeGetScalableChecked Method
julia
mlirVectorTypeGetScalableChecked(loc, rank, shape, scalable, elementType)

Same as "mlirVectorTypeGetScalable" but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.

source
Reactant.MLIR.API.mlirVectorTypeGetTypeID Method
julia
mlirVectorTypeGetTypeID()

Returns the typeID of an Vector type.

source
Reactant.MLIR.API.mlirVectorTypeIsDimScalable Method
julia
mlirVectorTypeIsDimScalable(type, dim)

Checks whether the "dim"-th dimension of the given vector is scalable.

source
Reactant.MLIR.API.mlirVectorTypeIsScalable Method
julia
mlirVectorTypeIsScalable(type)

Checks whether the given vector type is scalable, i.e., has at least one scalable dimension.

source

Other Functions