Skip to main content

Crate mlir_sys

Crate mlir_sys 

Source

Structs§

LLVMComdat
LLVMOpaqueAttributeRef
LLVMOpaqueBasicBlock
LLVMOpaqueBinary
LLVMOpaqueBuilder
LLVMOpaqueContext
LLVMOpaqueDIBuilder
LLVMOpaqueDbgRecord
LLVMOpaqueDiagnosticInfo
LLVMOpaqueJITEventListener
LLVMOpaqueMemoryBuffer
LLVMOpaqueMetadata
LLVMOpaqueModule
LLVMOpaqueModuleFlagEntry
LLVMOpaqueModuleProvider
LLVMOpaqueNamedMDNode
LLVMOpaqueOperandBundle
LLVMOpaquePassManager
LLVMOpaqueType
LLVMOpaqueUse
LLVMOpaqueValue
LLVMOpaqueValueMetadataEntry
MlirAffineExpr
MlirAffineMap
MlirAsmState
MlirAttribute
MlirBlock
MlirBytecodeWriterConfig
MlirConditionallySpeculatableOpInterfaceCallbacks
Callbacks for implementing ConditionallySpeculatable from external code.
MlirContext
MlirConversionConfig
MlirConversionPattern
MlirConversionPatternCallbacks
ConversionPattern API
MlirConversionPatternRewriter
MlirConversionTarget
MlirDiagnostic
An opaque reference to a diagnostic, always owned by the diagnostics engine (context). Must not be stored outside of the diagnostic handler.
MlirDialect
MlirDialectHandle
MlirDialectRegistry
MlirDominanceInfo
MlirDynamicAttrDefinition
MlirDynamicOpTrait
MlirDynamicOpTraitCallbacks
MlirDynamicTypeDefinition
MlirExecutionEngine
MlirExternalPass
MlirExternalPassCallbacks
Structure of external MlirPass callbacks. All callbacks are required to be set unless otherwise specified.
MlirFrozenRewritePatternSet
MlirGreedyRewriteDriverConfig
MlirIRMapping
MlirIdentifier
MlirIntegerSet
MlirLinalgContractionDimensions
MlirLinalgConvolutionDimensions
MlirLlvmRawFdOStream
Re-export llvm::raw_fd_ostream so as to avoid including the LLVM C API directly.
MlirLlvmThreadPool
Re-export llvm::ThreadPool so as to avoid including the LLVM C API directly.
MlirLocation
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.
MlirMemoryEffectInstancesList
MlirMemoryEffectsOpInterfaceCallbacks
Callbacks for implementing MemoryEffectsOpInterface from external code.
MlirModule
MlirNamedAttribute
Named MLIR attribute.
MlirOpOperand
MlirOpPassManager
MlirOpPrintingFlags
MlirOperation
MlirOperationState
An auxiliary class for constructing operations.
MlirPDLPatternModule
MlirPDLResultList
MlirPDLValue
MlirPass
MlirPassManager
MlirPatternDescriptorOpInterfaceCallbacks
Callbacks for implementing PatternDescriptorOpInterface from external code.
MlirPatternRewriter
MlirPostDominanceInfo
MlirRegion
MlirRewritePattern
MlirRewritePatternCallbacks
Callbacks to construct a rewrite pattern.
MlirRewritePatternSet
MlirRewriterBase
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.
MlirSymbolTable
MlirTransformOpInterfaceCallbacks
Callbacks for implementing TransformOpInterface from external code.
MlirTransformOptions
MlirTransformResults
MlirTransformRewriter
MlirTransformState
MlirType
MlirTypeConverter
MlirTypeFromLLVMIRTranslator
MlirTypeID
MlirTypeIDAllocator
MlirTypeToLLVMIRTranslator
MlirValue
__atomic_wide_counter__bindgen_ty_1
__fsid_t
__once_flag
__pthread_cond_s
__pthread_internal_list
__pthread_internal_slist
__pthread_mutex_s
__pthread_rwlock_arch_t
__sigset_t
fd_set
imaxdiv_t
max_align_t
timespec
timeval

Constants§

BIG_ENDIAN
BYTE_ORDER
FD_SETSIZE
HAVE_SYSEXITS_H
INT8_MAX
INT8_MIN
INT16_MAX
INT16_MIN
INT32_MAX
INT32_MIN
INTPTR_MAX
INTPTR_MIN
INT_FAST8_MAX
INT_FAST8_MIN
INT_FAST16_MAX
INT_FAST16_MIN
INT_FAST32_MAX
INT_FAST32_MIN
INT_LEAST8_MAX
INT_LEAST8_MIN
INT_LEAST16_MAX
INT_LEAST16_MIN
INT_LEAST32_MAX
INT_LEAST32_MIN
LITTLE_ENDIAN
LLVMAtomicOrdering_LLVMAtomicOrderingAcquire
< Acquire provides a barrier of the sort necessary to acquire a lock to access other memory with normal loads and stores.
LLVMAtomicOrdering_LLVMAtomicOrderingAcquireRelease
< provides both an Acquire and a Release barrier (for fences and operations which both read and write memory).
LLVMAtomicOrdering_LLVMAtomicOrderingMonotonic
< guarantees that if you take all the operations affecting a specific address, a consistent ordering exists
LLVMAtomicOrdering_LLVMAtomicOrderingNotAtomic
< A load or store which is not atomic
LLVMAtomicOrdering_LLVMAtomicOrderingRelease
< Release is similar to Acquire, but with a barrier of the sort necessary to release a lock.
LLVMAtomicOrdering_LLVMAtomicOrderingSequentiallyConsistent
< provides Acquire semantics for loads and Release semantics for stores. Additionally, it guarantees that a total ordering exists between all SequentiallyConsistent operations.
LLVMAtomicOrdering_LLVMAtomicOrderingUnordered
< Lowest level of atomicity, guarantees somewhat sane results, lock free.
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpAdd
< Add a value and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpAnd
< And a value and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFAdd
< Add a floating point value and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFMax
< Sets the value if it’s greater than the original using an floating point comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFMaximum
< Sets the value if it’s greater than the original using an floating point comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFMaximumNum
< Sets the value if it’s greater than the original using an floating point comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFMin
< Sets the value if it’s smaller than the original using an floating point comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFMinimum
< Sets the value if it’s smaller than the original using an floating point comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFMinimumNum
< Sets the value if it’s smaller than the original using an floating point comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpFSub
< Subtract a floating point value and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpMax
< Sets the value if it’s greater than the original using a signed comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpMin
< Sets the value if it’s Smaller than the original using a signed comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpNand
< Not-And a value and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpOr
< OR a value and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpSub
< Subtract a value and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpUDecWrap
< Decrements the value, wrapping back to the input value when decremented below zero
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpUIncWrap
< Increments the value, wrapping back to zero when incremented above input value
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpUMax
< Sets the value if it’s greater than the original using an unsigned comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpUMin
< Sets the value if it’s greater than the original using an unsigned comparison and return the old one
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpUSubCond
<Subtracts the value only if no unsigned overflow
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpUSubSat
<Subtracts the value, clamping to zero
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpXchg
< Set the new value and return the one old
LLVMAtomicRMWBinOp_LLVMAtomicRMWBinOpXor
< Xor a value and return the old one
LLVMAttributeFunctionIndex
LLVMAttributeReturnIndex
LLVMCallConv_LLVMAMDGPUCSCallConv
LLVMCallConv_LLVMAMDGPUESCallConv
LLVMCallConv_LLVMAMDGPUGSCallConv
LLVMCallConv_LLVMAMDGPUHSCallConv
LLVMCallConv_LLVMAMDGPUKERNELCallConv
LLVMCallConv_LLVMAMDGPULSCallConv
LLVMCallConv_LLVMAMDGPUPSCallConv
LLVMCallConv_LLVMAMDGPUVSCallConv
LLVMCallConv_LLVMARMAAPCSCallConv
LLVMCallConv_LLVMARMAAPCSVFPCallConv
LLVMCallConv_LLVMARMAPCSCallConv
LLVMCallConv_LLVMAVRBUILTINCallConv
LLVMCallConv_LLVMAVRINTRCallConv
LLVMCallConv_LLVMAVRSIGNALCallConv
LLVMCallConv_LLVMAnyRegCallConv
LLVMCallConv_LLVMCCallConv
LLVMCallConv_LLVMCXXFASTTLSCallConv
LLVMCallConv_LLVMColdCallConv
LLVMCallConv_LLVMFastCallConv
LLVMCallConv_LLVMGHCCallConv
LLVMCallConv_LLVMHHVMCCallConv
LLVMCallConv_LLVMHHVMCallConv
LLVMCallConv_LLVMHiPECallConv
LLVMCallConv_LLVMIntelOCLBICallConv
LLVMCallConv_LLVMMSP430BUILTINCallConv
LLVMCallConv_LLVMMSP430INTRCallConv
LLVMCallConv_LLVMPTXDeviceCallConv
LLVMCallConv_LLVMPTXKernelCallConv
LLVMCallConv_LLVMPreserveAllCallConv
LLVMCallConv_LLVMPreserveMostCallConv
LLVMCallConv_LLVMSPIRFUNCCallConv
LLVMCallConv_LLVMSPIRKERNELCallConv
LLVMCallConv_LLVMSwiftCallConv
LLVMCallConv_LLVMWin64CallConv
LLVMCallConv_LLVMX86FastcallCallConv
LLVMCallConv_LLVMX86INTRCallConv
LLVMCallConv_LLVMX86RegCallCallConv
LLVMCallConv_LLVMX86StdcallCallConv
LLVMCallConv_LLVMX86ThisCallCallConv
LLVMCallConv_LLVMX86VectorCallCallConv
LLVMCallConv_LLVMX8664SysVCallConv
LLVMDLLStorageClass_LLVMDLLExportStorageClass
< Function to be accessible from DLL.
LLVMDLLStorageClass_LLVMDLLImportStorageClass
< Function to be imported from DLL.
LLVMDLLStorageClass_LLVMDefaultStorageClass
LLVMDbgRecordKind_LLVMDbgRecordAssign
LLVMDbgRecordKind_LLVMDbgRecordDeclare
LLVMDbgRecordKind_LLVMDbgRecordLabel
LLVMDbgRecordKind_LLVMDbgRecordValue
LLVMDenormalModeKind_LLVMDenormalModeKindDynamic
LLVMDenormalModeKind_LLVMDenormalModeKindIEEE
LLVMDenormalModeKind_LLVMDenormalModeKindPositiveZero
LLVMDenormalModeKind_LLVMDenormalModeKindPreserveSign
LLVMDiagnosticSeverity_LLVMDSError
LLVMDiagnosticSeverity_LLVMDSNote
LLVMDiagnosticSeverity_LLVMDSRemark
LLVMDiagnosticSeverity_LLVMDSWarning
LLVMFastMathAll
LLVMFastMathAllowContract
LLVMFastMathAllowReassoc
LLVMFastMathAllowReciprocal
LLVMFastMathApproxFunc
LLVMFastMathNoInfs
LLVMFastMathNoNaNs
LLVMFastMathNoSignedZeros
LLVMFastMathNone
LLVMGEPFlagInBounds
LLVMGEPFlagNUSW
LLVMGEPFlagNUW
LLVMInlineAsmDialect_LLVMInlineAsmDialectATT
LLVMInlineAsmDialect_LLVMInlineAsmDialectIntel
LLVMIntPredicate_LLVMIntEQ
< equal
LLVMIntPredicate_LLVMIntNE
< not equal
LLVMIntPredicate_LLVMIntSGE
< signed greater or equal
LLVMIntPredicate_LLVMIntSGT
< signed greater than
LLVMIntPredicate_LLVMIntSLE
< signed less or equal
LLVMIntPredicate_LLVMIntSLT
< signed less than
LLVMIntPredicate_LLVMIntUGE
< unsigned greater or equal
LLVMIntPredicate_LLVMIntUGT
< unsigned greater than
LLVMIntPredicate_LLVMIntULE
< unsigned less or equal
LLVMIntPredicate_LLVMIntULT
< unsigned less than
LLVMLinkage_LLVMAppendingLinkage
< Special purpose, only applies to global arrays
LLVMLinkage_LLVMAvailableExternallyLinkage
LLVMLinkage_LLVMCommonLinkage
< Tentative definitions
LLVMLinkage_LLVMDLLExportLinkage
< Obsolete
LLVMLinkage_LLVMDLLImportLinkage
< Obsolete
LLVMLinkage_LLVMExternalLinkage
< Externally visible function
LLVMLinkage_LLVMExternalWeakLinkage
< ExternalWeak linkage description
LLVMLinkage_LLVMGhostLinkage
< Obsolete
LLVMLinkage_LLVMInternalLinkage
< Rename collisions when linking (static functions)
LLVMLinkage_LLVMLinkOnceAnyLinkage
< Keep one copy of function when linking (inline)
LLVMLinkage_LLVMLinkOnceODRAutoHideLinkage
< Obsolete
LLVMLinkage_LLVMLinkOnceODRLinkage
< Same, but only replaced by something equivalent.
LLVMLinkage_LLVMLinkerPrivateLinkage
< Like Private, but linker removes.
LLVMLinkage_LLVMLinkerPrivateWeakLinkage
< Like LinkerPrivate, but is weak.
LLVMLinkage_LLVMPrivateLinkage
< Like Internal, but omit from symbol table
LLVMLinkage_LLVMWeakAnyLinkage
< Keep one copy of function when linking (weak)
LLVMLinkage_LLVMWeakODRLinkage
< Same, but only replaced by something equivalent.
LLVMModuleFlagBehavior_LLVMModuleFlagBehaviorAppend
Appends the two values, which are required to be metadata nodes.
LLVMModuleFlagBehavior_LLVMModuleFlagBehaviorAppendUnique
Appends the two values, which are required to be metadata nodes. However, duplicate entries in the second list are dropped during the append operation.
LLVMModuleFlagBehavior_LLVMModuleFlagBehaviorError
Emits an error if two values disagree, otherwise the resulting value is that of the operands.
LLVMModuleFlagBehavior_LLVMModuleFlagBehaviorOverride
Uses the specified value, regardless of the behavior or value of the other module. If both modules specify Override, but the values differ, an error will be emitted.
LLVMModuleFlagBehavior_LLVMModuleFlagBehaviorRequire
Adds a requirement that another module flag be present and have a specified value after linking is performed. The value must be a metadata pair, where the first element of the pair is the ID of the module flag to be restricted, and the second element of the pair is the value the module flag should be restricted to. This behavior can be used to restrict the allowable results (via triggering of an error) of linking IDs with the Override behavior.
LLVMModuleFlagBehavior_LLVMModuleFlagBehaviorWarning
Emits a warning if two values disagree. The result value will be the operand for the flag from the first module being linked.
LLVMOpcode_LLVMAShr
LLVMOpcode_LLVMAdd
LLVMOpcode_LLVMAddrSpaceCast
LLVMOpcode_LLVMAlloca
LLVMOpcode_LLVMAnd
LLVMOpcode_LLVMAtomicCmpXchg
LLVMOpcode_LLVMAtomicRMW
LLVMOpcode_LLVMBitCast
LLVMOpcode_LLVMCall
LLVMOpcode_LLVMCallBr
LLVMOpcode_LLVMCatchPad
LLVMOpcode_LLVMCatchRet
LLVMOpcode_LLVMCatchSwitch
LLVMOpcode_LLVMCleanupPad
LLVMOpcode_LLVMCleanupRet
LLVMOpcode_LLVMCondBr
LLVMOpcode_LLVMExtractElement
LLVMOpcode_LLVMExtractValue
LLVMOpcode_LLVMFAdd
LLVMOpcode_LLVMFCmp
LLVMOpcode_LLVMFDiv
LLVMOpcode_LLVMFMul
LLVMOpcode_LLVMFNeg
LLVMOpcode_LLVMFPExt
LLVMOpcode_LLVMFPToSI
LLVMOpcode_LLVMFPToUI
LLVMOpcode_LLVMFPTrunc
LLVMOpcode_LLVMFRem
LLVMOpcode_LLVMFSub
LLVMOpcode_LLVMFence
LLVMOpcode_LLVMFreeze
LLVMOpcode_LLVMGetElementPtr
LLVMOpcode_LLVMICmp
LLVMOpcode_LLVMIndirectBr
LLVMOpcode_LLVMInsertElement
LLVMOpcode_LLVMInsertValue
LLVMOpcode_LLVMIntToPtr
LLVMOpcode_LLVMInvoke
LLVMOpcode_LLVMLShr
LLVMOpcode_LLVMLandingPad
LLVMOpcode_LLVMLoad
LLVMOpcode_LLVMMul
LLVMOpcode_LLVMOr
LLVMOpcode_LLVMPHI
LLVMOpcode_LLVMPtrToAddr
LLVMOpcode_LLVMPtrToInt
LLVMOpcode_LLVMResume
LLVMOpcode_LLVMRet
LLVMOpcode_LLVMSDiv
LLVMOpcode_LLVMSExt
LLVMOpcode_LLVMSIToFP
LLVMOpcode_LLVMSRem
LLVMOpcode_LLVMSelect
LLVMOpcode_LLVMShl
LLVMOpcode_LLVMShuffleVector
LLVMOpcode_LLVMStore
LLVMOpcode_LLVMSub
LLVMOpcode_LLVMSwitch
LLVMOpcode_LLVMTrunc
LLVMOpcode_LLVMUDiv
LLVMOpcode_LLVMUIToFP
LLVMOpcode_LLVMURem
LLVMOpcode_LLVMUncondBr
LLVMOpcode_LLVMUnreachable
LLVMOpcode_LLVMUserOp1
LLVMOpcode_LLVMUserOp2
LLVMOpcode_LLVMVAArg
LLVMOpcode_LLVMXor
LLVMOpcode_LLVMZExt
LLVMRealPredicate_LLVMRealOEQ
< True if ordered and equal
LLVMRealPredicate_LLVMRealOGE
< True if ordered and greater than or equal
LLVMRealPredicate_LLVMRealOGT
< True if ordered and greater than
LLVMRealPredicate_LLVMRealOLE
< True if ordered and less than or equal
LLVMRealPredicate_LLVMRealOLT
< True if ordered and less than
LLVMRealPredicate_LLVMRealONE
< True if ordered and operands are unequal
LLVMRealPredicate_LLVMRealORD
< True if ordered (no nans)
LLVMRealPredicate_LLVMRealPredicateFalse
< Always false (always folded)
LLVMRealPredicate_LLVMRealPredicateTrue
< Always true (always folded)
LLVMRealPredicate_LLVMRealUEQ
< True if unordered or equal
LLVMRealPredicate_LLVMRealUGE
< True if unordered, greater than, or equal
LLVMRealPredicate_LLVMRealUGT
< True if unordered or greater than
LLVMRealPredicate_LLVMRealULE
< True if unordered, less than, or equal
LLVMRealPredicate_LLVMRealULT
< True if unordered or less than
LLVMRealPredicate_LLVMRealUNE
< True if unordered or not equal
LLVMRealPredicate_LLVMRealUNO
< True if unordered: isnan(X) | isnan(Y)
LLVMTailCallKind_LLVMTailCallKindMustTail
LLVMTailCallKind_LLVMTailCallKindNoTail
LLVMTailCallKind_LLVMTailCallKindNone
LLVMTailCallKind_LLVMTailCallKindTail
LLVMThreadLocalMode_LLVMGeneralDynamicTLSModel
LLVMThreadLocalMode_LLVMInitialExecTLSModel
LLVMThreadLocalMode_LLVMLocalDynamicTLSModel
LLVMThreadLocalMode_LLVMLocalExecTLSModel
LLVMThreadLocalMode_LLVMNotThreadLocal
LLVMTypeKind_LLVMArrayTypeKind
< Arrays
LLVMTypeKind_LLVMBFloatTypeKind
< 16 bit brain floating point type
LLVMTypeKind_LLVMByteTypeKind
< Arbitrary bit width bytes
LLVMTypeKind_LLVMDoubleTypeKind
< 64 bit floating point type
LLVMTypeKind_LLVMFP128TypeKind
< 128 bit floating point type (112-bit mantissa)
LLVMTypeKind_LLVMFloatTypeKind
< 32 bit floating point type
LLVMTypeKind_LLVMFunctionTypeKind
< Functions
LLVMTypeKind_LLVMHalfTypeKind
< 16 bit floating point type
LLVMTypeKind_LLVMIntegerTypeKind
< Arbitrary bit width integers
LLVMTypeKind_LLVMLabelTypeKind
< Labels
LLVMTypeKind_LLVMMetadataTypeKind
< Metadata
LLVMTypeKind_LLVMPPC_FP128TypeKind
< 128 bit floating point type (two 64-bits)
LLVMTypeKind_LLVMPointerTypeKind
< Pointers
LLVMTypeKind_LLVMScalableVectorTypeKind
< Scalable SIMD vector type
LLVMTypeKind_LLVMStructTypeKind
< Structures
LLVMTypeKind_LLVMTargetExtTypeKind
< Target extension type
LLVMTypeKind_LLVMTokenTypeKind
< Tokens
LLVMTypeKind_LLVMVectorTypeKind
< Fixed width SIMD vector type
LLVMTypeKind_LLVMVoidTypeKind
< type with no size
LLVMTypeKind_LLVMX86_AMXTypeKind
< X86 AMX
LLVMTypeKind_LLVMX86_FP80TypeKind
< 80 bit floating point type (X87)
LLVMUnnamedAddr_LLVMGlobalUnnamedAddr
< Address of the GV is globally insignificant.
LLVMUnnamedAddr_LLVMLocalUnnamedAddr
< Address of the GV is locally insignificant.
LLVMUnnamedAddr_LLVMNoUnnamedAddr
< Address of the GV is significant.
LLVMValueKind_LLVMArgumentValueKind
LLVMValueKind_LLVMBasicBlockValueKind
LLVMValueKind_LLVMBlockAddressValueKind
LLVMValueKind_LLVMConstantAggregateZeroValueKind
LLVMValueKind_LLVMConstantArrayValueKind
LLVMValueKind_LLVMConstantByteValueKind
LLVMValueKind_LLVMConstantDataArrayValueKind
LLVMValueKind_LLVMConstantDataVectorValueKind
LLVMValueKind_LLVMConstantExprValueKind
LLVMValueKind_LLVMConstantFPValueKind
LLVMValueKind_LLVMConstantIntValueKind
LLVMValueKind_LLVMConstantPointerNullValueKind
LLVMValueKind_LLVMConstantPtrAuthValueKind
LLVMValueKind_LLVMConstantStructValueKind
LLVMValueKind_LLVMConstantTargetNoneValueKind
LLVMValueKind_LLVMConstantTokenNoneValueKind
LLVMValueKind_LLVMConstantVectorValueKind
LLVMValueKind_LLVMFunctionValueKind
LLVMValueKind_LLVMGlobalAliasValueKind
LLVMValueKind_LLVMGlobalIFuncValueKind
LLVMValueKind_LLVMGlobalVariableValueKind
LLVMValueKind_LLVMInlineAsmValueKind
LLVMValueKind_LLVMInstructionValueKind
LLVMValueKind_LLVMMemoryDefValueKind
LLVMValueKind_LLVMMemoryPhiValueKind
LLVMValueKind_LLVMMemoryUseValueKind
LLVMValueKind_LLVMMetadataAsValueValueKind
LLVMValueKind_LLVMPoisonValueValueKind
LLVMValueKind_LLVMUndefValueValueKind
LLVMVisibility_LLVMDefaultVisibility
< The GV is visible
LLVMVisibility_LLVMHiddenVisibility
< The GV is hidden
LLVMVisibility_LLVMProtectedVisibility
< The GV is protected
LLVM_DEFAULT_TARGET_TRIPLE
LLVM_ENABLE_DEBUGLOC_TRACKING_COVERAGE
LLVM_ENABLE_DEBUGLOC_TRACKING_ORIGIN
LLVM_ENABLE_DIA_SDK
LLVM_ENABLE_IO_SANDBOX
LLVM_ENABLE_ONDISK_CAS
LLVM_ENABLE_TELEMETRY
LLVM_ENABLE_THREADS
LLVM_ENABLE_ZLIB
LLVM_ENABLE_ZSTD
LLVM_FORCE_ENABLE_STATS
LLVM_HAS_ATOMICS
LLVM_HOST_TRIPLE
LLVM_ON_UNIX
LLVM_UNREACHABLE_OPTIMIZE
LLVM_USE_INTEL_JITEVENTS
LLVM_USE_OPROFILE
LLVM_USE_PERF
LLVM_VERSION_MAJOR
LLVM_VERSION_MINOR
LLVM_VERSION_PATCH
LLVM_VERSION_STRING
LLVM_WITH_Z3
MLIR_CAPI_DWARF_ADDRESS_SPACE_NULL
Constant to represent std::nullopt for dwarfAddressSpace to omit the field.
MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS
MLIR_ENABLE_NVPTXCOMPILER
MLIR_ENABLE_PDL_IN_PATTERNMATCH
MlirConversionTargetLegality_MLIR_CONVERSION_TARGET_LEGALITY_ILLEGAL
The operation instance is illegal.
MlirConversionTargetLegality_MLIR_CONVERSION_TARGET_LEGALITY_LEGAL
The operation instance is legal.
MlirConversionTargetLegality_MLIR_CONVERSION_TARGET_LEGALITY_NO_OPINION
The callback has no opinion on this instance. The decision is deferred to other registered callbacks (legality callbacks are composed) or, failing that, to the operation’s static legality action.
MlirDiagnosedSilenceableFailure_MlirDiagnosedSilenceableFailureDefiniteFailure
The operation failed definitively.
MlirDiagnosedSilenceableFailure_MlirDiagnosedSilenceableFailureSilenceableFailure
The operation failed in a silenceable way.
MlirDiagnosedSilenceableFailure_MlirDiagnosedSilenceableFailureSuccess
The operation succeeded.
MlirDiagnosticSeverity_MlirDiagnosticError
MlirDiagnosticSeverity_MlirDiagnosticNote
MlirDiagnosticSeverity_MlirDiagnosticRemark
MlirDiagnosticSeverity_MlirDiagnosticWarning
MlirDialectConversionFoldingMode_MLIR_DIALECT_CONVERSION_FOLDING_MODE_AFTER_PATTERNS
MlirDialectConversionFoldingMode_MLIR_DIALECT_CONVERSION_FOLDING_MODE_BEFORE_PATTERNS
MlirDialectConversionFoldingMode_MLIR_DIALECT_CONVERSION_FOLDING_MODE_NEVER
MlirEmitCCmpPredicate_MLIR_EMITC_CMP_PREDICATE_EQ
MlirEmitCCmpPredicate_MLIR_EMITC_CMP_PREDICATE_GE
MlirEmitCCmpPredicate_MLIR_EMITC_CMP_PREDICATE_GT
MlirEmitCCmpPredicate_MLIR_EMITC_CMP_PREDICATE_LE
MlirEmitCCmpPredicate_MLIR_EMITC_CMP_PREDICATE_LT
MlirEmitCCmpPredicate_MLIR_EMITC_CMP_PREDICATE_NE
MlirEmitCCmpPredicate_MLIR_EMITC_CMP_PREDICATE_THREE_WAY
MlirGreedyRewriteStrictness_MLIR_GREEDY_REWRITE_STRICTNESS_ANY_OP
No restrictions wrt. which ops are processed.
MlirGreedyRewriteStrictness_MLIR_GREEDY_REWRITE_STRICTNESS_EXISTING_AND_NEW_OPS
Only pre-existing and newly created ops are processed.
MlirGreedyRewriteStrictness_MLIR_GREEDY_REWRITE_STRICTNESS_EXISTING_OPS
Only pre-existing ops are processed.
MlirGreedySimplifyRegionLevel_MLIR_GREEDY_SIMPLIFY_REGION_LEVEL_AGGRESSIVE
Run extra simplifications (e.g. block merging).
MlirGreedySimplifyRegionLevel_MLIR_GREEDY_SIMPLIFY_REGION_LEVEL_DISABLED
Disable region control-flow simplification.
MlirGreedySimplifyRegionLevel_MLIR_GREEDY_SIMPLIFY_REGION_LEVEL_NORMAL
Run the normal simplification (e.g. dead args elimination).
MlirLLVMCConv_MlirLLVMCConvAArch64_SVE_VectorCall
MlirLLVMCConv_MlirLLVMCConvAArch64_VectorCall
MlirLLVMCConv_MlirLLVMCConvAMDGPU_CS
MlirLLVMCConv_MlirLLVMCConvAMDGPU_ES
MlirLLVMCConv_MlirLLVMCConvAMDGPU_GS
MlirLLVMCConv_MlirLLVMCConvAMDGPU_Gfx
MlirLLVMCConv_MlirLLVMCConvAMDGPU_HS
MlirLLVMCConv_MlirLLVMCConvAMDGPU_KERNEL
MlirLLVMCConv_MlirLLVMCConvAMDGPU_LS
MlirLLVMCConv_MlirLLVMCConvAMDGPU_VS
MlirLLVMCConv_MlirLLVMCConvARM_AAPCS
MlirLLVMCConv_MlirLLVMCConvARM_AAPCS_VFP
MlirLLVMCConv_MlirLLVMCConvARM_APCS
MlirLLVMCConv_MlirLLVMCConvAVR_BUILTIN
MlirLLVMCConv_MlirLLVMCConvAVR_INTR
MlirLLVMCConv_MlirLLVMCConvAnyReg
MlirLLVMCConv_MlirLLVMCConvC
MlirLLVMCConv_MlirLLVMCConvCFGuard_Check
MlirLLVMCConv_MlirLLVMCConvCXX_FAST_TLS
MlirLLVMCConv_MlirLLVMCConvCold
MlirLLVMCConv_MlirLLVMCConvDUMMY_HHVM
MlirLLVMCConv_MlirLLVMCConvDUMMY_HHVM_C
MlirLLVMCConv_MlirLLVMCConvFast
MlirLLVMCConv_MlirLLVMCConvGHC
MlirLLVMCConv_MlirLLVMCConvHiPE
MlirLLVMCConv_MlirLLVMCConvIntel_OCL_BI
MlirLLVMCConv_MlirLLVMCConvM68k_INTR
MlirLLVMCConv_MlirLLVMCConvMSP430_BUILTIN
MlirLLVMCConv_MlirLLVMCConvMSP430_INTR
MlirLLVMCConv_MlirLLVMCConvPTX_Device
MlirLLVMCConv_MlirLLVMCConvPTX_Kernel
MlirLLVMCConv_MlirLLVMCConvPreserveAll
MlirLLVMCConv_MlirLLVMCConvPreserveMost
MlirLLVMCConv_MlirLLVMCConvSPIR_FUNC
MlirLLVMCConv_MlirLLVMCConvSPIR_KERNEL
MlirLLVMCConv_MlirLLVMCConvSwift
MlirLLVMCConv_MlirLLVMCConvSwiftTail
MlirLLVMCConv_MlirLLVMCConvTail
MlirLLVMCConv_MlirLLVMCConvWASM_EmscriptenInvoke
MlirLLVMCConv_MlirLLVMCConvWin64
MlirLLVMCConv_MlirLLVMCConvX86_64_SysV
MlirLLVMCConv_MlirLLVMCConvX86_FastCall
MlirLLVMCConv_MlirLLVMCConvX86_INTR
MlirLLVMCConv_MlirLLVMCConvX86_RegCall
MlirLLVMCConv_MlirLLVMCConvX86_StdCall
MlirLLVMCConv_MlirLLVMCConvX86_ThisCall
MlirLLVMCConv_MlirLLVMCConvX86_VectorCall
MlirLLVMComdat_MlirLLVMComdatAny
MlirLLVMComdat_MlirLLVMComdatExactMatch
MlirLLVMComdat_MlirLLVMComdatLargest
MlirLLVMComdat_MlirLLVMComdatNoDeduplicate
MlirLLVMComdat_MlirLLVMComdatSameSize
MlirLLVMDIEmissionKind_MlirLLVMDIEmissionKindDebugDirectivesOnly
MlirLLVMDIEmissionKind_MlirLLVMDIEmissionKindFull
MlirLLVMDIEmissionKind_MlirLLVMDIEmissionKindLineTablesOnly
MlirLLVMDIEmissionKind_MlirLLVMDIEmissionKindNone
MlirLLVMDINameTableKind_MlirLLVMDINameTableKindApple
MlirLLVMDINameTableKind_MlirLLVMDINameTableKindDefault
MlirLLVMDINameTableKind_MlirLLVMDINameTableKindGNU
MlirLLVMDINameTableKind_MlirLLVMDINameTableKindNone
MlirLLVMLinkage_MlirLLVMLinkageAppending
MlirLLVMLinkage_MlirLLVMLinkageAvailableExternally
MlirLLVMLinkage_MlirLLVMLinkageCommon
MlirLLVMLinkage_MlirLLVMLinkageExternWeak
MlirLLVMLinkage_MlirLLVMLinkageExternal
MlirLLVMLinkage_MlirLLVMLinkageInternal
MlirLLVMLinkage_MlirLLVMLinkageLinkonce
MlirLLVMLinkage_MlirLLVMLinkageLinkonceODR
MlirLLVMLinkage_MlirLLVMLinkagePrivate
MlirLLVMLinkage_MlirLLVMLinkageWeak
MlirLLVMLinkage_MlirLLVMLinkageWeakODR
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingASCII
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingAddress
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingBoolean
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingComplexFloat
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingDecimalFloat
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingEdited
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingFloatT
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingHiUser
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingImaginaryFloat
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingLoUser
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingNumericString
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingPackedDecimal
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingSigned
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingSignedChar
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingSignedFixed
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingUCS
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingUTF
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingUnsigned
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingUnsignedChar
MlirLLVMTypeEncoding_MlirLLVMTypeEncodingUnsignedFixed
MlirPassDisplayMode_MLIR_PASS_DISPLAY_MODE_LIST
MlirPassDisplayMode_MLIR_PASS_DISPLAY_MODE_PIPELINE
MlirSparseTensorLevelFormat_MLIR_SPARSE_TENSOR_LEVEL_BATCH
MlirSparseTensorLevelFormat_MLIR_SPARSE_TENSOR_LEVEL_COMPRESSED
MlirSparseTensorLevelFormat_MLIR_SPARSE_TENSOR_LEVEL_DENSE
MlirSparseTensorLevelFormat_MLIR_SPARSE_TENSOR_LEVEL_LOOSE_COMPRESSED
MlirSparseTensorLevelFormat_MLIR_SPARSE_TENSOR_LEVEL_N_OUT_OF_M
MlirSparseTensorLevelFormat_MLIR_SPARSE_TENSOR_LEVEL_SINGLETON
MlirSparseTensorLevelPropertyNondefault_MLIR_SPARSE_PROPERTY_NON_ORDERED
MlirSparseTensorLevelPropertyNondefault_MLIR_SPARSE_PROPERTY_NON_UNIQUE
MlirSparseTensorLevelPropertyNondefault_MLIR_SPARSE_PROPERTY_SOA
MlirSpeculatability_MlirSpeculatabilityNotSpeculatable
The operation is not speculatable.
MlirSpeculatability_MlirSpeculatabilityRecursivelySpeculatable
The operation is speculatable if all nested operations are speculatable.
MlirSpeculatability_MlirSpeculatabilitySpeculatable
The operation is speculatable.
MlirWalkOrder_MlirWalkPostOrder
MlirWalkOrder_MlirWalkPreOrder
MlirWalkResult_MlirWalkResultAdvance
MlirWalkResult_MlirWalkResultInterrupt
MlirWalkResult_MlirWalkResultSkip
PDP_ENDIAN
PRIX8
PRIX16
PRIX32
PRIX64
PRIXFAST8
PRIXFAST16
PRIXFAST32
PRIXFAST64
PRIXLEAST8
PRIXLEAST16
PRIXLEAST32
PRIXLEAST64
PRIXMAX
PRIXPTR
PRId8
PRId16
PRId32
PRId64
PRIdFAST8
PRIdFAST16
PRIdFAST32
PRIdFAST64
PRIdLEAST8
PRIdLEAST16
PRIdLEAST32
PRIdLEAST64
PRIdMAX
PRIdPTR
PRIi8
PRIi16
PRIi32
PRIi64
PRIiFAST8
PRIiFAST16
PRIiFAST32
PRIiFAST64
PRIiLEAST8
PRIiLEAST16
PRIiLEAST32
PRIiLEAST64
PRIiMAX
PRIiPTR
PRIo8
PRIo16
PRIo32
PRIo64
PRIoFAST8
PRIoFAST16
PRIoFAST32
PRIoFAST64
PRIoLEAST8
PRIoLEAST16
PRIoLEAST32
PRIoLEAST64
PRIoMAX
PRIoPTR
PRIu8
PRIu16
PRIu32
PRIu64
PRIuFAST8
PRIuFAST16
PRIuFAST32
PRIuFAST64
PRIuLEAST8
PRIuLEAST16
PRIuLEAST32
PRIuLEAST64
PRIuMAX
PRIuPTR
PRIx8
PRIx16
PRIx32
PRIx64
PRIxFAST8
PRIxFAST16
PRIxFAST32
PRIxFAST64
PRIxLEAST8
PRIxLEAST16
PRIxLEAST32
PRIxLEAST64
PRIxMAX
PRIxPTR
PTRDIFF_MAX
PTRDIFF_MIN
SCNd8
SCNd16
SCNd32
SCNd64
SCNdFAST8
SCNdFAST16
SCNdFAST32
SCNdFAST64
SCNdLEAST8
SCNdLEAST16
SCNdLEAST32
SCNdLEAST64
SCNdMAX
SCNdPTR
SCNi8
SCNi16
SCNi32
SCNi64
SCNiFAST8
SCNiFAST16
SCNiFAST32
SCNiFAST64
SCNiLEAST8
SCNiLEAST16
SCNiLEAST32
SCNiLEAST64
SCNiMAX
SCNiPTR
SCNo8
SCNo16
SCNo32
SCNo64
SCNoFAST8
SCNoFAST16
SCNoFAST32
SCNoFAST64
SCNoLEAST8
SCNoLEAST16
SCNoLEAST32
SCNoLEAST64
SCNoMAX
SCNoPTR
SCNu8
SCNu16
SCNu32
SCNu64
SCNuFAST8
SCNuFAST16
SCNuFAST32
SCNuFAST64
SCNuLEAST8
SCNuLEAST16
SCNuLEAST32
SCNuLEAST64
SCNuMAX
SCNuPTR
SCNx8
SCNx16
SCNx32
SCNx64
SCNxFAST8
SCNxFAST16
SCNxFAST32
SCNxFAST64
SCNxLEAST8
SCNxLEAST16
SCNxLEAST32
SCNxLEAST64
SCNxMAX
SCNxPTR
SIG_ATOMIC_MAX
SIG_ATOMIC_MIN
SIZE_MAX
UINT8_MAX
UINT16_MAX
UINT32_MAX
UINTPTR_MAX
UINT_FAST8_MAX
UINT_FAST16_MAX
UINT_FAST32_MAX
UINT_LEAST8_MAX
UINT_LEAST16_MAX
UINT_LEAST32_MAX
WINT_MAX
WINT_MIN
_ATFILE_SOURCE
_BITS_BYTESWAP_H
_BITS_ENDIANNESS_H
_BITS_ENDIAN_H
_BITS_PTHREADTYPES_ARCH_H
_BITS_PTHREADTYPES_COMMON_H
_BITS_STDINT_INTN_H
_BITS_STDINT_LEAST_H
_BITS_STDINT_UINTN_H
_BITS_TIME64_H
_BITS_TYPESIZES_H
_BITS_TYPES_H
_BITS_UINTN_IDENTITY_H
_BITS_WCHAR_H
_DEFAULT_SOURCE
_ENDIAN_H
_FEATURES_H
_INTTYPES_H
_POSIX_C_SOURCE
_POSIX_SOURCE
_STDC_PREDEF_H
_STDINT_H
_STRUCT_TIMESPEC
_SYS_CDEFS_H
_SYS_SELECT_H
_SYS_TYPES_H
_THREAD_MUTEX_INTERNAL_H
_THREAD_SHARED_TYPES_H
__BIG_ENDIAN
__BIT_TYPES_DEFINED__
__BYTE_ORDER
__FD_SETSIZE
__FLOAT_WORD_ORDER
__GLIBC_MINOR__
__GLIBC_USE_C2X_STRTOL
__GLIBC_USE_DEPRECATED_GETS
__GLIBC_USE_DEPRECATED_SCANF
__GLIBC_USE_IEC_60559_BFP_EXT
__GLIBC_USE_IEC_60559_BFP_EXT_C2X
__GLIBC_USE_IEC_60559_EXT
__GLIBC_USE_IEC_60559_FUNCS_EXT
__GLIBC_USE_IEC_60559_FUNCS_EXT_C2X
__GLIBC_USE_IEC_60559_TYPES_EXT
__GLIBC_USE_ISOC2X
__GLIBC_USE_LIB_EXT2
__GLIBC__
__GNU_LIBRARY__
__HAVE_GENERIC_SELECTION
__INO_T_MATCHES_INO64_T
__KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64
__LDOUBLE_REDIRECTS_TO_FLOAT128_ABI
__LITTLE_ENDIAN
__OFF_T_MATCHES_OFF64_T
__PDP_ENDIAN
__PRI64_PREFIX
__PRIPTR_PREFIX
__PTHREAD_MUTEX_HAVE_PREV
__RLIM_T_MATCHES_RLIM64_T
__SIZEOF_PTHREAD_ATTR_T
__SIZEOF_PTHREAD_BARRIERATTR_T
__SIZEOF_PTHREAD_BARRIER_T
__SIZEOF_PTHREAD_CONDATTR_T
__SIZEOF_PTHREAD_COND_T
__SIZEOF_PTHREAD_MUTEXATTR_T
__SIZEOF_PTHREAD_MUTEX_T
__SIZEOF_PTHREAD_RWLOCKATTR_T
__SIZEOF_PTHREAD_RWLOCK_T
__STATFS_MATCHES_STATFS64
__STDC_IEC_559_COMPLEX__
__STDC_IEC_559__
__STDC_IEC_60559_BFP__
__STDC_IEC_60559_COMPLEX__
__STDC_ISO_10646__
__SYSCALL_WORDSIZE
__TIMESIZE
__USE_ATFILE
__USE_FORTIFY_LEVEL
__USE_ISOC11
__USE_ISOC95
__USE_ISOC99
__USE_MISC
__USE_POSIX
__USE_POSIX2
__USE_POSIX199309
__USE_POSIX199506
__USE_POSIX_IMPLICITLY
__USE_XOPEN2K
__USE_XOPEN2K8
__WORDSIZE
__WORDSIZE_TIME64_COMPAT32
____gwchar_t_defined
__bool_true_false_are_defined
__clock_t_defined
__clockid_t_defined
__glibc_c99_flexarr_available
__have_pthread_attr_t
__sigset_t_defined
__time_t_defined
__timer_t_defined
__timeval_defined
false_
true_

Functions§

LLVMAddAlias2⚠
Add a GlobalAlias with the given value type, address space and aliasee.
LLVMAddAttributeAtIndex⚠
Add an attribute to a function.
LLVMAddCallSiteAttribute⚠
LLVMAddCase⚠
LLVMAddClause⚠
LLVMAddDestination⚠
LLVMAddFunction⚠
Add a function to a module under a specified name.
LLVMAddGlobal⚠
@defgroup LLVMCoreValueConstantGlobalVariable Global Variables
LLVMAddGlobalIFunc⚠
Add a global indirect function to a module under a specified name.
LLVMAddGlobalInAddressSpace⚠
LLVMAddHandler⚠
LLVMAddIncoming⚠
Add an incoming value to the end of a PHI list.
LLVMAddMetadataToInst⚠
Same as LLVMSetInstDebugLocation.
LLVMAddModuleFlag⚠
Add a module-level flag to the module-level flags metadata if it doesn’t already exist.
LLVMAddNamedMetadataOperand⚠
Add an operand to named metadata.
LLVMAddSymbol⚠
This functions permanently adds the symbol \p symbolName with the value \p symbolValue. These symbols are searched before any libraries.
LLVMAddTargetDependentFunctionAttr⚠
Add a target-dependent attribute to a function @see llvm::AttrBuilder::addAttribute()
LLVMAliasGetAliasee⚠
Retrieve the target value of an alias.
LLVMAliasSetAliasee⚠
Set the target value of an alias.
LLVMAlignOf⚠
LLVMAppendBasicBlock⚠
Append a basic block to the end of a function using the global context.
LLVMAppendBasicBlockInContext⚠
Append a basic block to the end of a function.
LLVMAppendExistingBasicBlock⚠
Append the given basic block to the basic block list of the given function.
LLVMAppendModuleInlineAsm⚠
Append inline assembly to a module.
LLVMArrayType⚠
Create a fixed size array type that refers to a specific type.
LLVMArrayType2⚠
Create a fixed size array type that refers to a specific type.
LLVMBFloatType⚠
LLVMBFloatTypeInContext⚠
Obtain a 16-bit brain floating point type from a context.
LLVMBasicBlockAsValue⚠
Convert a basic block instance to a value type.
LLVMBlockAddress⚠
LLVMBuildAShr⚠
LLVMBuildAdd⚠
LLVMBuildAddrSpaceCast⚠
LLVMBuildAggregateRet⚠
LLVMBuildAlloca⚠
LLVMBuildAnd⚠
LLVMBuildArrayAlloca⚠
LLVMBuildArrayMalloc⚠
LLVMBuildAtomicCmpXchg⚠
LLVMBuildAtomicCmpXchgSyncScope⚠
LLVMBuildAtomicRMW⚠
LLVMBuildAtomicRMWSyncScope⚠
LLVMBuildBinOp⚠
LLVMBuildBitCast⚠
LLVMBuildBr⚠
LLVMBuildCall2⚠
LLVMBuildCallBr⚠
LLVMBuildCallWithOperandBundles⚠
LLVMBuildCast⚠
LLVMBuildCatchPad⚠
LLVMBuildCatchRet⚠
LLVMBuildCatchSwitch⚠
LLVMBuildCleanupPad⚠
LLVMBuildCleanupRet⚠
LLVMBuildCondBr⚠
LLVMBuildExactSDiv⚠
LLVMBuildExactUDiv⚠
LLVMBuildExtractElement⚠
LLVMBuildExtractValue⚠
LLVMBuildFAdd⚠
LLVMBuildFCmp⚠
LLVMBuildFDiv⚠
LLVMBuildFMul⚠
LLVMBuildFNeg⚠
LLVMBuildFPCast⚠
LLVMBuildFPExt⚠
LLVMBuildFPToSI⚠
LLVMBuildFPToUI⚠
LLVMBuildFPTrunc⚠
LLVMBuildFRem⚠
LLVMBuildFSub⚠
LLVMBuildFence⚠
LLVMBuildFenceSyncScope⚠
LLVMBuildFree⚠
LLVMBuildFreeze⚠
LLVMBuildGEP2⚠
LLVMBuildGEPWithNoWrapFlags⚠
Creates a GetElementPtr instruction. Similar to LLVMBuildGEP2, but allows specifying the no-wrap flags.
LLVMBuildGlobalString⚠
LLVMBuildGlobalStringPtr⚠
Deprecated: Use LLVMBuildGlobalString instead, which has identical behavior.
LLVMBuildICmp⚠
LLVMBuildInBoundsGEP2⚠
LLVMBuildIndirectBr⚠
LLVMBuildInsertElement⚠
LLVMBuildInsertValue⚠
LLVMBuildIntCast⚠
Deprecated: This cast is always signed. Use LLVMBuildIntCast2 instead.
LLVMBuildIntCast2⚠
LLVMBuildIntToPtr⚠
LLVMBuildInvoke2⚠
LLVMBuildInvokeWithOperandBundles⚠
LLVMBuildIsNotNull⚠
LLVMBuildIsNull⚠
LLVMBuildLShr⚠
LLVMBuildLandingPad⚠
LLVMBuildLoad2⚠
LLVMBuildMalloc⚠
LLVMBuildMemCpy⚠
Creates and inserts a memcpy between the specified pointers.
LLVMBuildMemMove⚠
Creates and inserts a memmove between the specified pointers.
LLVMBuildMemSet⚠
Creates and inserts a memset to the specified pointer and the specified value.
LLVMBuildMul⚠
LLVMBuildNSWAdd⚠
LLVMBuildNSWMul⚠
LLVMBuildNSWNeg⚠
LLVMBuildNSWSub⚠
LLVMBuildNUWAdd⚠
LLVMBuildNUWMul⚠
LLVMBuildNUWNeg⚠
LLVMBuildNUWSub⚠
LLVMBuildNeg⚠
LLVMBuildNot⚠
LLVMBuildOr⚠
LLVMBuildPhi⚠
LLVMBuildPointerCast⚠
LLVMBuildPtrDiff2⚠
LLVMBuildPtrToInt⚠
LLVMBuildResume⚠
LLVMBuildRet⚠
LLVMBuildRetVoid⚠
LLVMBuildSDiv⚠
LLVMBuildSExt⚠
LLVMBuildSExtOrBitCast⚠
LLVMBuildSIToFP⚠
LLVMBuildSRem⚠
LLVMBuildSelect⚠
LLVMBuildShl⚠
LLVMBuildShuffleVector⚠
LLVMBuildStore⚠
LLVMBuildStructGEP2⚠
LLVMBuildSub⚠
LLVMBuildSwitch⚠
LLVMBuildTrunc⚠
LLVMBuildTruncOrBitCast⚠
LLVMBuildUDiv⚠
LLVMBuildUIToFP⚠
LLVMBuildURem⚠
LLVMBuildUnreachable⚠
LLVMBuildVAArg⚠
LLVMBuildXor⚠
LLVMBuildZExt⚠
LLVMBuildZExtOrBitCast⚠
LLVMBuilderGetDefaultFPMathTag⚠
Get the dafult floating-point math metadata for a given builder.
LLVMBuilderSetDefaultFPMathTag⚠
Set the default floating-point math metadata for the given builder.
LLVMByteTypeInContext⚠
Obtain a byte type from a context with specified bit width.
LLVMCanValueUseFastMathFlags⚠
Check if a given value can potentially have fast math flags.
LLVMClearInsertionPosition⚠
LLVMCloneModule⚠
Return an exact copy of the specified module.
LLVMConstAdd⚠
LLVMConstAddrSpaceCast⚠
LLVMConstAllOnes⚠
Obtain a constant value referring to the instance of a type consisting of all ones.
LLVMConstArray⚠
Create a ConstantArray from values.
LLVMConstArray2⚠
Create a ConstantArray from values.
LLVMConstBitCast⚠
LLVMConstByte⚠
Obtain a constant value for a byte type.
LLVMConstByteGetSExtValue⚠
Obtain the sign extended value for a byte constant value.
LLVMConstByteGetZExtValue⚠
Obtain the zero extended value for a byte constant value.
LLVMConstByteOfArbitraryPrecision⚠
Obtain a constant value for a byte of arbitrary precision.
LLVMConstByteOfStringAndSize⚠
Obtain a constant value for a byte parsed from a string with specified length. @see llvm::ConstantByte::get()
LLVMConstDataArray⚠
Create a ConstantDataArray from raw values.
LLVMConstExtractElement⚠
LLVMConstFPFromBits⚠
Obtain a constant for a floating point value from array of 64 bit values. The length of the array N must be ceildiv(bits, 64), where bits is the scalar size in bits of the floating-point type.
LLVMConstGEP2⚠
LLVMConstGEPWithNoWrapFlags⚠
Creates a constant GetElementPtr expression. Similar to LLVMConstGEP2, but allows specifying the no-wrap flags.
LLVMConstInBoundsGEP2⚠
LLVMConstInlineAsm⚠
Deprecated: Use LLVMGetInlineAsm instead.
LLVMConstInsertElement⚠
LLVMConstInt⚠
Obtain a constant value for an integer type.
LLVMConstIntGetSExtValue⚠
Obtain the sign extended value for an integer constant value.
LLVMConstIntGetZExtValue⚠
Obtain the zero extended value for an integer constant value.
LLVMConstIntOfArbitraryPrecision⚠
Obtain a constant value for an integer of arbitrary precision.
LLVMConstIntOfString⚠
Obtain a constant value for an integer parsed from a string.
LLVMConstIntOfStringAndSize⚠
Obtain a constant value for an integer parsed from a string with specified length.
LLVMConstIntToPtr⚠
LLVMConstNSWAdd⚠
LLVMConstNSWNeg⚠
LLVMConstNSWSub⚠
LLVMConstNUWAdd⚠
LLVMConstNUWNeg⚠
LLVMConstNUWSub⚠
LLVMConstNamedStruct⚠
Create a non-anonymous ConstantStruct from values.
LLVMConstNeg⚠
LLVMConstNot⚠
LLVMConstNull⚠
Obtain a constant value referring to the null instance of a type.
LLVMConstPointerCast⚠
LLVMConstPointerNull⚠
Obtain a constant that is a constant pointer pointing to NULL for a specified type.
LLVMConstPtrToInt⚠
LLVMConstReal⚠
Obtain a constant value referring to a double floating point value.
LLVMConstRealGetDouble⚠
Obtain the double value for an floating point constant value. losesInfo indicates if some precision was lost in the conversion.
LLVMConstRealOfString⚠
Obtain a constant for a floating point value parsed from a string.
LLVMConstRealOfStringAndSize⚠
Obtain a constant for a floating point value parsed from a string.
LLVMConstShuffleVector⚠
LLVMConstString⚠
Create a ConstantDataSequential with string content in the global context.
LLVMConstStringInContext⚠
Create a ConstantDataSequential and initialize it with a string.
LLVMConstStringInContext2⚠
Create a ConstantDataSequential and initialize it with a string.
LLVMConstStruct⚠
Create a ConstantStruct in the global Context.
LLVMConstStructInContext⚠
Create an anonymous ConstantStruct with the specified values.
LLVMConstSub⚠
LLVMConstTrunc⚠
LLVMConstTruncOrBitCast⚠
LLVMConstVector⚠
Create a ConstantVector from values.
LLVMConstXor⚠
LLVMConstantPtrAuth⚠
Create a ConstantPtrAuth constant with the given values.
LLVMContextCreate⚠
Create a new context.
LLVMContextDispose⚠
Destroy a context instance.
LLVMContextGetDiagnosticContext⚠
Get the diagnostic context of this context.
LLVMContextGetDiagnosticHandler⚠
Get the diagnostic handler of this context.
LLVMContextSetDiagnosticHandler⚠
Set the diagnostic handler for this context.
LLVMContextSetDiscardValueNames⚠
Set whether the given context discards all value names.
LLVMContextSetYieldCallback⚠
Set the yield callback function for this context.
LLVMContextShouldDiscardValueNames⚠
Retrieve whether the given context is set to discard all value names.
LLVMCopyModuleFlagsMetadata⚠
Returns the module flags as an array of flag-key-value triples. The caller is responsible for freeing this array by calling \c LLVMDisposeModuleFlagsMetadata.
LLVMCountBasicBlocks⚠
Obtain the number of basic blocks in a function.
LLVMCountIncoming⚠
Obtain the number of incoming basic blocks to a PHI node.
LLVMCountParamTypes⚠
Obtain the number of parameters this function accepts.
LLVMCountParams⚠
Obtain the number of parameters in a function.
LLVMCountStructElementTypes⚠
Get the number of elements defined inside the structure.
LLVMCreateBasicBlockInContext⚠
Create a new basic block without inserting it into a function.
LLVMCreateBuilder⚠
LLVMCreateBuilderInContext⚠
@defgroup LLVMCCoreInstructionBuilder Instruction Builders
LLVMCreateConstantRangeAttribute⚠
Create a ConstantRange attribute.
LLVMCreateDenormalFPEnvAttribute⚠
Create a DenormalFPEnv attribute.
LLVMCreateEnumAttribute⚠
Create an enum attribute.
LLVMCreateFunctionPassManager⚠
Deprecated: Use LLVMCreateFunctionPassManagerForModule instead.
LLVMCreateFunctionPassManagerForModule⚠
Constructs a new function-by-function pass pipeline over the module provider. It does not take ownership of the module provider. This type of pipeline is suitable for code generation and JIT compilation tasks. @see llvm::FunctionPassManager::FunctionPassManager
LLVMCreateMemoryBufferWithContentsOfFile⚠
@defgroup LLVMCCoreMemoryBuffers Memory Buffers
LLVMCreateMemoryBufferWithMemoryRange⚠
LLVMCreateMemoryBufferWithMemoryRangeCopy⚠
LLVMCreateMemoryBufferWithSTDIN⚠
LLVMCreateMessage⚠
LLVMCreateModuleProviderForExistingModule⚠
Changes the type of M so it can be passed to FunctionPassManagers and the JIT. They take ModuleProviders for historical reasons.
LLVMCreateOperandBundle⚠
Create a new operand bundle.
LLVMCreatePassManager⚠
Constructs a new whole-module pass pipeline. This type of pipeline is suitable for link-time optimization and whole-module transformations. @see llvm::PassManager::PassManager
LLVMCreateStringAttribute⚠
Create a string attribute.
LLVMCreateTypeAttribute⚠
Create a type attribute
LLVMDbgRecordGetDebugLoc⚠
Get the debug location attached to the debug record.
LLVMDbgRecordGetKind⚠
LLVMDbgVariableRecordGetExpression⚠
Get the debug info expression of the DbgVariableRecord.
LLVMDbgVariableRecordGetValue⚠
Get the value of the DbgVariableRecord.
LLVMDbgVariableRecordGetVariable⚠
Get the debug info variable of the DbgVariableRecord.
LLVMDeleteBasicBlock⚠
Remove a basic block from a function and delete it.
LLVMDeleteFunction⚠
Remove a function from its containing module and deletes it.
LLVMDeleteGlobal⚠
LLVMDeleteInstruction⚠
Delete an instruction.
LLVMDisposeBuilder⚠
LLVMDisposeMemoryBuffer⚠
LLVMDisposeMessage⚠
LLVMDisposeModule⚠
Destroy a module instance.
LLVMDisposeModuleFlagsMetadata⚠
Destroys module flags metadata entries.
LLVMDisposeModuleProvider⚠
Destroys the module M.
LLVMDisposeOperandBundle⚠
Destroy an operand bundle.
LLVMDisposePassManager⚠
Frees the memory of a pass pipeline. For function pipelines, does not free the module provider. @see llvm::PassManagerBase::~PassManagerBase.
LLVMDisposeValueMetadataEntries⚠
Destroys value metadata entries.
LLVMDoubleType⚠
LLVMDoubleTypeInContext⚠
Obtain a 64-bit floating point type from a context.
LLVMDumpModule⚠
Dump a representation of a module to stderr.
LLVMDumpType⚠
Dump a representation of a type to stderr.
LLVMDumpValue⚠
Dump a representation of a value to stderr.
LLVMEnablePrettyStackTrace⚠
Enable LLVM’s built-in stack trace code. This intercepts the OS’s crash signals and prints which component of LLVM you were in at the time if the crash.
LLVMEraseGlobalIFunc⚠
Remove a global indirect function from its parent module and delete it.
LLVMFP128Type⚠
LLVMFP128TypeInContext⚠
Obtain a 128-bit floating point type (112-bit mantissa) from a context.
LLVMFinalizeFunctionPassManager⚠
Finalizes all of the function passes scheduled in the function pass manager. Returns 1 if any of the passes modified the module, 0 otherwise. @see llvm::FunctionPassManager::doFinalization
LLVMFloatType⚠
LLVMFloatTypeInContext⚠
Obtain a 32-bit floating point type from a context.
LLVMFunctionType⚠
Obtain a function type consisting of a specified signature.
LLVMGEPGetNoWrapFlags⚠
Get the no-wrap related flags for the given GEP instruction.
LLVMGEPSetNoWrapFlags⚠
Set the no-wrap related flags for the given GEP instruction.
LLVMGetAggregateElement⚠
Get element of a constant aggregate (struct, array or vector) at the specified index. Returns null if the index is out of range, or it’s not possible to determine the element (e.g., because the constant is a constant expression.)
LLVMGetAlignment⚠
Obtain the preferred alignment of the value. @see llvm::AllocaInst::getAlignment() @see llvm::LoadInst::getAlignment() @see llvm::StoreInst::getAlignment() @see llvm::AtomicRMWInst::setAlignment() @see llvm::AtomicCmpXchgInst::setAlignment() @see llvm::GlobalValue::getAlignment()
LLVMGetAllocatedType⚠
Obtain the type that is being allocated by the alloca instruction.
LLVMGetArgOperand⚠
LLVMGetArrayLength⚠
Obtain the length of an array type.
LLVMGetArrayLength2⚠
Obtain the length of an array type.
LLVMGetAsString⚠
Get the given constant data sequential as a string.
LLVMGetAtomicRMWBinOp⚠
LLVMGetAtomicSyncScopeID⚠
Returns the synchronization scope ID of an atomic instruction.
LLVMGetAttributeCountAtIndex⚠
LLVMGetAttributesAtIndex⚠
LLVMGetBasicBlockName⚠
Obtain the string name of a basic block.
LLVMGetBasicBlockParent⚠
Obtain the function to which a basic block belongs.
LLVMGetBasicBlockTerminator⚠
Obtain the terminator instruction for a basic block.
LLVMGetBasicBlocks⚠
Obtain all of the basic blocks in a function.
LLVMGetBlockAddressBasicBlock⚠
Gets the basic block associated with a given BlockAddress constant value.
LLVMGetBlockAddressFunction⚠
Gets the function associated with a given BlockAddress constant value.
LLVMGetBufferSize⚠
LLVMGetBufferStart⚠
LLVMGetBuilderContext⚠
Obtain the context to which this builder is associated.
LLVMGetByteTypeWidth⚠
LLVMGetCallBrDefaultDest⚠
Get the default destination of a CallBr instruction.
LLVMGetCallBrIndirectDest⚠
Get the indirect destination of a CallBr instruction at the given index.
LLVMGetCallBrNumIndirectDests⚠
Get the number of indirect destinations of a CallBr instruction.
LLVMGetCallSiteAttributeCount⚠
LLVMGetCallSiteAttributes⚠
LLVMGetCallSiteEnumAttribute⚠
LLVMGetCallSiteStringAttribute⚠
LLVMGetCalledFunctionType⚠
Obtain the function type called by this instruction.
LLVMGetCalledValue⚠
Obtain the pointer to the function invoked by this instruction.
LLVMGetCastOpcode⚠
LLVMGetClause⚠
LLVMGetCmpXchgFailureOrdering⚠
LLVMGetCmpXchgSuccessOrdering⚠
LLVMGetCondition⚠
Return the condition of a branch instruction.
LLVMGetConstOpcode⚠
@defgroup LLVMCCoreValueConstantExpressions Constant Expressions
LLVMGetConstantPtrAuthAddrDiscriminator⚠
Get the address discriminator value for the associated ConstantPtrAuth constant.
LLVMGetConstantPtrAuthDiscriminator⚠
Get the discriminator value for the associated ConstantPtrAuth constant.
LLVMGetConstantPtrAuthKey⚠
Get the key value for the associated ConstantPtrAuth constant.
LLVMGetConstantPtrAuthPointer⚠
Get the pointer value for the associated ConstantPtrAuth constant.
LLVMGetCurrentDebugLocation⚠
Deprecated: Returning the NULL location will crash. Use LLVMGetCurrentDebugLocation2 instead.
LLVMGetCurrentDebugLocation2⚠
Get location information used by debugging information.
LLVMGetDLLStorageClass⚠
LLVMGetDataLayout⚠
LLVMGetDataLayoutStr⚠
Obtain the data layout for a module.
LLVMGetDebugLocColumn⚠
Return the column number of the debug location for this value, which must be an llvm::Instruction.
LLVMGetDebugLocDirectory⚠
Return the directory of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function.
LLVMGetDebugLocFilename⚠
Return the filename of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function.
LLVMGetDebugLocLine⚠
Return the line number of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function.
LLVMGetDiagInfoDescription⚠
Return a string representation of the DiagnosticInfo. Use LLVMDisposeMessage to free the string.
LLVMGetDiagInfoSeverity⚠
Return an enum LLVMDiagnosticSeverity.
LLVMGetElementAsConstant⚠
Get an element at specified index as a constant.
LLVMGetElementType⚠
Obtain the element type of an array or vector type.
LLVMGetEntryBasicBlock⚠
Obtain the basic block that corresponds to the entry point of a function.
LLVMGetEnumAttributeAtIndex⚠
LLVMGetEnumAttributeKind⚠
Get the unique id corresponding to the enum attribute passed as argument.
LLVMGetEnumAttributeKindForName⚠
Return an unique id given the name of a enum attribute, or 0 if no attribute by that name exists.
LLVMGetEnumAttributeValue⚠
Get the enum attribute’s value. 0 is returned if none exists.
LLVMGetExact⚠
LLVMGetFCmpPredicate⚠
Obtain the float predicate of an instruction.
LLVMGetFastMathFlags⚠
Get the flags for which fast-math-style optimizations are allowed for this value.
LLVMGetFirstBasicBlock⚠
Obtain the first basic block in a function.
LLVMGetFirstDbgRecord⚠
Obtain the first debug record attached to an instruction.
LLVMGetFirstFunction⚠
Obtain an iterator to the first Function in a Module.
LLVMGetFirstGlobal⚠
LLVMGetFirstGlobalAlias⚠
Obtain an iterator to the first GlobalAlias in a Module.
LLVMGetFirstGlobalIFunc⚠
Obtain an iterator to the first GlobalIFunc in a Module.
LLVMGetFirstInstruction⚠
Obtain the first instruction in a basic block.
LLVMGetFirstNamedMetadata⚠
Obtain an iterator to the first NamedMDNode in a Module.
LLVMGetFirstParam⚠
Obtain the first parameter to a function.
LLVMGetFirstUse⚠
Obtain the first use of a value.
LLVMGetFunctionCallConv⚠
Obtain the calling function of a function.
LLVMGetGC⚠
Obtain the name of the garbage collector to use during code generation.
LLVMGetGEPSourceElementType⚠
Get the source element type of the given GEP operator.
LLVMGetGlobalContext⚠
Obtain the global context instance.
LLVMGetGlobalIFuncResolver⚠
Retrieves the resolver function associated with this indirect function, or NULL if it doesn’t not exist.
LLVMGetGlobalParent⚠
@defgroup LLVMCCoreValueConstantGlobals Global Values
LLVMGetHandlers⚠
Obtain the basic blocks acting as handlers for a catchswitch instruction.
LLVMGetICmpPredicate⚠
Obtain the predicate of an instruction.
LLVMGetICmpSameSign⚠
Get whether or not an icmp instruction has the samesign flag.
LLVMGetIncomingBlock⚠
Obtain an incoming value to a PHI node as an LLVMBasicBlockRef.
LLVMGetIncomingValue⚠
Obtain an incoming value to a PHI node as an LLVMValueRef.
LLVMGetIndices⚠
Obtain the indices as an array.
LLVMGetInitializer⚠
LLVMGetInlineAsm⚠
Create the specified uniqued inline asm string.
LLVMGetInlineAsmAsmString⚠
Get the template string used for an inline assembly snippet
LLVMGetInlineAsmCanUnwind⚠
Get if the inline asm snippet may unwind the stack
LLVMGetInlineAsmConstraintString⚠
Get the raw constraint string for an inline assembly snippet
LLVMGetInlineAsmDialect⚠
Get the dialect used by the inline asm snippet
LLVMGetInlineAsmFunctionType⚠
Get the function type of the inline assembly snippet. The same type that was passed into LLVMGetInlineAsm originally
LLVMGetInlineAsmHasSideEffects⚠
Get if the inline asm snippet has side effects
LLVMGetInlineAsmNeedsAlignedStack⚠
Get if the inline asm snippet needs an aligned stack
LLVMGetInsertBlock⚠
LLVMGetInstructionCallConv⚠
Obtain the calling convention for a call instruction.
LLVMGetInstructionOpcode⚠
Obtain the code opcode for an individual instruction.
LLVMGetInstructionParent⚠
Obtain the basic block to which an instruction belongs.
LLVMGetIntTypeWidth⚠
LLVMGetIntrinsicDeclaration⚠
Get or insert the declaration of an intrinsic. For overloaded intrinsics, overload types must be provided to uniquely identify an overload.
LLVMGetIntrinsicID⚠
Obtain the ID number from a function instance.
LLVMGetIsDisjoint⚠
Gets whether the instruction has the disjoint flag set. Only valid for or instructions.
LLVMGetLastBasicBlock⚠
Obtain the last basic block in a function.
LLVMGetLastDbgRecord⚠
Obtain the last debug record attached to an instruction.
LLVMGetLastEnumAttributeKind⚠
LLVMGetLastFunction⚠
Obtain an iterator to the last Function in a Module.
LLVMGetLastGlobal⚠
LLVMGetLastGlobalAlias⚠
Obtain an iterator to the last GlobalAlias in a Module.
LLVMGetLastGlobalIFunc⚠
Obtain an iterator to the last GlobalIFunc in a Module.
LLVMGetLastInstruction⚠
Obtain the last instruction in a basic block.
LLVMGetLastNamedMetadata⚠
Obtain an iterator to the last NamedMDNode in a Module.
LLVMGetLastParam⚠
Obtain the last parameter to a function.
LLVMGetLinkage⚠
LLVMGetMDKindID⚠
LLVMGetMDKindIDInContext⚠
LLVMGetMDNodeNumOperands⚠
Obtain the number of operands from an MDNode value.
LLVMGetMDNodeOperands⚠
Obtain the given MDNode’s operands.
LLVMGetMDString⚠
Obtain the underlying string from a MDString value.
LLVMGetMaskValue⚠
Get the mask value at position Elt in the mask of a ShuffleVector instruction.
LLVMGetMetadata⚠
Return metadata associated with an instruction value.
LLVMGetModuleContext⚠
Obtain the context to which this module is associated.
LLVMGetModuleFlag⚠
Add a module-level flag to the module-level flags metadata if it doesn’t already exist.
LLVMGetModuleIdentifier⚠
Obtain the identifier of a module.
LLVMGetModuleInlineAsm⚠
Get inline assembly for a module.
LLVMGetNNeg⚠
Gets if the instruction has the non-negative flag set. Only valid for zext instructions.
LLVMGetNSW⚠
LLVMGetNUW⚠
LLVMGetNamedFunction⚠
Obtain a Function value from a Module by its name.
LLVMGetNamedFunctionWithLength⚠
Obtain a Function value from a Module by its name.
LLVMGetNamedGlobal⚠
LLVMGetNamedGlobalAlias⚠
Obtain a GlobalAlias value from a Module by its name.
LLVMGetNamedGlobalIFunc⚠
Obtain a GlobalIFunc value from a Module by its name.
LLVMGetNamedGlobalWithLength⚠
LLVMGetNamedMetadata⚠
Retrieve a NamedMDNode with the given name, returning NULL if no such node exists.
LLVMGetNamedMetadataName⚠
Retrieve the name of a NamedMDNode.
LLVMGetNamedMetadataNumOperands⚠
Obtain the number of operands for named metadata in a module.
LLVMGetNamedMetadataOperands⚠
Obtain the named metadata operands for a module.
LLVMGetNextBasicBlock⚠
Advance a basic block iterator.
LLVMGetNextDbgRecord⚠
Obtain the next DbgRecord in the sequence or NULL if there are no more.
LLVMGetNextFunction⚠
Advance a Function iterator to the next Function.
LLVMGetNextGlobal⚠
LLVMGetNextGlobalAlias⚠
Advance a GlobalAlias iterator to the next GlobalAlias.
LLVMGetNextGlobalIFunc⚠
Advance a GlobalIFunc iterator to the next GlobalIFunc.
LLVMGetNextInstruction⚠
Obtain the instruction that occurs after the one specified.
LLVMGetNextNamedMetadata⚠
Advance a NamedMDNode iterator to the next NamedMDNode.
LLVMGetNextParam⚠
Obtain the next parameter to a function.
LLVMGetNextUse⚠
Obtain the next use of a value.
LLVMGetNormalDest⚠
Return the normal destination basic block.
LLVMGetNumArgOperands⚠
Obtain the argument count for a call instruction.
LLVMGetNumClauses⚠
LLVMGetNumContainedTypes⚠
Return the number of types in the derived type.
LLVMGetNumHandlers⚠
LLVMGetNumIndices⚠
Obtain the number of indices. NB: This also works on GEP operators.
LLVMGetNumMaskElements⚠
Get the number of elements in the mask of a ShuffleVector instruction.
LLVMGetNumOperandBundleArgs⚠
Obtain the number of operands for an operand bundle.
LLVMGetNumOperandBundles⚠
Obtain the number of operand bundles attached to this instruction.
LLVMGetNumOperands⚠
Obtain the number of operands in a llvm::User value.
LLVMGetNumSuccessors⚠
Return the number of successors that this terminator has.
LLVMGetOperand⚠
Obtain an operand at a specific index in a llvm::User value.
LLVMGetOperandBundleArgAtIndex⚠
Obtain the operand for an operand bundle at the given index.
LLVMGetOperandBundleAtIndex⚠
Obtain the operand bundle attached to this instruction at the given index. Use LLVMDisposeOperandBundle to free the operand bundle.
LLVMGetOperandBundleTag⚠
Obtain the tag of an operand bundle as a string.
LLVMGetOperandUse⚠
Obtain the use of an operand at a specific index in a llvm::User value.
LLVMGetOrInsertFunction⚠
Obtain or insert a function into a module.
LLVMGetOrInsertNamedMetadata⚠
Retrieve a NamedMDNode with the given name, creating a new node if no such node exists.
LLVMGetOrdering⚠
LLVMGetParam⚠
Obtain the parameter at the specified index.
LLVMGetParamParent⚠
Obtain the function to which this argument belongs.
LLVMGetParamTypes⚠
Obtain the types of a function’s parameters.
LLVMGetParams⚠
Obtain the parameters in a function.
LLVMGetParentCatchSwitch⚠
Get the parent catchswitch instruction of a catchpad instruction.
LLVMGetPersonalityFn⚠
Obtain the personality function attached to the function.
LLVMGetPointerAddressSpace⚠
Obtain the address space of a pointer type.
LLVMGetPoison⚠
Obtain a constant value referring to a poison value of a type.
LLVMGetPrefixData⚠
Gets the prefix data associated with a function. Only valid on functions, and only if LLVMHasPrefixData returns true. See https://llvm.org/docs/LangRef.html#prefix-data
LLVMGetPreviousBasicBlock⚠
Go backwards in a basic block iterator.
LLVMGetPreviousDbgRecord⚠
Obtain the previous DbgRecord in the sequence or NULL if there are no more.
LLVMGetPreviousFunction⚠
Decrement a Function iterator to the previous Function.
LLVMGetPreviousGlobal⚠
LLVMGetPreviousGlobalAlias⚠
Decrement a GlobalAlias iterator to the previous GlobalAlias.
LLVMGetPreviousGlobalIFunc⚠
Decrement a GlobalIFunc iterator to the previous GlobalIFunc.
LLVMGetPreviousInstruction⚠
Obtain the instruction that occurred before this one.
LLVMGetPreviousNamedMetadata⚠
Decrement a NamedMDNode iterator to the previous NamedMDNode.
LLVMGetPreviousParam⚠
Obtain the previous parameter to a function.
LLVMGetPrologueData⚠
Gets the prologue data associated with a function. Only valid on functions, and only if LLVMHasPrologueData returns true. See https://llvm.org/docs/LangRef.html#prologue-data
LLVMGetRawDataValues⚠
Get the raw, underlying bytes of the given constant data sequential.
LLVMGetReturnType⚠
Obtain the Type this function Type returns.
LLVMGetSection⚠
LLVMGetSourceFileName⚠
Obtain the module’s original source file name.
LLVMGetStringAttributeAtIndex⚠
LLVMGetStringAttributeKind⚠
Get the string attribute’s kind.
LLVMGetStringAttributeValue⚠
Get the string attribute’s value.
LLVMGetStructElementTypes⚠
Get the elements within a structure.
LLVMGetStructName⚠
Obtain the name of a structure.
LLVMGetSubtypes⚠
Returns type’s subtypes
LLVMGetSuccessor⚠
Return the specified successor.
LLVMGetSwitchCaseValue⚠
Obtain the case value for a successor of a switch instruction. i corresponds to the successor index. The first successor is the default destination, so i must be greater than zero.
LLVMGetSwitchDefaultDest⚠
Obtain the default destination basic block of a switch instruction.
LLVMGetSyncScopeID⚠
Maps a synchronization scope name to a ID unique within this context.
LLVMGetTailCallKind⚠
Obtain a tail call kind of the call instruction.
LLVMGetTarget⚠
Obtain the target triple for a module.
LLVMGetTargetExtTypeIntParam⚠
Get the int parameter at the given index for the target extension type.
LLVMGetTargetExtTypeName⚠
Obtain the name for this target extension type.
LLVMGetTargetExtTypeNumIntParams⚠
Obtain the number of int parameters for this target extension type.
LLVMGetTargetExtTypeNumTypeParams⚠
Obtain the number of type parameters for this target extension type.
LLVMGetTargetExtTypeTypeParam⚠
Get the type parameter at the given index for the target extension type.
LLVMGetThreadLocalMode⚠
LLVMGetTypeAttributeValue⚠
Get the type attribute’s value.
LLVMGetTypeByName⚠
Deprecated: Use LLVMGetTypeByName2 instead.
LLVMGetTypeByName2⚠
Obtain a Type from a context by its registered name.
LLVMGetTypeContext⚠
Obtain the context to which this type instance is associated.
LLVMGetTypeKind⚠
Obtain the enumerated type of a Type instance.
LLVMGetUndef⚠
Obtain a constant value referring to an undefined value of a type.
LLVMGetUndefMaskElem⚠
\returns a constant that specifies that the result of a \c ShuffleVectorInst is undefined.
LLVMGetUnnamedAddress⚠
LLVMGetUnwindDest⚠
Return the unwind destination basic block.
LLVMGetUsedValue⚠
Obtain the value this use corresponds to.
LLVMGetUser⚠
Obtain the user value for a user.
LLVMGetValueContext⚠
Obtain the context to which this value is associated.
LLVMGetValueKind⚠
Obtain the enumerated type of a Value instance.
LLVMGetValueName⚠
Deprecated: Use LLVMGetValueName2 instead.
LLVMGetValueName2⚠
Obtain the string name of a value.
LLVMGetVectorSize⚠
Obtain the (possibly scalable) number of elements in a vector type.
LLVMGetVersion⚠
Return the major, minor, and patch version of LLVM
LLVMGetVisibility⚠
LLVMGetVolatile⚠
LLVMGetWeak⚠
LLVMGlobalAddDebugInfo⚠
Add debuginfo metadata to this global.
LLVMGlobalAddMetadata⚠
Adds a metadata attachment.
LLVMGlobalClearMetadata⚠
Removes all metadata attachments from this value.
LLVMGlobalCopyAllMetadata⚠
Retrieves an array of metadata entries representing the metadata attached to this value. The caller is responsible for freeing this array by calling \c LLVMDisposeValueMetadataEntries.
LLVMGlobalEraseMetadata⚠
Erases a metadata attachment of the given kind if it exists.
LLVMGlobalGetValueType⚠
Returns the “value type” of a global value. This differs from the formal type of a global value which is always a pointer type.
LLVMGlobalSetMetadata⚠
Sets a metadata attachment, erasing the existing metadata attachment if it already exists for the given kind.
LLVMHalfType⚠
Obtain a floating point type from the global context.
LLVMHalfTypeInContext⚠
Obtain a 16-bit floating point type from a context.
LLVMHasMetadata⚠
Determine whether an instruction has any metadata attached.
LLVMHasPersonalityFn⚠
Check whether the given function has a personality function.
LLVMHasPrefixData⚠
Check if a given function has prefix data. Only valid on functions. See https://llvm.org/docs/LangRef.html#prefix-data
LLVMHasPrologueData⚠
Check if a given function has prologue data. Only valid on functions. See https://llvm.org/docs/LangRef.html#prologue-data
LLVMHasUnnamedAddr⚠
Deprecated: Use LLVMGetUnnamedAddress instead.
LLVMInitializeFunctionPassManager⚠
Initializes all of the function passes scheduled in the function pass manager. Returns 1 if any of the passes modified the module, 0 otherwise. @see llvm::FunctionPassManager::doInitialization
LLVMInsertBasicBlock⚠
Insert a basic block in a function using the global context.
LLVMInsertBasicBlockInContext⚠
Insert a basic block in a function before another basic block.
LLVMInsertExistingBasicBlockAfterInsertBlock⚠
Insert the given basic block after the insertion point of the given builder.
LLVMInsertIntoBuilder⚠
LLVMInsertIntoBuilderWithName⚠
LLVMInstallFatalErrorHandler⚠
Install a fatal error handler. By default, if LLVM detects a fatal error, it will call exit(1). This may not be appropriate in many contexts. For example, doing exit(1) will bypass many crash reporting/tracing system tools. This function allows you to install a callback that will be invoked prior to the call to exit(1).
LLVMInstructionClone⚠
Create a copy of ‘this’ instruction that is identical in all ways except the following:
LLVMInstructionEraseFromParent⚠
Remove and delete an instruction.
LLVMInstructionGetAllMetadataOtherThanDebugLoc⚠
Returns the metadata associated with an instruction value, but filters out all the debug locations.
LLVMInstructionRemoveFromParent⚠
Remove an instruction.
LLVMInt1Type⚠
Obtain an integer type from the global context with a specified bit width.
LLVMInt1TypeInContext⚠
Obtain an integer type from a context with specified bit width.
LLVMInt8Type⚠
LLVMInt8TypeInContext⚠
LLVMInt16Type⚠
LLVMInt16TypeInContext⚠
LLVMInt32Type⚠
LLVMInt32TypeInContext⚠
LLVMInt64Type⚠
LLVMInt64TypeInContext⚠
LLVMInt128Type⚠
LLVMInt128TypeInContext⚠
LLVMIntType⚠
LLVMIntTypeInContext⚠
LLVMIntrinsicCopyOverloadedName⚠
Deprecated: Use LLVMIntrinsicCopyOverloadedName2 instead.
LLVMIntrinsicCopyOverloadedName2⚠
Copies the name of an overloaded intrinsic identified by a given list of overload types.
LLVMIntrinsicGetName⚠
Retrieves the name of an intrinsic.
LLVMIntrinsicGetType⚠
Retrieves the type of an intrinsic. For overloaded intrinsics, overload types must be provided to uniquely identify an overload.
LLVMIntrinsicIsOverloaded⚠
Obtain if the intrinsic identified by the given ID is overloaded.
LLVMIsAAddrSpaceCastInst⚠
LLVMIsAAllocaInst⚠
LLVMIsAArgument⚠
LLVMIsAAtomicCmpXchgInst⚠
LLVMIsAAtomicRMWInst⚠
LLVMIsABasicBlock⚠
LLVMIsABinaryOperator⚠
LLVMIsABitCastInst⚠
LLVMIsABlockAddress⚠
LLVMIsABranchInst⚠
LLVMIsACallBrInst⚠
LLVMIsACallInst⚠
LLVMIsACastInst⚠
LLVMIsACatchPadInst⚠
LLVMIsACatchReturnInst⚠
LLVMIsACatchSwitchInst⚠
LLVMIsACleanupPadInst⚠
LLVMIsACleanupReturnInst⚠
LLVMIsACmpInst⚠
LLVMIsACondBrInst⚠
LLVMIsAConstant⚠
LLVMIsAConstantAggregateZero⚠
LLVMIsAConstantArray⚠
LLVMIsAConstantByte⚠
LLVMIsAConstantDataArray⚠
LLVMIsAConstantDataSequential⚠
LLVMIsAConstantDataVector⚠
LLVMIsAConstantExpr⚠
LLVMIsAConstantFP⚠
LLVMIsAConstantInt⚠
LLVMIsAConstantPointerNull⚠
LLVMIsAConstantPtrAuth⚠
LLVMIsAConstantStruct⚠
LLVMIsAConstantTokenNone⚠
LLVMIsAConstantVector⚠
LLVMIsADbgDeclareInst⚠
LLVMIsADbgInfoIntrinsic⚠
LLVMIsADbgLabelInst⚠
LLVMIsADbgVariableIntrinsic⚠
LLVMIsAExtractElementInst⚠
LLVMIsAExtractValueInst⚠
LLVMIsAFCmpInst⚠
LLVMIsAFPExtInst⚠
LLVMIsAFPToSIInst⚠
LLVMIsAFPToUIInst⚠
LLVMIsAFPTruncInst⚠
LLVMIsAFenceInst⚠
LLVMIsAFreezeInst⚠
LLVMIsAFuncletPadInst⚠
LLVMIsAFunction⚠
LLVMIsAGetElementPtrInst⚠
LLVMIsAGlobalAlias⚠
LLVMIsAGlobalIFunc⚠
LLVMIsAGlobalObject⚠
LLVMIsAGlobalValue⚠
LLVMIsAGlobalVariable⚠
LLVMIsAICmpInst⚠
LLVMIsAIndirectBrInst⚠
LLVMIsAInlineAsm⚠
LLVMIsAInsertElementInst⚠
LLVMIsAInsertValueInst⚠
LLVMIsAInstruction⚠
LLVMIsAIntToPtrInst⚠
LLVMIsAIntrinsicInst⚠
LLVMIsAInvokeInst⚠
LLVMIsALandingPadInst⚠
LLVMIsALoadInst⚠
LLVMIsAMDNode⚠
LLVMIsAMDString⚠
LLVMIsAMemCpyInst⚠
LLVMIsAMemIntrinsic⚠
LLVMIsAMemMoveInst⚠
LLVMIsAMemSetInst⚠
LLVMIsAPHINode⚠
LLVMIsAPoisonValue⚠
LLVMIsAPtrToIntInst⚠
LLVMIsAResumeInst⚠
LLVMIsAReturnInst⚠
LLVMIsASExtInst⚠
LLVMIsASIToFPInst⚠
LLVMIsASelectInst⚠
LLVMIsAShuffleVectorInst⚠
LLVMIsAStoreInst⚠
LLVMIsASwitchInst⚠
LLVMIsATerminatorInst⚠
Determine whether an instruction is a terminator. This routine is named to be compatible with historical functions that did this by querying the underlying C++ type.
LLVMIsATruncInst⚠
LLVMIsAUIToFPInst⚠
LLVMIsAUnaryInstruction⚠
LLVMIsAUnaryOperator⚠
LLVMIsAUncondBrInst⚠
LLVMIsAUndefValue⚠
LLVMIsAUnreachableInst⚠
LLVMIsAUser⚠
LLVMIsAVAArgInst⚠
LLVMIsAValueAsMetadata⚠
LLVMIsAZExtInst⚠
LLVMIsAtomic⚠
Returns whether an instruction is an atomic instruction, e.g., atomicrmw, cmpxchg, fence, or loads and stores with atomic ordering.
LLVMIsAtomicSingleThread⚠
LLVMIsCleanup⚠
LLVMIsConditional⚠
Return if an instruction is a conditional branch.
LLVMIsConstant⚠
Determine whether the specified value instance is constant.
LLVMIsConstantString⚠
Returns true if the specified constant is an array of i8.
LLVMIsDeclaration⚠
LLVMIsEnumAttribute⚠
Check for the different types of attributes.
LLVMIsExternallyInitialized⚠
LLVMIsFunctionVarArg⚠
Returns whether a function type is variadic.
LLVMIsGlobalConstant⚠
LLVMIsInBounds⚠
Check whether the given GEP operator is inbounds.
LLVMIsLiteralStruct⚠
Determine whether a structure is literal.
LLVMIsMultithreaded⚠
Check whether LLVM is executing in thread-safe mode or not. @see llvm::llvm_is_multithreaded
LLVMIsNewDbgInfoFormat⚠
Soon to be deprecated. See https://llvm.org/docs/RemoveDIsDebugInfo.html#c-api-changes
LLVMIsNull⚠
Determine whether a value instance is null.
LLVMIsOpaqueStruct⚠
Determine whether a structure is opaque.
LLVMIsPackedStruct⚠
Determine whether a structure is packed.
LLVMIsPoison⚠
Determine whether a value instance is poisonous.
LLVMIsStringAttribute⚠
LLVMIsTailCall⚠
Obtain whether a call instruction is a tail call.
LLVMIsThreadLocal⚠
LLVMIsTypeAttribute⚠
LLVMIsUndef⚠
Determine whether a value instance is undefined.
LLVMLabelType⚠
LLVMLabelTypeInContext⚠
Create a label type in a context.
LLVMLoadLibraryPermanently⚠
This function permanently loads the dynamic library at the given path. It is safe to call this function multiple times for the same library.
LLVMLookupIntrinsicID⚠
Obtain the intrinsic ID number which matches the given function name.
LLVMMDNode⚠
Deprecated: Use LLVMMDNodeInContext2 instead.
LLVMMDNodeInContext⚠
Deprecated: Use LLVMMDNodeInContext2 instead.
LLVMMDNodeInContext2⚠
Create an MDNode value with the given array of operands.
LLVMMDString⚠
Deprecated: Use LLVMMDStringInContext2 instead.
LLVMMDStringInContext⚠
Deprecated: Use LLVMMDStringInContext2 instead.
LLVMMDStringInContext2⚠
Create an MDString value from a given string value.
LLVMMetadataAsValue⚠
Obtain a Metadata as a Value.
LLVMMetadataTypeInContext⚠
Create a metadata type in a context.
LLVMModuleCreateWithName⚠
Create a new, empty module in the global context.
LLVMModuleCreateWithNameInContext⚠
Create a new, empty module in a specific context.
LLVMModuleFlagEntriesGetFlagBehavior⚠
Returns the flag behavior for a module flag entry at a specific index.
LLVMModuleFlagEntriesGetKey⚠
Returns the key for a module flag entry at a specific index.
LLVMModuleFlagEntriesGetMetadata⚠
Returns the metadata for a module flag entry at a specific index.
LLVMMoveBasicBlockAfter⚠
Move a basic block to after another one.
LLVMMoveBasicBlockBefore⚠
Move a basic block to before another one.
LLVMPPCFP128Type⚠
LLVMPPCFP128TypeInContext⚠
Obtain a 128-bit floating point type (two 64-bits) from a context.
LLVMParseCommandLineOptions⚠
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.
LLVMPointerType⚠
Create a pointer type that points to a defined type.
LLVMPointerTypeInContext⚠
Create an opaque pointer type in a context.
LLVMPointerTypeIsOpaque⚠
Determine whether a pointer is opaque.
LLVMPositionBuilder⚠
Set the builder position before Instr but after any attached debug records, or if Instr is null set the position to the end of Block.
LLVMPositionBuilderAtEnd⚠
LLVMPositionBuilderBefore⚠
Set the builder position before Instr but after any attached debug records.
LLVMPositionBuilderBeforeDbgRecords⚠
Set the builder position before Instr and any attached debug records, or if Instr is null set the position to the end of Block.
LLVMPositionBuilderBeforeInstrAndDbgRecords⚠
Set the builder position before Instr and any attached debug records.
LLVMPrintDbgRecordToString⚠
Return a string representation of the DbgRecord. Use LLVMDisposeMessage to free the string.
LLVMPrintModuleToFile⚠
Print a representation of a module to a file. The ErrorMessage needs to be disposed with LLVMDisposeMessage. Returns 0 on success, 1 otherwise.
LLVMPrintModuleToString⚠
Return a string representation of the module. Use LLVMDisposeMessage to free the string.
LLVMPrintTypeToString⚠
Return a string representation of the type. Use LLVMDisposeMessage to free the string.
LLVMPrintValueToString⚠
Return a string representation of the value. Use LLVMDisposeMessage to free the string.
LLVMRemoveBasicBlockFromParent⚠
Remove a basic block from a function.
LLVMRemoveCallSiteEnumAttribute⚠
LLVMRemoveCallSiteStringAttribute⚠
LLVMRemoveEnumAttributeAtIndex⚠
LLVMRemoveGlobalIFunc⚠
Remove a global indirect function from its parent module.
LLVMRemoveStringAttributeAtIndex⚠
LLVMReplaceAllUsesWith⚠
Replace all uses of a value with another one.
LLVMReplaceMDNodeOperandWith⚠
Replace an operand at a specific index in a llvm::MDNode value.
LLVMResetFatalErrorHandler⚠
Reset the fatal error handler. This resets LLVM’s fatal error handling behavior to the default.
LLVMRunFunctionPassManager⚠
Executes all of the function passes scheduled in the function pass manager on the provided function. Returns 1 if any of the passes modified the function, false otherwise. @see llvm::FunctionPassManager::run(Function&)
LLVMRunPassManager⚠
Initializes, executes on the provided module, and finalizes all of the passes scheduled in the pass manager. Returns 1 if any of the passes modified the module, 0 otherwise. @see llvm::PassManager::run(Module&)
LLVMScalableVectorType⚠
Create a vector type that contains a defined type and has a scalable number of elements.
LLVMSearchForAddressOfSymbol⚠
This function will search through all previously loaded dynamic libraries for the symbol \p symbolName. If it is found, the address of that symbol is returned. If not, null is returned.
LLVMSetAlignment⚠
Set the preferred alignment of the value. @see llvm::AllocaInst::setAlignment() @see llvm::LoadInst::setAlignment() @see llvm::StoreInst::setAlignment() @see llvm::AtomicRMWInst::setAlignment() @see llvm::AtomicCmpXchgInst::setAlignment() @see llvm::GlobalValue::setAlignment()
LLVMSetArgOperand⚠
LLVMSetAtomicRMWBinOp⚠
LLVMSetAtomicSingleThread⚠
LLVMSetAtomicSyncScopeID⚠
Sets the synchronization scope ID of an atomic instruction.
LLVMSetCleanup⚠
LLVMSetCmpXchgFailureOrdering⚠
LLVMSetCmpXchgSuccessOrdering⚠
LLVMSetCondition⚠
Set the condition of a branch instruction.
LLVMSetCurrentDebugLocation⚠
Deprecated: Passing the NULL location will crash. Use LLVMGetCurrentDebugLocation2 instead.
LLVMSetCurrentDebugLocation2⚠
Set location information used by debugging information.
LLVMSetDLLStorageClass⚠
LLVMSetDataLayout⚠
Set the data layout for a module.
LLVMSetExact⚠
LLVMSetExternallyInitialized⚠
LLVMSetFastMathFlags⚠
Sets the flags for which fast-math-style optimizations are allowed for this value.
LLVMSetFunctionCallConv⚠
Set the calling convention of a function.
LLVMSetGC⚠
Define the garbage collector to use during code generation.
LLVMSetGlobalConstant⚠
LLVMSetGlobalIFuncResolver⚠
Sets the resolver function associated with this indirect function.
LLVMSetICmpSameSign⚠
Set the samesign flag on an icmp instruction.
LLVMSetInitializer⚠
LLVMSetInstDebugLocation⚠
Attempts to set the debug location for the given instruction using the current debug location for the given builder. If the builder has no current debug location, this function is a no-op.
LLVMSetInstrParamAlignment⚠
LLVMSetInstructionCallConv⚠
Set the calling convention for a call instruction.
LLVMSetIsDisjoint⚠
Sets the disjoint flag for the instruction. Only valid for or instructions.
LLVMSetIsInBounds⚠
Set the given GEP instruction to be inbounds or not.
LLVMSetIsNewDbgInfoFormat⚠
Soon to be deprecated. See https://llvm.org/docs/RemoveDIsDebugInfo.html#c-api-changes
LLVMSetLinkage⚠
LLVMSetMetadata⚠
Set metadata associated with an instruction value.
LLVMSetModuleIdentifier⚠
Set the identifier of a module to a string Ident with length Len.
LLVMSetModuleInlineAsm⚠
Deprecated: Use LLVMSetModuleInlineAsm2 instead.
LLVMSetModuleInlineAsm2⚠
Set inline assembly for a module.
LLVMSetNNeg⚠
Sets the non-negative flag for the instruction. Only valid for zext instructions.
LLVMSetNSW⚠
LLVMSetNUW⚠
LLVMSetNormalDest⚠
Set the normal destination basic block.
LLVMSetOperand⚠
Set an operand at a specific index in a llvm::User value.
LLVMSetOrdering⚠
LLVMSetParamAlignment⚠
Set the alignment for a function parameter.
LLVMSetParentCatchSwitch⚠
Set the parent catchswitch instruction of a catchpad instruction.
LLVMSetPersonalityFn⚠
Set the personality function attached to the function.
LLVMSetPrefixData⚠
Sets the prefix data for the function. Only valid on functions. See https://llvm.org/docs/LangRef.html#prefix-data
LLVMSetPrologueData⚠
Sets the prologue data for the function. Only valid on functions. See https://llvm.org/docs/LangRef.html#prologue-data
LLVMSetSection⚠
LLVMSetSourceFileName⚠
Set the original source file name of a module to a string Name with length Len.
LLVMSetSuccessor⚠
Update the specified successor to point at the provided block.
LLVMSetSwitchCaseValue⚠
Set the case value for a successor of a switch instruction. i corresponds to the successor index. The first successor is the default destination, so i must be greater than zero.
LLVMSetTailCall⚠
Set whether a call instruction is a tail call.
LLVMSetTailCallKind⚠
Set the call kind of the call instruction.
LLVMSetTarget⚠
Set the target triple for a module.
LLVMSetThreadLocal⚠
LLVMSetThreadLocalMode⚠
LLVMSetUnnamedAddr⚠
Deprecated: Use LLVMSetUnnamedAddress instead.
LLVMSetUnnamedAddress⚠
LLVMSetUnwindDest⚠
Set the unwind destination basic block.
LLVMSetValueName⚠
Deprecated: Use LLVMSetValueName2 instead.
LLVMSetValueName2⚠
Set the string name of a value.
LLVMSetVisibility⚠
LLVMSetVolatile⚠
LLVMSetWeak⚠
LLVMShutdown⚠
Deallocate and destroy all ManagedStatic variables. @see llvm::llvm_shutdown @see ManagedStatic
LLVMSizeOf⚠
LLVMStartMultithreaded⚠
Deprecated: Multi-threading can only be enabled/disabled with the compile time define LLVM_ENABLE_THREADS. This function always returns LLVMIsMultithreaded().
LLVMStopMultithreaded⚠
Deprecated: Multi-threading can only be enabled/disabled with the compile time define LLVM_ENABLE_THREADS.
LLVMStructCreateNamed⚠
Create an empty structure in a context having a specified name.
LLVMStructGetTypeAtIndex⚠
Get the type of the element at a given index in the structure.
LLVMStructSetBody⚠
Set the contents of a structure type.
LLVMStructType⚠
Create a new structure type in the global context.
LLVMStructTypeInContext⚠
Create a new structure type in a context.
LLVMTargetExtTypeInContext⚠
Create a target extension type in LLVM context.
LLVMTokenTypeInContext⚠
Create a token type in a context.
LLVMTypeIsSized⚠
Whether the type has a known size.
LLVMTypeOf⚠
Obtain the type of a value.
LLVMValueAsBasicBlock⚠
Convert an LLVMValueRef to an LLVMBasicBlockRef instance.
LLVMValueAsMetadata⚠
Obtain a Value as a Metadata.
LLVMValueIsBasicBlock⚠
Determine whether an LLVMValueRef is itself a basic block.
LLVMValueMetadataEntriesGetKind⚠
Returns the kind of a value metadata entry at a specific index.
LLVMValueMetadataEntriesGetMetadata⚠
Returns the underlying metadata node of a value metadata entry at a specific index.
LLVMVectorType⚠
Create a vector type that contains a defined type and has a specific number of elements.
LLVMVoidType⚠
These are similar to the above functions except they operate on the global context.
LLVMVoidTypeInContext⚠
Create a void type in a context.
LLVMX86AMXType⚠
LLVMX86AMXTypeInContext⚠
Create a X86 AMX type in a context.
LLVMX86FP80Type⚠
LLVMX86FP80TypeInContext⚠
Obtain a 80-bit floating point type (X87) from a context.
imaxabs⚠
imaxdiv⚠
mlirAMDGPUTDMBaseTypeGet⚠
mlirAMDGPUTDMBaseTypeGetName⚠
mlirAMDGPUTDMBaseTypeGetTypeID⚠
mlirAMDGPUTDMDescriptorTypeGet⚠
mlirAMDGPUTDMDescriptorTypeGetName⚠
mlirAMDGPUTDMDescriptorTypeGetTypeID⚠
mlirAMDGPUTDMGatherBaseTypeGet⚠
mlirAMDGPUTDMGatherBaseTypeGetName⚠
mlirAMDGPUTDMGatherBaseTypeGetTypeID⚠
mlirAffineAddExprGet⚠
Creates an affine add expression with ‘lhs’ and ‘rhs’.
mlirAffineBinaryOpExprGetLHS⚠
Returns the left hand side affine expression of the given affine binary operation expression.
mlirAffineBinaryOpExprGetRHS⚠
Returns the right hand side affine expression of the given affine binary operation expression.
mlirAffineCeilDivExprGet⚠
Creates an affine ceildiv expression with ‘lhs’ and ‘rhs’.
mlirAffineConstantExprGet⚠
Creates an affine constant expression with ‘constant’ in the context.
mlirAffineConstantExprGetValue⚠
Returns the value of the given affine constant expression.
mlirAffineDimExprGet⚠
Creates an affine dimension expression with ‘position’ in the context.
mlirAffineDimExprGetPosition⚠
Returns the position of the given affine dimension expression.
mlirAffineExprCompose⚠
Composes the given map with the given expression.
mlirAffineExprDump⚠
Prints the affine expression to the standard error stream.
mlirAffineExprEqual⚠
Returns true if the two affine expressions are equal.
mlirAffineExprGetContext⚠
Gets the context that owns the affine expression.
mlirAffineExprGetLargestKnownDivisor⚠
Returns the greatest known integral divisor of this affine expression. The result is always positive.
mlirAffineExprIsAAdd⚠
Checks whether the given affine expression is an add expression.
mlirAffineExprIsABinary⚠
Checks whether the given affine expression is binary.
mlirAffineExprIsACeilDiv⚠
Checks whether the given affine expression is an ceildiv expression.
mlirAffineExprIsAConstant⚠
Checks whether the given affine expression is a constant expression.
mlirAffineExprIsADim⚠
Checks whether the given affine expression is a dimension expression.
mlirAffineExprIsAFloorDiv⚠
Checks whether the given affine expression is an floordiv expression.
mlirAffineExprIsAMod⚠
Checks whether the given affine expression is an mod expression.
mlirAffineExprIsAMul⚠
Checks whether the given affine expression is an mul expression.
mlirAffineExprIsASymbol⚠
Checks whether the given affine expression is a symbol expression.
mlirAffineExprIsFunctionOfDim⚠
Checks whether the given affine expression involves AffineDimExpr ‘position’.
mlirAffineExprIsMultipleOf⚠
Checks whether the given affine expression is a multiple of ‘factor’.
mlirAffineExprIsPureAffine⚠
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.
mlirAffineExprIsSymbolicOrConstant⚠
Checks whether the given affine expression is made out of only symbols and constants.
mlirAffineExprPrint⚠
Prints an affine expression by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirAffineExprShiftDims⚠
Replace dims[offset … numDims) by dims[offset + shift … shift + numDims).
mlirAffineExprShiftSymbols⚠
Replace symbols[offset … numSymbols) by symbols[offset + shift … shift + numSymbols).
mlirAffineFloorDivExprGet⚠
Creates an affine floordiv expression with ‘lhs’ and ‘rhs’.
mlirAffineMapAttrGet⚠
Creates an affine map attribute wrapping the given map. The attribute belongs to the same context as the affine map.
mlirAffineMapAttrGetName⚠
mlirAffineMapAttrGetTypeID⚠
Returns the typeID of an AffineMap attribute.
mlirAffineMapAttrGetValue⚠
Returns the affine map wrapped in the given affine map attribute.
mlirAffineMapCompressUnusedSymbols⚠
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.
mlirAffineMapConstantGet⚠
Creates a single constant result affine map in the context. The affine map is owned by the context.
mlirAffineMapDump⚠
Prints the affine map to the standard error stream.
mlirAffineMapEmptyGet⚠
Creates a zero result affine map with no dimensions or symbols in the context. The affine map is owned by the context.
mlirAffineMapEqual⚠
Checks if two affine maps are equal.
mlirAffineMapGet⚠
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.
mlirAffineMapGetContext⚠
Gets the context that the given affine map was created with
mlirAffineMapGetMajorSubMap⚠
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.
mlirAffineMapGetMinorSubMap⚠
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.
mlirAffineMapGetNumDims⚠
Returns the number of dimensions of the given affine map.
mlirAffineMapGetNumInputs⚠
Returns the number of inputs (dimensions + symbols) of the given affine map.
mlirAffineMapGetNumResults⚠
Returns the number of results of the given affine map.
mlirAffineMapGetNumSymbols⚠
Returns the number of symbols of the given affine map.
mlirAffineMapGetResult⚠
Returns the result at the given position.
mlirAffineMapGetSingleConstantResult⚠
Returns the constant result of the given affine map. The function asserts that the map has a single constant result.
mlirAffineMapGetSubMap⚠
Returns the affine map consisting of the resultPos subset.
mlirAffineMapIsEmpty⚠
Checks whether the given affine map is an empty affine map.
mlirAffineMapIsIdentity⚠
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.
mlirAffineMapIsMinorIdentity⚠
Checks whether the given affine map is a minor identity affine map.
mlirAffineMapIsPermutation⚠
Checks whether the given affine map represents a symbol-less permutation map.
mlirAffineMapIsProjectedPermutation⚠
Checks whether the given affine map represents a subset of a symbol-less permutation map.
mlirAffineMapIsSingleConstant⚠
Checks whether the given affine map is a single result constant affine map.
mlirAffineMapMinorIdentityGet⚠
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.
mlirAffineMapMultiDimIdentityGet⚠
Creates an affine map with ‘numDims’ identity in the context. The affine map is owned by the context.
mlirAffineMapPermutationGet⚠
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.
mlirAffineMapPrint⚠
Prints an affine map by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirAffineMapReplace⚠
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.
mlirAffineMapZeroResultGet⚠
Creates a zero result affine map of the given dimensions and symbols in the context. The affine map is owned by the context.
mlirAffineModExprGet⚠
Creates an affine mod expression with ‘lhs’ and ‘rhs’.
mlirAffineMulExprGet⚠
Creates an affine mul expression with ‘lhs’ and ‘rhs’.
mlirAffineSymbolExprGet⚠
Creates an affine symbol expression with ‘position’ in the context.
mlirAffineSymbolExprGetPosition⚠
Returns the position of the given affine symbol expression.
mlirAnyQuantizedTypeGet⚠
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.
mlirAnyQuantizedTypeGetName⚠
mlirAnyQuantizedTypeGetTypeID⚠
mlirApplyFullConversion⚠
Apply a full conversion on the given operation.
mlirApplyPartialConversion⚠
Apply a partial conversion on the given operation.
mlirApplyPatternsAndFoldGreedily⚠
mlirApplyPatternsAndFoldGreedilyWithOp⚠
mlirArrayAttrGet⚠
Creates an array element containing the given list of elements in the given context.
mlirArrayAttrGetElement⚠
Returns pos-th element stored in the given array attribute.
mlirArrayAttrGetName⚠
mlirArrayAttrGetNumElements⚠
Returns the number of elements stored in the given array attribute.
mlirArrayAttrGetTypeID⚠
Returns the typeID of an Array attribute.
mlirAsmStateCreateForOperation⚠
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().
mlirAsmStateCreateForValue⚠
Creates new AsmState from value. Must be freed with a call to mlirAsmStateDestroy().
mlirAsmStateDestroy⚠
Destroys printing flags created with mlirAsmStateCreate.
mlirAttributeDump⚠
Prints the attribute to the standard error stream.
mlirAttributeEqual⚠
Checks if two attributes are equal.
mlirAttributeGetContext⚠
Gets the context that an attribute was created with.
mlirAttributeGetDialect⚠
Gets the dialect of the attribute.
mlirAttributeGetNull⚠
Returns an empty attribute.
mlirAttributeGetType⚠
Gets the type of this attribute.
mlirAttributeGetTypeID⚠
Gets the type id of the attribute.
mlirAttributeIsAAffineMap⚠
Checks whether the given attribute is an affine map attribute.
mlirAttributeIsAArray⚠
Checks whether the given attribute is an array attribute.
mlirAttributeIsABool⚠
Checks whether the given attribute is a bool attribute.
mlirAttributeIsAComplex⚠
Checks whether the given attribute is a complex attribute.
mlirAttributeIsADenseBoolArray⚠
Checks whether the given attribute is a dense array attribute.
mlirAttributeIsADenseElements⚠
Checks whether the given attribute is a dense elements attribute.
mlirAttributeIsADenseF32Array⚠
mlirAttributeIsADenseF64Array⚠
mlirAttributeIsADenseFPElements⚠
mlirAttributeIsADenseI8Array⚠
mlirAttributeIsADenseI16Array⚠
mlirAttributeIsADenseI32Array⚠
mlirAttributeIsADenseI64Array⚠
mlirAttributeIsADenseIntElements⚠
mlirAttributeIsADenseResourceElements⚠
mlirAttributeIsADictionary⚠
Checks whether the given attribute is a dictionary attribute.
mlirAttributeIsADynamicAttr⚠
Check if the given attribute is a dynamic attribute.
mlirAttributeIsAElements⚠
Checks whether the given attribute is an elements attribute.
mlirAttributeIsAEmitCCmpPredicate⚠
mlirAttributeIsAEmitCOpaque⚠
mlirAttributeIsAFlatSymbolRef⚠
Checks whether the given attribute is a flat symbol reference attribute.
mlirAttributeIsAFloat⚠
Checks whether the given attribute is a floating point attribute.
mlirAttributeIsAGPUObjectAttr⚠
mlirAttributeIsAInteger⚠
Checks whether the given attribute is an integer attribute.
mlirAttributeIsAIntegerSet⚠
Checks whether the given attribute is an integer set attribute.
mlirAttributeIsALocation⚠
mlirAttributeIsAOpaque⚠
Checks whether the given attribute is an opaque attribute.
mlirAttributeIsASparseElements⚠
Checks whether the given attribute is a sparse elements attribute.
mlirAttributeIsASparseTensorEncodingAttr⚠
Checks whether the given attribute is a sparse_tensor.encoding attribute.
mlirAttributeIsAStridedLayout⚠
mlirAttributeIsAString⚠
Checks whether the given attribute is a string attribute.
mlirAttributeIsASymbolRef⚠
Checks whether the given attribute is a symbol reference attribute.
mlirAttributeIsAType⚠
Checks whether the given attribute is a type attribute.
mlirAttributeIsAUnit⚠
Checks whether the given attribute is a unit attribute.
mlirAttributeParseGet⚠
Parses an attribute. The attribute is owned by the context.
mlirAttributePrint⚠
Prints an attribute by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirBF16TypeGet⚠
Creates a bf16 type in the given context. The type is owned by the context.
mlirBF16TypeGetName⚠
mlirBFloat16TypeGetTypeID⚠
Returns the typeID of an BFloat16 type.
mlirBlockAddArgument⚠
Appends an argument of the specified type to the block. Returns the newly added argument.
mlirBlockAppendOwnedOperation⚠
Takes an operation owned by the caller and appends it to the block.
mlirBlockArgumentGetArgNumber⚠
Returns the position of the value in the argument list of its block.
mlirBlockArgumentGetOwner⚠
Returns the block in which this value is defined as an argument. Asserts if the value is not a block argument.
mlirBlockArgumentSetLocation⚠
Sets the location of the block argument to the given location.
mlirBlockArgumentSetType⚠
Sets the type of the block argument to the given type.
mlirBlockCreate⚠
Creates a new empty block with the given argument types and transfers ownership to the caller.
mlirBlockDestroy⚠
Takes a block owned by the caller and destroys it.
mlirBlockDetach⚠
Detach a block from the owning region and assume ownership.
mlirBlockEqual⚠
Checks whether two blocks handles point to the same block. This does not perform deep comparison.
mlirBlockEraseArgument⚠
Erase the argument at ‘index’ and remove it from the argument list.
mlirBlockGetArgument⚠
Returns pos-th argument of the block.
mlirBlockGetFirstOperation⚠
Returns the first operation in the block.
mlirBlockGetNextInRegion⚠
Returns the block immediately following the given block in its parent region.
mlirBlockGetNumArguments⚠
Returns the number of arguments of the block.
mlirBlockGetNumPredecessors⚠
Returns the number of predecessor blocks of the block.
mlirBlockGetNumSuccessors⚠
Returns the number of successor blocks of the block.
mlirBlockGetParentOperation⚠
Returns the closest surrounding operation that contains this block.
mlirBlockGetParentRegion⚠
Returns the region that contains this block.
mlirBlockGetPredecessor⚠
Returns pos-th predecessor of the block.
mlirBlockGetSuccessor⚠
Returns pos-th successor of the block.
mlirBlockGetTerminator⚠
Returns the terminator operation in the block or null if no terminator.
mlirBlockInsertArgument⚠
Inserts an argument of the specified type at a specified index to the block. Returns the newly added argument.
mlirBlockInsertOwnedOperation⚠
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.
mlirBlockInsertOwnedOperationAfter⚠
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.
mlirBlockInsertOwnedOperationBefore⚠
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.
mlirBlockPrint⚠
Prints a block by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirBoolAttrGet⚠
Creates a bool attribute in the given context with the given value.
mlirBoolAttrGetValue⚠
Returns the value stored in the given bool attribute.
mlirBytecodeWriterConfigCreate⚠
Creates new printing flags with defaults, intended for customization. Must be freed with a call to mlirBytecodeWriterConfigDestroy().
mlirBytecodeWriterConfigDesiredEmitVersion⚠
Sets the version to emit in the writer config.
mlirBytecodeWriterConfigDestroy⚠
Destroys printing flags created with mlirBytecodeWriterConfigCreate.
mlirCalibratedQuantizedTypeGet⚠
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.
mlirCalibratedQuantizedTypeGetMax⚠
Returns the max value of the given calibrated quantized type.
mlirCalibratedQuantizedTypeGetMin⚠
Returns the min value of the given calibrated quantized type.
mlirCalibratedQuantizedTypeGetName⚠
mlirCalibratedQuantizedTypeGetTypeID⚠
mlirComplexAttrDoubleGet⚠
Creates a complex attribute in the given context with the given double real and imaginary values and double-precision FP semantics.
mlirComplexAttrDoubleGetChecked⚠
Same as “mlirComplexAttrDoubleGet”, but if the type is not valid for a construction of a ComplexAttr, returns a null MlirAttribute.
mlirComplexAttrGetImagDouble⚠
Returns the imaginaryvalue stored in the given complex attribute, interpreting the value as double.
mlirComplexAttrGetRealDouble⚠
Returns the real value stored in the given complex attribute, interpreting the value as double.
mlirComplexAttrGetTypeID⚠
Returns the typeID of a Complex attribute.
mlirComplexTypeGet⚠
Creates a complex type with the given element type in the same context as the element type. The type is owned by the context.
mlirComplexTypeGetElementType⚠
Returns the element type of the given complex type.
mlirComplexTypeGetName⚠
mlirComplexTypeGetTypeID⚠
Returns the typeID of an Complex type.
mlirConditionallySpeculatableOpInterfaceAttachFallbackModel⚠
Attach a new FallbackModel for the ConditionallySpeculatable interface to the named operation. The FallbackModel will call the provided callbacks.
mlirConditionallySpeculatableOpInterfaceGetSpeculatability⚠
Returns the speculatability of the given operation.
mlirConditionallySpeculatableOpInterfaceTypeID⚠
Returns the interface TypeID of the ConditionallySpeculatable interface.
mlirContextAppendDialectRegistry⚠
Append the contents of the given dialect registry to the registry associated with the context.
mlirContextAttachDiagnosticHandler⚠
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.
mlirContextCreate⚠
Creates an MLIR context and transfers its ownership to the caller. This sets the default multithreading option (enabled).
mlirContextCreateWithRegistry⚠
Creates an MLIR context, setting the multithreading setting explicitly and pre-loading the dialects from the provided DialectRegistry.
mlirContextCreateWithThreading⚠
Creates an MLIR context with an explicit setting of the multithreading setting and transfers its ownership to the caller.
mlirContextDestroy⚠
Takes an MLIR context owned by the caller and destroys it.
mlirContextDetachDiagnosticHandler⚠
Detaches an attached diagnostic handler from the context given its identifier.
mlirContextEnableMultithreading⚠
Set threading mode (must be set to false to mlir-print-ir-after-all).
mlirContextEqual⚠
Checks if two contexts are equal.
mlirContextGetAllowUnregisteredDialects⚠
Returns whether the context allows unregistered dialects.
mlirContextGetNumLoadedDialects⚠
Returns the number of dialects loaded by the context.
mlirContextGetNumRegisteredDialects⚠
Returns the number of dialects registered with the given context. A registered dialect will be loaded if needed by the parser.
mlirContextGetNumThreads⚠
Gets the number of threads of the thread pool of the context when multithreading is enabled. Returns 1 if no multithreading.
mlirContextGetOrLoadDialect⚠
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 mlirContextLoadDialect to load an unregistered dialect.
mlirContextGetThreadPool⚠
Gets the thread pool of the context when enabled multithreading, otherwise an assertion is raised.
mlirContextIsRegisteredOperation⚠
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.
mlirContextLoadAllAvailableDialects⚠
Eagerly loads all available dialects registered with a context, making them available for use for IR construction.
mlirContextSetAllowUnregisteredDialects⚠
Sets whether unregistered dialects are allowed in this context.
mlirContextSetThreadPool⚠
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.
mlirConversionConfigCreate⚠
Create a default ConversionConfig.
mlirConversionConfigDestroy⚠
Destroy the given ConversionConfig.
mlirConversionConfigEnableBuildMaterializations⚠
Enable or disable building materializations during conversion.
mlirConversionConfigGetFoldingMode⚠
Get the folding mode for the given ConversionConfig.
mlirConversionConfigIsBuildMaterializationsEnabled⚠
Check if building materializations during conversion is enabled.
mlirConversionConfigSetFoldingMode⚠
Set the folding mode for the given ConversionConfig.
mlirConversionPatternAsRewritePattern⚠
Cast the ConversionPattern to a RewritePattern.
mlirConversionPatternGetTypeConverter⚠
Get the type converter used by this conversion pattern.
mlirConversionPatternRewriterAsPatternRewriter⚠
Cast the ConversionPatternRewriter to a PatternRewriter
mlirConversionPatternRewriterConvertRegionTypes⚠
Apply a signature conversion to each block in the given region.
mlirConversionTargetAddDynamicallyLegalDialect⚠
Register the given dialect as dynamically legal, with a callback to determine per-instance legality for all operations in the dialect. The callback must not be NULL.
mlirConversionTargetAddDynamicallyLegalOp⚠
Register the given operation as dynamically legal, with a callback to determine per-instance legality. The callback must not be NULL.
mlirConversionTargetAddIllegalDialect⚠
Register the operations of the given dialect as illegal.
mlirConversionTargetAddIllegalOp⚠
Register the given operations as illegal.
mlirConversionTargetAddLegalDialect⚠
Register the operations of the given dialect as legal.
mlirConversionTargetAddLegalOp⚠
Register the given operations as legal.
mlirConversionTargetCreate⚠
Create an empty ConversionTarget.
mlirConversionTargetDestroy⚠
Destroy the given ConversionTarget.
mlirConversionTargetMarkOpRecursivelyLegal⚠
Mark the given operation as recursively legal. The optional callback (may be NULL) determines whether a specific instance is recursively legal; a NULL callback marks the operation as unconditionally recursively legal.
mlirConversionTargetMarkUnknownOpDynamicallyLegal⚠
Mark unknown operations as dynamically legal, with a callback. The callback must not be NULL.
mlirCreateAMDGPUAmdgpuEmulateAtomicsPass⚠
mlirCreateAMDGPUAmdgpuMaskedloadToLoadPass⚠
mlirCreateAMDGPUAmdgpuResolveStridedMetadataPass⚠
mlirCreateAffineAffineDataCopyGeneration⚠
mlirCreateAffineAffineExpandIndexOps⚠
mlirCreateAffineAffineExpandIndexOpsAsAffine⚠
mlirCreateAffineAffineFoldMemRefAliasOps⚠
mlirCreateAffineAffineLoopFusion⚠
mlirCreateAffineAffineLoopInvariantCodeMotion⚠
mlirCreateAffineAffineLoopNormalize⚠
mlirCreateAffineAffineLoopTiling⚠
mlirCreateAffineAffineLoopUnroll⚠
mlirCreateAffineAffineLoopUnrollAndJam⚠
mlirCreateAffineAffineParallelize⚠
mlirCreateAffineAffinePipelineDataTransfer⚠
mlirCreateAffineAffineScalarReplacement⚠
mlirCreateAffineAffineVectorize⚠
mlirCreateAffineLoopCoalescing⚠
mlirCreateAffineRaiseMemrefDialect⚠
mlirCreateAffineSimplifyAffineMinMaxPass⚠
mlirCreateAffineSimplifyAffineStructures⚠
mlirCreateAffineSimplifyAffineWithBounds⚠
mlirCreateArithArithEmulateUnsupportedFloats⚠
mlirCreateArithArithEmulateWideInt⚠
mlirCreateArithArithExpandOpsPass⚠
mlirCreateArithArithIntRangeNarrowing⚠
mlirCreateArithArithIntRangeOpts⚠
mlirCreateArithArithUnsignedWhenEquivalentPass⚠
mlirCreateArmSMEEnableArmStreaming⚠
mlirCreateArmSMEOuterProductFusion⚠
mlirCreateArmSMETestTileAllocation⚠
mlirCreateArmSMEVectorLegalization⚠
mlirCreateAsyncAsyncFuncToAsyncRuntimePass⚠
mlirCreateAsyncAsyncParallelForPass⚠
mlirCreateAsyncAsyncRuntimePolicyBasedRefCountingPass⚠
mlirCreateAsyncAsyncRuntimeRefCountingOptPass⚠
mlirCreateAsyncAsyncRuntimeRefCountingPass⚠
mlirCreateAsyncAsyncToAsyncRuntimePass⚠
mlirCreateBufferizationBufferDeallocationSimplificationPass⚠
mlirCreateBufferizationBufferHoistingPass⚠
mlirCreateBufferizationBufferLoopHoistingPass⚠
mlirCreateBufferizationBufferResultsToOutParamsPass⚠
mlirCreateBufferizationDropEquivalentBufferResultsPass⚠
mlirCreateBufferizationEmptyTensorEliminationPass⚠
mlirCreateBufferizationEmptyTensorToAllocTensorPass⚠
mlirCreateBufferizationLowerDeallocationsPass⚠
mlirCreateBufferizationOneShotBufferizePass⚠
mlirCreateBufferizationOptimizeAllocationLivenessPass⚠
mlirCreateBufferizationOwnershipBasedBufferDeallocationPass⚠
mlirCreateBufferizationPromoteBuffersToStackPass⚠
mlirCreateBufferizationStaticMemoryPlannerAnalysisPass⚠
mlirCreateConversionArithToAMDGPUConversionPass⚠
mlirCreateConversionArithToAPFloatConversionPass⚠
mlirCreateConversionArithToArmSMEConversionPass⚠
mlirCreateConversionArithToLLVMConversionPass⚠
mlirCreateConversionConvertAMDGPUToROCDLPass⚠
mlirCreateConversionConvertAffineForToGPUPass⚠
mlirCreateConversionConvertArithToEmitC⚠
mlirCreateConversionConvertArithToSPIRVPass⚠
mlirCreateConversionConvertArmNeon2dToIntrPass⚠
mlirCreateConversionConvertArmSMEToLLVM⚠
mlirCreateConversionConvertArmSMEToSCFPass⚠
mlirCreateConversionConvertAsyncToLLVMPass⚠
mlirCreateConversionConvertBufferizationToMemRefPass⚠
mlirCreateConversionConvertComplexToLLVMPass⚠
mlirCreateConversionConvertComplexToLibm⚠
mlirCreateConversionConvertComplexToROCDLLibraryCalls⚠
mlirCreateConversionConvertComplexToSPIRVPass⚠
mlirCreateConversionConvertComplexToStandardPass⚠
mlirCreateConversionConvertControlFlowToLLVMPass⚠
mlirCreateConversionConvertControlFlowToSPIRVPass⚠
mlirCreateConversionConvertFuncToEmitC⚠
mlirCreateConversionConvertFuncToLLVMPass⚠
mlirCreateConversionConvertFuncToSPIRVPass⚠
mlirCreateConversionConvertGPUToSPIRV⚠
mlirCreateConversionConvertGpuOpsToLLVMSPVOps⚠
mlirCreateConversionConvertGpuOpsToNVVMOps⚠
mlirCreateConversionConvertGpuOpsToROCDLOps⚠
mlirCreateConversionConvertIndexToLLVMPass⚠
mlirCreateConversionConvertIndexToSPIRVPass⚠
mlirCreateConversionConvertLinalgToStandardPass⚠
mlirCreateConversionConvertMathToEmitC⚠
mlirCreateConversionConvertMathToFuncs⚠
mlirCreateConversionConvertMathToLLVMPass⚠
mlirCreateConversionConvertMathToLibmPass⚠
mlirCreateConversionConvertMathToNVVM⚠
mlirCreateConversionConvertMathToROCDL⚠
mlirCreateConversionConvertMathToSPIRVPass⚠
mlirCreateConversionConvertMathToXeVM⚠
mlirCreateConversionConvertMemRefToEmitC⚠
mlirCreateConversionConvertMemRefToSPIRVPass⚠
mlirCreateConversionConvertNVGPUToNVVMPass⚠
mlirCreateConversionConvertNVVMToLLVMPass⚠
mlirCreateConversionConvertOpenACCToSCFPass⚠
mlirCreateConversionConvertOpenMPToLLVMPass⚠
mlirCreateConversionConvertPDLToPDLInterpPass⚠
mlirCreateConversionConvertParallelLoopToGpuPass⚠
mlirCreateConversionConvertSCFToOpenMPPass⚠
mlirCreateConversionConvertSPIRVToLLVMPass⚠
mlirCreateConversionConvertShapeConstraintsPass⚠
mlirCreateConversionConvertShapeToStandardPass⚠
mlirCreateConversionConvertShardToMPIPass⚠
mlirCreateConversionConvertTensorToLinalgPass⚠
mlirCreateConversionConvertTensorToSPIRVPass⚠
mlirCreateConversionConvertToEmitC⚠
mlirCreateConversionConvertToLLVMPass⚠
mlirCreateConversionConvertVectorToAMX⚠
mlirCreateConversionConvertVectorToArmSMEPass⚠
mlirCreateConversionConvertVectorToGPU⚠
mlirCreateConversionConvertVectorToLLVMPass⚠
mlirCreateConversionConvertVectorToSCF⚠
mlirCreateConversionConvertVectorToSPIRVPass⚠
mlirCreateConversionConvertVectorToXeGPU⚠
mlirCreateConversionConvertXeGPUToXeVMPass⚠
mlirCreateConversionConvertXeVMToLLVMPass⚠
mlirCreateConversionFinalizeMemRefToLLVMConversionPass⚠
mlirCreateConversionGpuToLLVMConversionPass⚠
mlirCreateConversionLiftControlFlowToSCFPass⚠
mlirCreateConversionLowerAffinePass⚠
mlirCreateConversionLowerHostCodeToLLVMPass⚠
mlirCreateConversionMapMemRefStorageClass⚠
mlirCreateConversionMathToAPFloatConversionPass⚠
mlirCreateConversionRaiseWasmMLIR⚠
mlirCreateConversionReconcileUnrealizedCastsPass⚠
mlirCreateConversionSCFToControlFlowPass⚠
mlirCreateConversionSCFToEmitC⚠
mlirCreateConversionSCFToSPIRV⚠
mlirCreateConversionSetLLVMModuleDataLayoutPass⚠
mlirCreateConversionTosaToArithPass⚠
mlirCreateConversionTosaToLinalg⚠
mlirCreateConversionTosaToLinalgNamed⚠
mlirCreateConversionTosaToMLProgram⚠
mlirCreateConversionTosaToSCFPass⚠
mlirCreateConversionTosaToSPIRVTosa⚠
mlirCreateConversionTosaToSPIRVTosaMarkGraphConstants⚠
mlirCreateConversionTosaToTensorPass⚠
mlirCreateConversionUBToLLVMConversionPass⚠
mlirCreateConversionUBToSPIRVConversionPass⚠
mlirCreateEmitCFormExpressionsPass⚠
mlirCreateEmitCWrapFuncInClassPass⚠
mlirCreateExternalPass⚠
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.
mlirCreateFuncDuplicateFunctionEliminationPass⚠
mlirCreateGPUGpuAsyncRegionPass⚠
mlirCreateGPUGpuDecomposeMemrefsPass⚠
mlirCreateGPUGpuEliminateBarriers⚠
mlirCreateGPUGpuKernelOutliningPass⚠
mlirCreateGPUGpuLaunchSinkIndexComputationsPass⚠
mlirCreateGPUGpuMapParallelLoopsPass⚠
mlirCreateGPUGpuModuleToBinaryPass⚠
mlirCreateGPUGpuNVVMAttachTarget⚠
mlirCreateGPUGpuROCDLAttachTarget⚠
mlirCreateGPUGpuSPIRVAttachTarget⚠
mlirCreateGPUGpuXeVMAttachTarget⚠
mlirCreateLLVMDIScopeForLLVMFuncOpPass⚠
mlirCreateLLVMLLVMAddComdats⚠
mlirCreateLLVMLLVMLegalizeForExportPass⚠
mlirCreateLLVMLLVMRequestCWrappersPass⚠
mlirCreateLLVMLLVMUseDefaultVisibilityPass⚠
mlirCreateLinalgConvertElementwiseToLinalgPass⚠
mlirCreateLinalgConvertLinalgToAffineLoopsPass⚠
mlirCreateLinalgConvertLinalgToLoopsPass⚠
mlirCreateLinalgConvertLinalgToParallelLoopsPass⚠
mlirCreateLinalgLinalgBlockPackMatmul⚠
mlirCreateLinalgLinalgElementwiseOpFusionPass⚠
mlirCreateLinalgLinalgFoldIntoElementwisePass⚠
mlirCreateLinalgLinalgFoldUnitExtentDimsPass⚠
mlirCreateLinalgLinalgGeneralizeNamedOpsPass⚠
mlirCreateLinalgLinalgInlineScalarOperandsPass⚠
mlirCreateLinalgLinalgMorphOpsPass⚠
mlirCreateLinalgLinalgSpecializeGenericOpsPass⚠
mlirCreateLinalgSimplifyDepthwiseConvPass⚠
mlirCreateMLProgramMLProgramPipelineGlobalsPass⚠
mlirCreateMathMathExpandOpsPass⚠
mlirCreateMathMathExtendToSupportedTypes⚠
mlirCreateMathMathSincosFusionPass⚠
mlirCreateMathMathUpliftToFMA⚠
mlirCreateMemRefElideReinterpretCastPass⚠
mlirCreateMemRefExpandOpsPass⚠
mlirCreateMemRefExpandReallocPass⚠
mlirCreateMemRefExpandStridedMetadataPass⚠
mlirCreateMemRefFlattenMemrefsPass⚠
mlirCreateMemRefFoldMemRefAliasOpsPass⚠
mlirCreateMemRefMemRefEmulateWideInt⚠
mlirCreateMemRefNormalizeMemRefsPass⚠
mlirCreateMemRefReifyResultShapesPass⚠
mlirCreateMemRefResolveRankedShapeTypeResultDimsPass⚠
mlirCreateMemRefResolveShapedTypeResultDimsPass⚠
mlirCreateNVGPUOptimizeSharedMemory⚠
mlirCreateOpenACCACCBindRoutine⚠
mlirCreateOpenACCACCComputeLowering⚠
mlirCreateOpenACCACCDeclareGPUModuleInsertion⚠
mlirCreateOpenACCACCEmitRemarksLoop⚠
mlirCreateOpenACCACCEmitRemarksPrivate⚠
mlirCreateOpenACCACCIfClauseLowering⚠
mlirCreateOpenACCACCImplicitData⚠
mlirCreateOpenACCACCImplicitDeclare⚠
mlirCreateOpenACCACCImplicitRoutine⚠
mlirCreateOpenACCACCLegalizeSerial⚠
mlirCreateOpenACCACCLoopTiling⚠
mlirCreateOpenACCACCRecipeMaterialization⚠
mlirCreateOpenACCACCRoutineLowering⚠
mlirCreateOpenACCACCRoutineToGPUFunc⚠
mlirCreateOpenACCACCSpecializeForDevice⚠
mlirCreateOpenACCACCSpecializeForHost⚠
mlirCreateOpenACCLegalizeDataValuesInRegion⚠
mlirCreateOpenACCOffloadLiveInValueCanonicalization⚠
mlirCreateOpenACCOffloadTargetVerifier⚠
mlirCreateSCFSCFForLoopCanonicalization⚠
mlirCreateSCFSCFForLoopPeeling⚠
mlirCreateSCFSCFForLoopRangeFolding⚠
mlirCreateSCFSCFForLoopSpecialization⚠
mlirCreateSCFSCFForToWhileLoop⚠
mlirCreateSCFSCFForallToForLoop⚠
mlirCreateSCFSCFForallToParallelLoop⚠
mlirCreateSCFSCFParallelForToNestedFors⚠
mlirCreateSCFSCFParallelLoopFusion⚠
mlirCreateSCFSCFParallelLoopSpecialization⚠
mlirCreateSCFSCFParallelLoopTiling⚠
mlirCreateSCFTestSCFParallelLoopCollapsing⚠
mlirCreateSPIRVSPIRVCanonicalizeGLPass⚠
mlirCreateSPIRVSPIRVCompositeTypeLayoutPass⚠
mlirCreateSPIRVSPIRVLowerABIAttributesPass⚠
mlirCreateSPIRVSPIRVReplicatedConstantCompositePass⚠
mlirCreateSPIRVSPIRVRewriteInsertsPass⚠
mlirCreateSPIRVSPIRVUnifyAliasedResourcePass⚠
mlirCreateSPIRVSPIRVUpdateVCEPass⚠
mlirCreateSPIRVSPIRVWebGPUPreparePass⚠
mlirCreateShapeOutlineShapeComputationPass⚠
mlirCreateShapeRemoveShapeConstraintsPass⚠
mlirCreateShapeShapeToShapeLoweringPass⚠
mlirCreateShardPartition⚠
mlirCreateShardShardSimplify⚠
mlirCreateShardShardingPropagation⚠
mlirCreateSparseTensorLowerForeachToSCF⚠
mlirCreateSparseTensorLowerSparseIterationToSCF⚠
mlirCreateSparseTensorLowerSparseOpsToForeach⚠
mlirCreateSparseTensorPreSparsificationRewrite⚠
mlirCreateSparseTensorSparseAssembler⚠
mlirCreateSparseTensorSparseBufferRewrite⚠
mlirCreateSparseTensorSparseGPUCodegen⚠
mlirCreateSparseTensorSparseReinterpretMap⚠
mlirCreateSparseTensorSparseSpaceCollapse⚠
mlirCreateSparseTensorSparseTensorCodegen⚠
mlirCreateSparseTensorSparseTensorConversionPass⚠
mlirCreateSparseTensorSparseVectorization⚠
mlirCreateSparseTensorSparsificationAndBufferization⚠
mlirCreateSparseTensorSparsificationPass⚠
mlirCreateSparseTensorStageSparseOperations⚠
mlirCreateSparseTensorStorageSpecifierToLLVM⚠
mlirCreateTensorFoldTensorSubsetOpsPass⚠
mlirCreateTensorScalarizeSingleElementTensorReturnPass⚠
mlirCreateTosaTosaArithConstantToTosaConstPass⚠
mlirCreateTosaTosaAttachTarget⚠
mlirCreateTosaTosaConvertIntegerTypeToSignless⚠
mlirCreateTosaTosaDowngrade1p1To1p0Pass⚠
mlirCreateTosaTosaInferShapesPass⚠
mlirCreateTosaTosaInputShape⚠
mlirCreateTosaTosaLayerwiseConstantFoldPass⚠
mlirCreateTosaTosaMakeBroadcastablePass⚠
mlirCreateTosaTosaNarrowF64ToF32Pass⚠
mlirCreateTosaTosaNarrowI64ToI32Pass⚠
mlirCreateTosaTosaOptionalDecompositionsPass⚠
mlirCreateTosaTosaReduceTransposes⚠
mlirCreateTosaTosaValidation⚠
mlirCreateTransformCheckUsesPass⚠
mlirCreateTransformInferEffectsPass⚠
mlirCreateTransformInterpreterPass⚠
mlirCreateTransformPreloadLibraryPass⚠
mlirCreateTransformsBubbleDownMemorySpaceCasts⚠
mlirCreateTransformsCSEPass⚠
mlirCreateTransformsCanonicalizerPass⚠
mlirCreateTransformsCompositeFixedPointPass⚠
mlirCreateTransformsControlFlowSinkPass⚠
mlirCreateTransformsGenerateRuntimeVerificationPass⚠
mlirCreateTransformsInlinerPass⚠
mlirCreateTransformsLocationSnapshot⚠
mlirCreateTransformsLoopInvariantCodeMotionPass⚠
mlirCreateTransformsLoopInvariantSubsetHoistingPass⚠
mlirCreateTransformsMem2Reg⚠
mlirCreateTransformsPrintIRPass⚠
mlirCreateTransformsPrintOpStatsPass⚠
mlirCreateTransformsRemoveDeadValuesPass⚠
mlirCreateTransformsSCCPPass⚠
mlirCreateTransformsSROA⚠
mlirCreateTransformsStripDebugInfoPass⚠
mlirCreateTransformsSymbolDCEPass⚠
mlirCreateTransformsSymbolPrivatizePass⚠
mlirCreateTransformsTopologicalSortPass⚠
mlirCreateTransformsTrivialDeadCodeEliminationPass⚠
mlirCreateTransformsViewOpGraphPass⚠
mlirCreateVectorLowerVectorMaskPass⚠
mlirCreateVectorLowerVectorMultiReduction⚠
mlirCreateVectorLowerVectorToFromElementsToShuffleTree⚠
mlirDenseArrayAttrGetTypeID⚠
mlirDenseArrayGetNumElements⚠
Get the size of a dense array.
mlirDenseBoolArrayGet⚠
Create a dense array attribute with the given elements.
mlirDenseBoolArrayGetElement⚠
Get an element of a dense array.
mlirDenseBoolResourceElementsAttrGetValue⚠
Returns the pos-th value (flat contiguous indexing) of a specific type contained by the given dense resource elements attribute.
mlirDenseDoubleResourceElementsAttrGetValue⚠
mlirDenseElementsAttrBFloat16Get⚠
mlirDenseElementsAttrBoolGet⚠
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.
mlirDenseElementsAttrBoolSplatGet⚠
mlirDenseElementsAttrDoubleGet⚠
mlirDenseElementsAttrDoubleSplatGet⚠
mlirDenseElementsAttrFloat16Get⚠
mlirDenseElementsAttrFloatGet⚠
mlirDenseElementsAttrFloatSplatGet⚠
mlirDenseElementsAttrGet⚠
Creates a dense elements attribute with the given Shaped type and elements in the same context as the type.
mlirDenseElementsAttrGetBoolSplatValue⚠
mlirDenseElementsAttrGetBoolValue⚠
Returns the pos-th value (flat contiguous indexing) of a specific type contained by the given dense elements attribute.
mlirDenseElementsAttrGetDoubleSplatValue⚠
mlirDenseElementsAttrGetDoubleValue⚠
mlirDenseElementsAttrGetFloatSplatValue⚠
mlirDenseElementsAttrGetFloatValue⚠
mlirDenseElementsAttrGetIndexValue⚠
mlirDenseElementsAttrGetInt8SplatValue⚠
mlirDenseElementsAttrGetInt8Value⚠
mlirDenseElementsAttrGetInt16Value⚠
mlirDenseElementsAttrGetInt32SplatValue⚠
mlirDenseElementsAttrGetInt32Value⚠
mlirDenseElementsAttrGetInt64SplatValue⚠
mlirDenseElementsAttrGetInt64Value⚠
mlirDenseElementsAttrGetRawData⚠
Returns the raw data of the given dense elements attribute.
mlirDenseElementsAttrGetSplatValue⚠
Returns the single replicated value (splat) of a specific type contained by the given dense elements attribute.
mlirDenseElementsAttrGetStringSplatValue⚠
mlirDenseElementsAttrGetStringValue⚠
mlirDenseElementsAttrGetUInt8SplatValue⚠
mlirDenseElementsAttrGetUInt8Value⚠
mlirDenseElementsAttrGetUInt16Value⚠
mlirDenseElementsAttrGetUInt32SplatValue⚠
mlirDenseElementsAttrGetUInt32Value⚠
mlirDenseElementsAttrGetUInt64SplatValue⚠
mlirDenseElementsAttrGetUInt64Value⚠
mlirDenseElementsAttrInt8Get⚠
mlirDenseElementsAttrInt8SplatGet⚠
mlirDenseElementsAttrInt16Get⚠
mlirDenseElementsAttrInt32Get⚠
mlirDenseElementsAttrInt32SplatGet⚠
mlirDenseElementsAttrInt64Get⚠
mlirDenseElementsAttrInt64SplatGet⚠
mlirDenseElementsAttrIsSplat⚠
Checks whether the given dense elements attribute contains a single replicated value (splat).
mlirDenseElementsAttrRawBufferGet⚠
Creates a dense elements attribute with the given Shaped type and elements populated from a packed, row-major opaque buffer of contents.
mlirDenseElementsAttrReshapeGet⚠
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.
mlirDenseElementsAttrSplatGet⚠
Creates a dense elements attribute with the given Shaped type containing a single replicated element (splat).
mlirDenseElementsAttrStringGet⚠
Creates a dense elements attribute with the given shaped type from string elements.
mlirDenseElementsAttrUInt8Get⚠
mlirDenseElementsAttrUInt8SplatGet⚠
mlirDenseElementsAttrUInt16Get⚠
mlirDenseElementsAttrUInt32Get⚠
mlirDenseElementsAttrUInt32SplatGet⚠
mlirDenseElementsAttrUInt64Get⚠
mlirDenseElementsAttrUInt64SplatGet⚠
mlirDenseF32ArrayGet⚠
mlirDenseF32ArrayGetElement⚠
mlirDenseF64ArrayGet⚠
mlirDenseF64ArrayGetElement⚠
mlirDenseFloatResourceElementsAttrGetValue⚠
mlirDenseI8ArrayGet⚠
mlirDenseI8ArrayGetElement⚠
mlirDenseI16ArrayGet⚠
mlirDenseI16ArrayGetElement⚠
mlirDenseI32ArrayGet⚠
mlirDenseI32ArrayGetElement⚠
mlirDenseI64ArrayGet⚠
mlirDenseI64ArrayGetElement⚠
mlirDenseInt8ResourceElementsAttrGetValue⚠
mlirDenseInt16ResourceElementsAttrGetValue⚠
mlirDenseInt32ResourceElementsAttrGetValue⚠
mlirDenseInt64ResourceElementsAttrGetValue⚠
mlirDenseIntOrFPElementsAttrGetTypeID⚠
Deprecated API. Will be removed in the future.
mlirDenseResourceElementsAttrGetName⚠
mlirDenseTypedElementsAttrGetTypeID⚠
Returns the typeID of a DenseTypedElements attribute.
mlirDenseUInt8ResourceElementsAttrGetValue⚠
mlirDenseUInt16ResourceElementsAttrGetValue⚠
mlirDenseUInt32ResourceElementsAttrGetValue⚠
mlirDenseUInt64ResourceElementsAttrGetValue⚠
mlirDiagnosticGetLocation⚠
Returns the location at which the diagnostic is reported.
mlirDiagnosticGetNote⚠
Returns pos-th note attached to the diagnostic. Expects pos to be a valid zero-based index into the list of notes.
mlirDiagnosticGetNumNotes⚠
Returns the number of notes attached to the diagnostic.
mlirDiagnosticGetSeverity⚠
Returns the severity of the diagnostic.
mlirDiagnosticPrint⚠
Prints a diagnostic using the provided callback.
mlirDialectEqual⚠
Checks if two dialects that belong to the same context are equal. Dialects from different contexts will not compare equal.
mlirDialectGetContext⚠
Returns the context that owns the dialect.
mlirDialectGetNamespace⚠
Returns the namespace of the given dialect.
mlirDialectHandleGetNamespace⚠
Returns the namespace associated with the provided dialect handle.
mlirDialectHandleInsertDialect⚠
Inserts the dialect associated with the provided dialect handle into the provided dialect registry
mlirDialectHandleLoadDialect⚠
Loads the dialect associated with the provided dialect handle.
mlirDialectHandleRegisterDialect⚠
Registers the dialect associated with the provided dialect handle.
mlirDialectIsAExtensibleDialect⚠
Check if the given dialect is an extensible dialect.
mlirDialectRegistryCreate⚠
Creates a dialect registry and transfers its ownership to the caller.
mlirDialectRegistryDestroy⚠
Takes a dialect registry owned by the caller and destroys it.
mlirDictionaryAttrGet⚠
Creates a dictionary attribute containing the given list of elements in the provided context.
mlirDictionaryAttrGetElement⚠
Returns pos-th element of the given dictionary attribute.
mlirDictionaryAttrGetElementByName⚠
Returns the dictionary attribute element with the given name or NULL if the given name does not exist in the dictionary.
mlirDictionaryAttrGetName⚠
mlirDictionaryAttrGetNumElements⚠
Returns the number of attributes contained in a dictionary attribute.
mlirDictionaryAttrGetTypeID⚠
Returns the typeID of a Dictionary attribute.
mlirDistinctAttrCreate⚠
Creates a DistinctAttr with the referenced attribute.
mlirDominanceInfoCreate⚠
Creates a DominanceInfo for the given operation (typically a FuncOp or ModuleOp). The caller owns the returned object and must destroy it.
mlirDominanceInfoDestroy⚠
Destroys the given DominanceInfo.
mlirDominanceInfoDominatesBlock⚠
Returns true if block A dominates block B.
mlirDominanceInfoDominatesOperation⚠
Returns true if operation A dominates operation B (A == B or A properly dominates B).
mlirDominanceInfoFindNearestCommonDominator⚠
Finds the nearest common dominator of blocks A and B. Returns a null block if none exists.
mlirDominanceInfoInvalidate⚠
Invalidates all cached dominance information.
mlirDominanceInfoIsReachableFromEntry⚠
Returns true if the given block is reachable from the entry block of its region.
mlirDominanceInfoProperlyDominatesBlock⚠
Returns true if block A properly dominates block B.
mlirDominanceInfoProperlyDominatesOperation⚠
Returns true if operation A properly dominates operation B.
mlirDominanceInfoValueDominates⚠
Returns true if value A dominates operation B (the operation defining A is B or A properly dominates B).
mlirDominanceInfoValueProperlyDominates⚠
Returns true if value A properly dominates operation B.
mlirDynamicAttrDefinitionGetDialect⚠
Get the dialect that the given dynamic attribute definition belongs to.
mlirDynamicAttrDefinitionGetName⚠
Get the name of the given dynamic attribute definition.
mlirDynamicAttrDefinitionGetTypeID⚠
Get the type ID of a dynamic attribute definition.
mlirDynamicAttrGet⚠
Get a dynamic attribute by instantiating the given attribute definition with the provided attributes.
mlirDynamicAttrGetAttrDef⚠
Get the attribute definition of the given dynamic attribute.
mlirDynamicAttrGetNumParams⚠
Get the number of parameters in the given dynamic attribute.
mlirDynamicAttrGetParam⚠
Get the parameter at the given index in the provided dynamic attribute.
mlirDynamicOpTraitAttach⚠
Attach a dynamic op trait to the given operation name. Note that the operation name must be modeled by dynamic dialect and must be registered. The ownership of the trait will be transferred to the operation name after this call.
mlirDynamicOpTraitCreate⚠
Create a custom dynamic op trait with the given type ID and callbacks.
mlirDynamicOpTraitDestroy⚠
Destroy the dynamic op trait.
mlirDynamicOpTraitIsTerminatorCreate⚠
Get the dynamic op trait that indicates the operation is a terminator.
mlirDynamicOpTraitIsTerminatorGetTypeID⚠
Get the type ID of the dynamic op trait that indicates the operation is a terminator.
mlirDynamicOpTraitNoTerminatorCreate⚠
Get the dynamic op trait that indicates regions have no terminator.
mlirDynamicOpTraitNoTerminatorGetTypeID⚠
Get the type ID of the dynamic op trait that indicates regions have no terminator.
mlirDynamicTypeDefinitionGetDialect⚠
Get the dialect that the given dynamic type definition belongs to.
mlirDynamicTypeDefinitionGetName⚠
Get the name of the given dynamic type definition.
mlirDynamicTypeDefinitionGetTypeID⚠
Get the type ID of a dynamic type definition.
mlirDynamicTypeGet⚠
Get a dynamic type by instantiating the given type definition with the provided attributes.
mlirDynamicTypeGetNumParams⚠
Get the number of parameters in the given dynamic type.
mlirDynamicTypeGetParam⚠
Get the parameter at the given index in the provided dynamic type.
mlirDynamicTypeGetTypeDef⚠
Get the type definition of the given dynamic type.
mlirElementsAttrGetNumElements⚠
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.
mlirElementsAttrGetValue⚠
Returns the element at the given rank-dimensional index.
mlirElementsAttrIsValidIndex⚠
Checks whether the given rank-dimensional index is valid in the given elements attribute.
mlirEmitCArrayTypeGet⚠
mlirEmitCArrayTypeGetName⚠
mlirEmitCArrayTypeGetTypeID⚠
mlirEmitCCmpPredicateAttrGet⚠
mlirEmitCCmpPredicateAttrGetName⚠
mlirEmitCCmpPredicateAttrGetTypeID⚠
mlirEmitCCmpPredicateAttrGetValue⚠
mlirEmitCLValueTypeGet⚠
mlirEmitCLValueTypeGetName⚠
mlirEmitCLValueTypeGetTypeID⚠
mlirEmitCOpaqueAttrGet⚠
mlirEmitCOpaqueAttrGetName⚠
mlirEmitCOpaqueAttrGetTypeID⚠
mlirEmitCOpaqueAttrGetValue⚠
mlirEmitCOpaqueTypeGet⚠
mlirEmitCOpaqueTypeGetName⚠
mlirEmitCOpaqueTypeGetTypeID⚠
mlirEmitCPointerTypeGet⚠
mlirEmitCPointerTypeGetName⚠
mlirEmitCPointerTypeGetTypeID⚠
mlirEmitCPtrDiffTTypeGet⚠
mlirEmitCPtrDiffTTypeGetName⚠
mlirEmitCPtrDiffTTypeGetTypeID⚠
mlirEmitCSignedSizeTTypeGet⚠
mlirEmitCSignedSizeTTypeGetName⚠
mlirEmitCSignedSizeTTypeGetTypeID⚠
mlirEmitCSizeTTypeGet⚠
mlirEmitCSizeTTypeGetName⚠
mlirEmitCSizeTTypeGetTypeID⚠
mlirEmitError⚠
Emits an error at the given location through the diagnostics engine. Used for testing purposes.
mlirEnableGlobalDebug⚠
Sets the global debugging flag.
mlirExecutionEngineCreate⚠
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. The enablePIC arguments controls the relocation model, when true the generated code is emitted as “position independent”, making it possible to save it and reload it as a shared object in another process. TODO: figure out other options.
mlirExecutionEngineDestroy⚠
Destroy an ExecutionEngine instance.
mlirExecutionEngineDumpToObjectFile⚠
Dump as an object in fileName.
mlirExecutionEngineInitialize⚠
Initialize the ExecutionEngine. Global constructors specified by llvm.mlir.global_ctors will be run. One common scenario is that kernel binary compiled from gpu.module gets loaded during initialization. Make sure all symbols are resolvable before initialization by calling mlirExecutionEngineRegisterSymbol or including shared libraries.
mlirExecutionEngineInvokePacked⚠
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).
mlirExecutionEngineLookup⚠
Lookup a native function in the execution engine by name, returns nullptr if the name can’t be looked-up.
mlirExecutionEngineLookupPacked⚠
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.
mlirExecutionEngineRegisterSymbol⚠
Register a symbol with the jit: this symbol will be accessible to the jitted code.
mlirExtensibleDialectLookupAttrDefinition⚠
Look up a registered attribute definition by attribute name in the given dialect. Note that the dialect must be an extensible dialect.
mlirExtensibleDialectLookupTypeDefinition⚠
Look up a registered type definition by type name in the given dialect. Note that the dialect must be an extensible dialect.
mlirExternalPassSignalFailure⚠
This signals that the pass has failed. This is only valid to call during the run callback of MlirExternalPassCallbacks. See Pass::signalPassFailure().
mlirF16TypeGet⚠
Creates an f16 type in the given context. The type is owned by the context.
mlirF16TypeGetName⚠
mlirF32TypeGet⚠
Creates an f32 type in the given context. The type is owned by the context.
mlirF32TypeGetName⚠
mlirF64TypeGet⚠
Creates a f64 type in the given context. The type is owned by the context.
mlirF64TypeGetName⚠
mlirFlatSymbolRefAttrGet⚠
Creates a flat symbol reference attribute in the given context referencing a symbol identified by the given string.
mlirFlatSymbolRefAttrGetName⚠
mlirFlatSymbolRefAttrGetValue⚠
Returns the referenced symbol as a string reference. The data remains live as long as the context in which the attribute lives.
mlirFloat4E2M1FNTypeGet⚠
Creates an f4E2M1FN type in the given context. The type is owned by the context.
mlirFloat4E2M1FNTypeGetName⚠
mlirFloat4E2M1FNTypeGetTypeID⚠
Returns the typeID of an Float4E2M1FN type.
mlirFloat6E2M3FNTypeGet⚠
Creates an f6E2M3FN type in the given context. The type is owned by the context.
mlirFloat6E2M3FNTypeGetName⚠
mlirFloat6E2M3FNTypeGetTypeID⚠
Returns the typeID of an Float6E2M3FN type.
mlirFloat6E3M2FNTypeGet⚠
Creates an f6E3M2FN type in the given context. The type is owned by the context.
mlirFloat6E3M2FNTypeGetName⚠
mlirFloat6E3M2FNTypeGetTypeID⚠
Returns the typeID of an Float6E3M2FN type.
mlirFloat8E3M4TypeGet⚠
Creates an f8E3M4 type in the given context. The type is owned by the context.
mlirFloat8E3M4TypeGetName⚠
mlirFloat8E3M4TypeGetTypeID⚠
Returns the typeID of an Float8E3M4 type.
mlirFloat8E4M3B11FNUZTypeGet⚠
Creates an f8E4M3B11FNUZ type in the given context. The type is owned by the context.
mlirFloat8E4M3B11FNUZTypeGetName⚠
mlirFloat8E4M3B11FNUZTypeGetTypeID⚠
Returns the typeID of an Float8E4M3B11FNUZ type.
mlirFloat8E4M3FNTypeGet⚠
Creates an f8E4M3FN type in the given context. The type is owned by the context.
mlirFloat8E4M3FNTypeGetName⚠
mlirFloat8E4M3FNTypeGetTypeID⚠
Returns the typeID of an Float8E4M3FN type.
mlirFloat8E4M3FNUZTypeGet⚠
Creates an f8E4M3FNUZ type in the given context. The type is owned by the context.
mlirFloat8E4M3FNUZTypeGetName⚠
mlirFloat8E4M3FNUZTypeGetTypeID⚠
Returns the typeID of an Float8E4M3FNUZ type.
mlirFloat8E4M3TypeGet⚠
Creates an f8E4M3 type in the given context. The type is owned by the context.
mlirFloat8E4M3TypeGetName⚠
mlirFloat8E4M3TypeGetTypeID⚠
Returns the typeID of an Float8E4M3 type.
mlirFloat8E5M2FNUZTypeGet⚠
Creates an f8E5M2FNUZ type in the given context. The type is owned by the context.
mlirFloat8E5M2FNUZTypeGetName⚠
mlirFloat8E5M2FNUZTypeGetTypeID⚠
Returns the typeID of an Float8E5M2FNUZ type.
mlirFloat8E5M2TypeGet⚠
Creates an f8E5M2 type in the given context. The type is owned by the context.
mlirFloat8E5M2TypeGetName⚠
mlirFloat8E5M2TypeGetTypeID⚠
Returns the typeID of an Float8E5M2 type.
mlirFloat8E8M0FNUTypeGet⚠
Creates an f8E8M0FNU type in the given context. The type is owned by the context.
mlirFloat8E8M0FNUTypeGetName⚠
mlirFloat8E8M0FNUTypeGetTypeID⚠
Returns the typeID of an Float8E8M0FNU type.
mlirFloat16TypeGetTypeID⚠
Returns the typeID of an Float16 type.
mlirFloat32TypeGetTypeID⚠
Returns the typeID of an Float32 type.
mlirFloat64TypeGetTypeID⚠
Returns the typeID of an Float64 type.
mlirFloatAttrDoubleGet⚠
Creates a floating point attribute in the given context with the given double value and double-precision FP semantics.
mlirFloatAttrDoubleGetChecked⚠
Same as “mlirFloatAttrDoubleGet”, but if the type is not valid for a construction of a FloatAttr, returns a null MlirAttribute.
mlirFloatAttrGetName⚠
mlirFloatAttrGetTypeID⚠
Returns the typeID of a Float attribute.
mlirFloatAttrGetValueDouble⚠
Returns the value stored in the given floating point attribute, interpreting the value as double.
mlirFloatTF32TypeGetTypeID⚠
Returns the typeID of a TF32 type.
mlirFloatTypeGetWidth⚠
Returns the bitwidth of a floating-point type.
mlirFreezeRewritePattern⚠
Freeze the given MlirRewritePatternSet to a MlirFrozenRewritePatternSet. Note that the ownership of the input set is transferred into the frozen set after this call.
mlirFrozenRewritePatternSetDestroy⚠
Destroy the given MlirFrozenRewritePatternSet.
mlirFuncSetArgAttr⚠
Sets the argument attribute ‘name’ of an argument at index ‘pos’. Asserts that the operation is a FuncOp.
mlirFuncSetResultAttr⚠
mlirFunctionTypeGet⚠
Creates a function type, mapping a list of input types to result types.
mlirFunctionTypeGetInput⚠
Returns the pos-th input type.
mlirFunctionTypeGetName⚠
mlirFunctionTypeGetNumInputs⚠
Returns the number of input types.
mlirFunctionTypeGetNumResults⚠
Returns the number of result types.
mlirFunctionTypeGetResult⚠
Returns the pos-th result type.
mlirFunctionTypeGetTypeID⚠
Returns the typeID of an Function type.
mlirGPUAsyncTokenTypeGet⚠
mlirGPUAsyncTokenTypeGetName⚠
mlirGPUObjectAttrGet⚠
mlirGPUObjectAttrGetFormat⚠
mlirGPUObjectAttrGetKernels⚠
mlirGPUObjectAttrGetName⚠
mlirGPUObjectAttrGetObject⚠
mlirGPUObjectAttrGetProperties⚠
mlirGPUObjectAttrGetTarget⚠
mlirGPUObjectAttrGetWithKernels⚠
mlirGPUObjectAttrHasKernels⚠
mlirGPUObjectAttrHasProperties⚠
mlirGetDialectHandle__acc__⚠
mlirGetDialectHandle__affine__⚠
mlirGetDialectHandle__amdgpu__⚠
mlirGetDialectHandle__arith__⚠
mlirGetDialectHandle__arm_neon__⚠
mlirGetDialectHandle__arm_sme__⚠
mlirGetDialectHandle__async__⚠
mlirGetDialectHandle__bufferization__⚠
mlirGetDialectHandle__cf__⚠
mlirGetDialectHandle__complex__⚠
mlirGetDialectHandle__dlti__⚠
mlirGetDialectHandle__emitc__⚠
mlirGetDialectHandle__func__⚠
mlirGetDialectHandle__gpu__⚠
mlirGetDialectHandle__index__⚠
mlirGetDialectHandle__irdl__⚠
mlirGetDialectHandle__linalg__⚠
mlirGetDialectHandle__llvm__⚠
mlirGetDialectHandle__math__⚠
mlirGetDialectHandle__memref__⚠
mlirGetDialectHandle__ml_program__⚠
mlirGetDialectHandle__mpi__⚠
mlirGetDialectHandle__nvgpu__⚠
mlirGetDialectHandle__nvvm__⚠
mlirGetDialectHandle__omp__⚠
mlirGetDialectHandle__pdl__⚠
mlirGetDialectHandle__pdl_interp__⚠
mlirGetDialectHandle__ptr__⚠
mlirGetDialectHandle__quant__⚠
mlirGetDialectHandle__rocdl__⚠
mlirGetDialectHandle__scf__⚠
mlirGetDialectHandle__shape__⚠
mlirGetDialectHandle__shard__⚠
mlirGetDialectHandle__smt__⚠
mlirGetDialectHandle__sparse_tensor__⚠
mlirGetDialectHandle__spirv__⚠
mlirGetDialectHandle__tensor__⚠
mlirGetDialectHandle__tosa__⚠
mlirGetDialectHandle__transform__⚠
mlirGetDialectHandle__ub__⚠
mlirGetDialectHandle__vcix__⚠
mlirGetDialectHandle__vector__⚠
mlirGetDialectHandle__wasmssa__⚠
mlirGetDialectHandle__x86__⚠
mlirGetDialectHandle__xegpu__⚠
mlirGetDialectHandle__xevm__⚠
mlirGreedyRewriteDriverConfigCreate⚠
Creates a greedy rewrite driver configuration with default settings.
mlirGreedyRewriteDriverConfigDestroy⚠
Destroys a greedy rewrite driver configuration.
mlirGreedyRewriteDriverConfigEnableConstantCSE⚠
Enables or disables constant CSE.
mlirGreedyRewriteDriverConfigEnableFolding⚠
Enables or disables folding during greedy rewriting.
mlirGreedyRewriteDriverConfigGetMaxIterations⚠
Gets the maximum number of iterations for the greedy rewrite driver.
mlirGreedyRewriteDriverConfigGetMaxNumRewrites⚠
Gets the maximum number of rewrites within an iteration.
mlirGreedyRewriteDriverConfigGetRegionSimplificationLevel⚠
Gets the region simplification level.
mlirGreedyRewriteDriverConfigGetStrictness⚠
Gets the strictness level for the greedy rewrite driver.
mlirGreedyRewriteDriverConfigGetUseTopDownTraversal⚠
Gets whether top-down traversal is used for initial worklist population.
mlirGreedyRewriteDriverConfigIsConstantCSEEnabled⚠
Gets whether constant CSE is enabled.
mlirGreedyRewriteDriverConfigIsFoldingEnabled⚠
Gets whether folding is enabled during greedy rewriting.
mlirGreedyRewriteDriverConfigSetMaxIterations⚠
Sets the maximum number of iterations for the greedy rewrite driver. Use -1 for no limit.
mlirGreedyRewriteDriverConfigSetMaxNumRewrites⚠
Sets the maximum number of rewrites within an iteration. Use -1 for no limit.
mlirGreedyRewriteDriverConfigSetRegionSimplificationLevel⚠
Sets the region simplification level.
mlirGreedyRewriteDriverConfigSetStrictness⚠
Sets the strictness level for the greedy rewrite driver.
mlirGreedyRewriteDriverConfigSetUseTopDownTraversal⚠
Sets whether to use top-down traversal for the initial population of the worklist.
mlirIRDLVariadicityArrayAttrGet⚠
mlirIRDLVariadicityArrayAttrGetName⚠
mlirIRDLVariadicityAttrGet⚠
mlirIRDLVariadicityAttrGetName⚠
mlirIRMappingClear⚠
Clears all mappings.
mlirIRMappingContainsBlock⚠
Returns true if the mapping contains a mapping for the given block.
mlirIRMappingContainsOperation⚠
Returns true if the mapping contains a mapping for the given operation.
mlirIRMappingContainsValue⚠
Returns true if the mapping contains a mapping for the given value.
mlirIRMappingCreate⚠
Creates a new empty IRMapping.
mlirIRMappingDestroy⚠
Destroys the given IRMapping.
mlirIRMappingEraseBlock⚠
Erases a block mapping.
mlirIRMappingEraseOperation⚠
Erases an operation mapping.
mlirIRMappingEraseValue⚠
Erases a value mapping.
mlirIRMappingLookupOrDefaultBlock⚠
Looks up a mapped Block. Returns the mapped block, or the input block if no mapping exists.
mlirIRMappingLookupOrDefaultOperation⚠
Looks up a mapped Operation. Returns the mapped operation, or the input operation if no mapping exists.
mlirIRMappingLookupOrDefaultValue⚠
Looks up a mapped Value. Returns the mapped value, or the input value if no mapping exists.
mlirIRMappingLookupOrNullBlock⚠
Looks up a mapped Block. Returns a null MlirBlock if no mapping exists.
mlirIRMappingLookupOrNullOperation⚠
Looks up a mapped Operation. Returns a null MlirOperation if no mapping exists.
mlirIRMappingLookupOrNullValue⚠
Looks up a mapped Value. Returns a null MlirValue if no mapping exists.
mlirIRMappingMapBlock⚠
Maps a Block in the mapping.
mlirIRMappingMapOperation⚠
Maps an Operation in the mapping.
mlirIRMappingMapValue⚠
Maps a Value in the mapping.
mlirIRRewriterCreate⚠
Create an IRRewriter and transfer ownership to the caller.
mlirIRRewriterCreateFromOp⚠
Create an IRRewriter and transfer ownership to the caller. Additionally set the insertion point before the operation.
mlirIRRewriterDestroy⚠
Takes an IRRewriter owned by the caller and destroys it. It is the responsibility of the user to only pass an IRRewriter class.
mlirIdentifierEqual⚠
Checks whether two identifiers are the same.
mlirIdentifierGet⚠
Gets an identifier with the given string value.
mlirIdentifierGetContext⚠
Returns the context associated with this identifier
mlirIdentifierStr⚠
Gets the string value of the identifier.
mlirIndexTypeGet⚠
Creates an index type in the given context. The type is owned by the context.
mlirIndexTypeGetName⚠
mlirIndexTypeGetTypeID⚠
Returns the typeID of an Index type.
mlirInferShapedTypeOpInterfaceInferReturnTypes⚠
Infers the return shaped type components of the operation. Calls callback with the types of inferred arguments on success. Returns failure otherwise.
mlirInferShapedTypeOpInterfaceTypeID⚠
Returns the interface TypeID of the InferShapedTypeOpInterface.
mlirInferTypeOpInterfaceInferReturnTypes⚠
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.
mlirInferTypeOpInterfaceTypeID⚠
Returns the interface TypeID of the InferTypeOpInterface.
mlirIntegerAttrGet⚠
Creates an integer attribute of the given type with the given integer value.
mlirIntegerAttrGetFromWords⚠
Creates an integer attribute of the given type from an array of 64-bit words. This is useful for creating integer attributes with values with widths larger than 64 bits. Words are in little-endian order (least significant word first). The number of words must match the bit width of the type: numWords = ceil(bitWidth / 64).
mlirIntegerAttrGetName⚠
mlirIntegerAttrGetTypeID⚠
Returns the typeID of an Integer attribute.
mlirIntegerAttrGetValueBitWidth⚠
Returns the bit width of the integer attribute’s underlying APInt value. This is useful for determining the size of the integer, especially for values larger than 64 bits.
mlirIntegerAttrGetValueInt⚠
Returns the value stored in the given integer attribute, assuming the value is of signless type and fits into a signed 64-bit integer.
mlirIntegerAttrGetValueNumWords⚠
Returns the number of 64-bit words that make up the integer attribute’s underlying APInt value. For integers <= 64 bits, this returns 1.
mlirIntegerAttrGetValueSInt⚠
Returns the value stored in the given integer attribute, assuming the value is of signed type and fits into a signed 64-bit integer.
mlirIntegerAttrGetValueUInt⚠
Returns the value stored in the given integer attribute, assuming the value is of unsigned type and fits into an unsigned 64-bit integer.
mlirIntegerAttrGetValueWords⚠
Copies the 64-bit words making up the integer attribute’s APInt value into the provided buffer. The buffer must have space for at least mlirIntegerAttrGetValueNumWords(attr) elements. Words are stored in little-endian order (least significant word first). The sign information is not encoded in the words themselves; use the type’s signedness to interpret the value correctly.
mlirIntegerSetAttrGet⚠
Creates an integer set attribute wrapping the given set. The attribute belongs to the same context as the integer set.
mlirIntegerSetAttrGetName⚠
mlirIntegerSetAttrGetTypeID⚠
Returns the typeID of an IntegerSet attribute.
mlirIntegerSetAttrGetValue⚠
Returns the integer set wrapped in the given integer set attribute.
mlirIntegerSetDump⚠
Prints an integer set to the standard error stream.
mlirIntegerSetEmptyGet⚠
Gets or creates a new canonically empty integer set with the give number of dimensions and symbols in the given context.
mlirIntegerSetEqual⚠
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.
mlirIntegerSetGet⚠
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.
mlirIntegerSetGetConstraint⚠
Returns pos-th constraint of the set.
mlirIntegerSetGetContext⚠
Gets the context in which the given integer set lives.
mlirIntegerSetGetNumConstraints⚠
Returns the number of constraints (equalities + inequalities) in the given set.
mlirIntegerSetGetNumDims⚠
Returns the number of dimensions in the given set.
mlirIntegerSetGetNumEqualities⚠
Returns the number of equalities in the given set.
mlirIntegerSetGetNumInequalities⚠
Returns the number of inequalities in the given set.
mlirIntegerSetGetNumInputs⚠
Returns the number of inputs (dimensions + symbols) in the given set.
mlirIntegerSetGetNumSymbols⚠
Returns the number of symbols in the given set.
mlirIntegerSetIsCanonicalEmpty⚠
Checks whether the given set is a canonical empty set, e.g., the set returned by mlirIntegerSetEmptyGet.
mlirIntegerSetIsConstraintEq⚠
Returns true of the pos-th constraint of the set is an equality constraint, false otherwise.
mlirIntegerSetPrint⚠
Prints an integer set by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirIntegerSetReplaceGet⚠
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.
mlirIntegerTypeGet⚠
Creates a signless integer type of the given bitwidth in the context. The type is owned by the context.
mlirIntegerTypeGetName⚠
mlirIntegerTypeGetTypeID⚠
Returns the typeID of an Integer type.
mlirIntegerTypeGetWidth⚠
Returns the bitwidth of an integer type.
mlirIntegerTypeIsSigned⚠
Checks whether the given integer type is signed.
mlirIntegerTypeIsSignless⚠
Checks whether the given integer type is signless.
mlirIntegerTypeIsUnsigned⚠
Checks whether the given integer type is unsigned.
mlirIntegerTypeSignedGet⚠
Creates a signed integer type of the given bitwidth in the context. The type is owned by the context.
mlirIntegerTypeUnsignedGet⚠
Creates an unsigned integer type of the given bitwidth in the context. The type is owned by the context.
mlirIsCurrentDebugType⚠
Checks if type is set as the current debug type.
mlirIsGlobalDebugEnabled⚠
Retuns true if the global debugging flag is set, false otherwise.
mlirLLVMArrayTypeGet⚠
Creates an llvm.array type.
mlirLLVMArrayTypeGetElementType⚠
Returns the element type of the llvm.array type.
mlirLLVMArrayTypeGetName⚠
mlirLLVMArrayTypeGetNumElements⚠
Returns the number of elements in the llvm.array type.
mlirLLVMArrayTypeGetTypeID⚠
mlirLLVMAttrIsAMDConstantAttr⚠
Returns true if the attribute is an LLVM MDConstantAttr.
mlirLLVMAttrIsAMDFuncAttr⚠
Returns true if the attribute is an LLVM MDFuncAttr.
mlirLLVMAttrIsAMDNodeAttr⚠
Returns true if the attribute is an LLVM MDNodeAttr.
mlirLLVMAttrIsAMDStringAttr⚠
Returns true if the attribute is an LLVM MDStringAttr.
mlirLLVMCConvAttrGet⚠
Creates a LLVM CConv attribute.
mlirLLVMCConvAttrGetName⚠
mlirLLVMComdatAttrGet⚠
Creates a LLVM Comdat attribute.
mlirLLVMComdatAttrGetName⚠
mlirLLVMDIAnnotationAttrGet⚠
Creates a LLVM DIAnnotation attribute.
mlirLLVMDIAnnotationAttrGetName⚠
mlirLLVMDIBasicTypeAttrGet⚠
Creates a LLVM DIBasicType attribute.
mlirLLVMDIBasicTypeAttrGetName⚠
mlirLLVMDICompileUnitAttrGet⚠
Creates a LLVM DICompileUnit attribute.
mlirLLVMDICompileUnitAttrGetName⚠
mlirLLVMDICompileUnitAttrGetRecSelf⚠
Creates a self-referencing LLVM DICompileUnitAttr attribute.
mlirLLVMDICompositeTypeAttrGet⚠
Creates a LLVM DICompositeType attribute.
mlirLLVMDICompositeTypeAttrGetName⚠
mlirLLVMDICompositeTypeAttrGetRecSelf⚠
Creates a self-referencing LLVM DICompositeType attribute.
mlirLLVMDIDerivedTypeAttrGet⚠
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.
mlirLLVMDIDerivedTypeAttrGetBaseType⚠
Gets the base type from a LLVM DIDerivedType attribute.
mlirLLVMDIDerivedTypeAttrGetName⚠
mlirLLVMDIExpressionAttrGet⚠
Creates a LLVM DIExpression attribute.
mlirLLVMDIExpressionAttrGetName⚠
mlirLLVMDIExpressionElemAttrGet⚠
Creates a LLVM DIExpressionElem attribute.
mlirLLVMDIExpressionElemAttrGetName⚠
mlirLLVMDIFileAttrGet⚠
Creates a LLVM DIFileAttr attribute.
mlirLLVMDIFileAttrGetName⚠
mlirLLVMDIFlagsAttrGet⚠
Creates a LLVM DIFlags attribute.
mlirLLVMDIFlagsAttrGetName⚠
mlirLLVMDIImportedEntityAttrGet⚠
Creates a LLVM DIImportedEntityAttr attribute.
mlirLLVMDIImportedEntityAttrGetName⚠
mlirLLVMDILexicalBlockAttrGet⚠
Creates a LLVM DILexicalBlock attribute.
mlirLLVMDILexicalBlockAttrGetName⚠
mlirLLVMDILexicalBlockFileAttrGet⚠
Creates a LLVM DILexicalBlockFile attribute.
mlirLLVMDILexicalBlockFileAttrGetName⚠
mlirLLVMDILocalVariableAttrGet⚠
Creates a LLVM DILocalVariableAttr attribute.
mlirLLVMDILocalVariableAttrGetName⚠
mlirLLVMDIModuleAttrGet⚠
Creates a LLVM DIModuleAttr attribute.
mlirLLVMDIModuleAttrGetName⚠
mlirLLVMDIModuleAttrGetScope⚠
Gets the scope of this DIModuleAttr.
mlirLLVMDINullTypeAttrGet⚠
Creates a LLVM DINullType attribute.
mlirLLVMDINullTypeAttrGetName⚠
mlirLLVMDIStringTypeAttrGet⚠
mlirLLVMDIStringTypeAttrGetName⚠
mlirLLVMDISubprogramAttrGet⚠
Creates a LLVM DISubprogramAttr attribute.
mlirLLVMDISubprogramAttrGetCompileUnit⚠
Gets the compile unit from this DISubprogram.
mlirLLVMDISubprogramAttrGetFile⚠
Gets the file from this DISubprogramAttr.
mlirLLVMDISubprogramAttrGetLine⚠
Gets the line from this DISubprogramAttr.
mlirLLVMDISubprogramAttrGetName⚠
mlirLLVMDISubprogramAttrGetRecSelf⚠
Creates a self-referencing LLVM DISubprogramAttr attribute.
mlirLLVMDISubprogramAttrGetScope⚠
Gets the scope from this DISubprogramAttr.
mlirLLVMDISubprogramAttrGetScopeLine⚠
Gets the scope line from this DISubprogram.
mlirLLVMDISubprogramAttrGetType⚠
Gets the type from this DISubprogramAttr.
mlirLLVMDISubroutineTypeAttrGet⚠
Creates a LLVM DISubroutineTypeAttr attribute.
mlirLLVMDISubroutineTypeAttrGetName⚠
mlirLLVMFunctionTypeGet⚠
Creates an llvm.func type.
mlirLLVMFunctionTypeGetInput⚠
Returns the pos-th input type.
mlirLLVMFunctionTypeGetName⚠
mlirLLVMFunctionTypeGetNumInputs⚠
Returns the number of input types.
mlirLLVMFunctionTypeGetReturnType⚠
Returns the return type of the function type.
mlirLLVMFunctionTypeGetTypeID⚠
Returns the TypeID of an LLVM function type.
mlirLLVMFunctionTypeIsVarArg⚠
Returns true if the function type is variadic.
mlirLLVMLinkageAttrGet⚠
Creates a LLVM Linkage attribute.
mlirLLVMLinkageAttrGetName⚠
mlirLLVMMDConstantAttrGet⚠
Creates an LLVM MDConstantAttr wrapping an attribute.
mlirLLVMMDConstantAttrGetTypeID⚠
Returns the TypeID of MDConstantAttr.
mlirLLVMMDConstantAttrGetValue⚠
Returns the attribute value of an LLVM MDConstantAttr.
mlirLLVMMDFuncAttrGet⚠
Creates an LLVM MDFuncAttr referencing a function symbol.
mlirLLVMMDFuncAttrGetName⚠
Returns the symbol name of an LLVM MDFuncAttr.
mlirLLVMMDFuncAttrGetTypeID⚠
Returns the TypeID of MDFuncAttr.
mlirLLVMMDNodeAttrGet⚠
Creates an LLVM MDNodeAttr.
mlirLLVMMDNodeAttrGetNumOperands⚠
Returns the number of operands in an LLVM MDNodeAttr.
mlirLLVMMDNodeAttrGetOperand⚠
Returns the operand at the given index of an LLVM MDNodeAttr.
mlirLLVMMDNodeAttrGetTypeID⚠
Returns the TypeID of MDNodeAttr.
mlirLLVMMDStringAttrGet⚠
Creates an LLVM MDStringAttr.
mlirLLVMMDStringAttrGetTypeID⚠
Returns the TypeID of MDStringAttr.
mlirLLVMMDStringAttrGetValue⚠
Returns the string value of an LLVM MDStringAttr.
mlirLLVMPointerTypeGet⚠
Creates an llvm.ptr type.
mlirLLVMPointerTypeGetAddressSpace⚠
Returns address space of llvm.ptr
mlirLLVMPointerTypeGetName⚠
mlirLLVMPointerTypeGetTypeID⚠
mlirLLVMStructTypeGetElementType⚠
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.
mlirLLVMStructTypeGetIdentifier⚠
Returns the identifier of the identified struct. Asserts that the struct is identified, i.e., not literal.
mlirLLVMStructTypeGetName⚠
mlirLLVMStructTypeGetNumElementTypes⚠
Returns the number of fields in the struct. Asserts if the struct is opaque or not yet initialized.
mlirLLVMStructTypeGetTypeID⚠
mlirLLVMStructTypeIdentifiedGet⚠
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.
mlirLLVMStructTypeIdentifiedNewGet⚠
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.
mlirLLVMStructTypeIsLiteral⚠
Returns true if the type is a literal (unnamed) LLVM struct type.
mlirLLVMStructTypeIsOpaque⚠
Returns true is the struct is explicitly opaque (will not have a body) or uninitialized (will eventually have a body).
mlirLLVMStructTypeIsPacked⚠
Returns true if the struct is packed.
mlirLLVMStructTypeLiteralGet⚠
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.
mlirLLVMStructTypeLiteralGetChecked⚠
Creates an LLVM literal (unnamed) struct type if possible. Emits a diagnostic at the given location and returns null otherwise.
mlirLLVMStructTypeOpaqueGet⚠
mlirLLVMStructTypeSetBody⚠
Sets the body of the identified struct if it hasn’t been set yet. Returns whether the operation was successful.
mlirLLVMVoidTypeGet⚠
Creates an llmv.void type.
mlirLLVMVoidTypeGetName⚠
mlirLinalgFillBuiltinNamedOpRegion⚠
Apply the special region builder for the builtin named Linalg op. Assert that mlirOp is a builtin named Linalg op.
mlirLinalgGetIndexingMapsAttribute⚠
mlirLinalgInferContractionDimensions⚠
mlirLinalgInferContractionDimensionsFromMaps⚠
mlirLinalgInferConvolutionDimensions⚠
mlirLinalgInferConvolutionDimensionsFromMaps⚠
mlirLinalgIsAContractionOp⚠
mlirLinalgIsAConvolutionOp⚠
mlirLlvmRawFdOStreamCreate⚠
Create a raw_fd_ostream for the given path. This wrapper is needed because std::ostream does not provide the file sharing semantics required on Windows.
mlirLlvmRawFdOStreamDestroy⚠
Destroy a raw_fd_ostream created with mlirLlvmRawFdOStreamCreate.
mlirLlvmRawFdOStreamIsNull⚠
Checks if a raw_fd_ostream is null.
mlirLlvmRawFdOStreamWrite⚠
Write a string to a raw_fd_ostream created with mlirLlvmRawFdOStreamCreate.
mlirLlvmThreadPoolCreate⚠
Create an LLVM thread pool. This is reexported here to avoid directly pulling in the LLVM headers directly.
mlirLlvmThreadPoolDestroy⚠
Destroy an LLVM thread pool.
mlirLlvmThreadPoolGetMaxConcurrency⚠
Returns the maximum number of threads in the thread pool.
mlirLoadIRDLDialects⚠
Loads all IRDL dialects in the provided module, registering the dialects in the module’s associated context.
mlirLocationCallSiteGet⚠
Creates a call site location with a callee and a caller.
mlirLocationCallSiteGetCallee⚠
Getter for callee of CallSite.
mlirLocationCallSiteGetCaller⚠
Getter for caller of CallSite.
mlirLocationCallSiteGetTypeID⚠
TypeID Getter for CallSite.
mlirLocationEqual⚠
Checks if two locations are equal.
mlirLocationFileLineColGet⚠
Creates an File/Line/Column location owned by the given context.
mlirLocationFileLineColRangeGet⚠
Creates an File/Line/Column range location owned by the given context.
mlirLocationFileLineColRangeGetEndColumn⚠
Getter for end_column of FileLineColRange.
mlirLocationFileLineColRangeGetEndLine⚠
Getter for end_line of FileLineColRange.
mlirLocationFileLineColRangeGetFilename⚠
Getter for filename of FileLineColRange.
mlirLocationFileLineColRangeGetStartColumn⚠
Getter for start_column of FileLineColRange.
mlirLocationFileLineColRangeGetStartLine⚠
Getter for start_line of FileLineColRange.
mlirLocationFileLineColRangeGetTypeID⚠
TypeID Getter for FileLineColRange.
mlirLocationFromAttribute⚠
Creates a location from a location attribute.
mlirLocationFusedGet⚠
Creates a fused location with an array of locations and metadata.
mlirLocationFusedGetLocations⚠
Getter for locations of Fused. Requires pre-allocated memory of #fusedLocations X sizeof(MlirLocation).
mlirLocationFusedGetMetadata⚠
Getter for metadata of Fused.
mlirLocationFusedGetNumLocations⚠
Getter for number of locations fused together.
mlirLocationFusedGetTypeID⚠
TypeID Getter for Fused.
mlirLocationGetAttribute⚠
Returns the underlying location attribute of this location.
mlirLocationGetContext⚠
Gets the context that a location was created with.
mlirLocationIsACallSite⚠
Checks whether the given location is an CallSite.
mlirLocationIsAFileLineColRange⚠
Checks whether the given location is an FileLineColRange.
mlirLocationIsAFused⚠
Checks whether the given location is an Fused.
mlirLocationIsAName⚠
Checks whether the given location is an Name.
mlirLocationIsAUnknown⚠
Checks whether the given location is an Unknown.
mlirLocationNameGet⚠
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.
mlirLocationNameGetChildLoc⚠
Getter for childLoc of Name.
mlirLocationNameGetName⚠
Getter for name of Name.
mlirLocationNameGetTypeID⚠
TypeID Getter for Name.
mlirLocationPrint⚠
Prints a location by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirLocationUnknownGet⚠
Creates a location with unknown position owned by the given context.
mlirLocationUnknownGetTypeID⚠
TypeID Getter for Unknown.
mlirMemRefTypeContiguousGet⚠
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.
mlirMemRefTypeContiguousGetChecked⚠
Same as “mlirMemRefTypeContiguousGet” but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.
mlirMemRefTypeGet⚠
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.
mlirMemRefTypeGetAffineMap⚠
Returns the affine map of the given MemRef type.
mlirMemRefTypeGetChecked⚠
Same as “mlirMemRefTypeGet” but returns a nullptr-wrapping MlirType o illegal arguments, emitting appropriate diagnostics.
mlirMemRefTypeGetLayout⚠
Returns the layout of the given MemRef type.
mlirMemRefTypeGetMemorySpace⚠
Returns the memory space of the given MemRef type.
mlirMemRefTypeGetName⚠
mlirMemRefTypeGetStridesAndOffset⚠
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.
mlirMemRefTypeGetTypeID⚠
Returns the typeID of an MemRef type.
mlirMemoryEffectsOpInterfaceAttachFallbackModel⚠
Attach a new FallbackModel for the MemoryEffectsOpInterface to the named operation. The FallbackModel will call the provided callbacks.
mlirMemoryEffectsOpInterfaceTypeID⚠
Returns the interface TypeID of the MemoryEffectsOpInterface.
mlirMergeSymbolsIntoFromClone⚠
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.
mlirModuleCreateEmpty⚠
Creates a new, empty module and transfers ownership to the caller.
mlirModuleCreateParse⚠
Parses a module from the string and transfers ownership to the caller.
mlirModuleCreateParseFromFile⚠
Parses a module from file and transfers ownership to the caller.
mlirModuleDestroy⚠
Takes a module owned by the caller and deletes it.
mlirModuleEqual⚠
Checks if two modules are equal.
mlirModuleFromOperation⚠
Views the generic operation as a module. The returned module is null when the input operation was not a ModuleOp.
mlirModuleGetBody⚠
Gets the body of the module, i.e. the only block it contains.
mlirModuleGetContext⚠
Gets the context that a module was created with.
mlirModuleGetOperation⚠
Views the module as a generic operation.
mlirModuleHashValue⚠
Compute a hash for the given module.
mlirNVGPUTensorMapDescriptorTypeGet⚠
mlirNVGPUTensorMapDescriptorTypeGetName⚠
mlirNamedAttributeGet⚠
Associates an attribute with the name. Takes ownership of neither.
mlirNoneTypeGet⚠
Creates a None type in the given context. The type is owned by the context.
mlirNoneTypeGetName⚠
mlirNoneTypeGetTypeID⚠
Returns the typeID of an None type.
mlirOpConversionPatternCreate⚠
Create a conversion pattern that matches the operation with the given rootName, corresponding to mlir::OpConversionPattern.
mlirOpOperandGetNextUse⚠
Returns an op operand representing the next use of the value, or a null op operand if there is no next use.
mlirOpOperandGetOperandNumber⚠
Returns the operand number of an op operand.
mlirOpOperandGetOwner⚠
Returns the owner operation of an op operand.
mlirOpOperandGetValue⚠
Returns the value of an op operand.
mlirOpOperandIsNull⚠
Returns whether the op operand is null.
mlirOpPassManagerAddOwnedPass⚠
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.
mlirOpPassManagerAddPipeline⚠
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.
mlirOpPassManagerGetNestedUnder⚠
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.
mlirOpPrintingFlagsAssumeVerified⚠
Do not verify the operation when using custom operation printers.
mlirOpPrintingFlagsCreate⚠
Creates new printing flags with defaults, intended for customization. Must be freed with a call to mlirOpPrintingFlagsDestroy().
mlirOpPrintingFlagsDestroy⚠
Destroys printing flags created with mlirOpPrintingFlagsCreate.
mlirOpPrintingFlagsElideLargeElementsAttrs⚠
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.
mlirOpPrintingFlagsElideLargeResourceString⚠
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.
mlirOpPrintingFlagsEnableDebugInfo⚠
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.
mlirOpPrintingFlagsPrintGenericOpForm⚠
Always print operations in the generic form.
mlirOpPrintingFlagsPrintNameLocAsPrefix⚠
Print the name and location, if NamedLoc, as a prefix to the SSA ID.
mlirOpPrintingFlagsSkipRegions⚠
Skip printing regions.
mlirOpPrintingFlagsUseLocalScope⚠
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.
mlirOpResultGetOwner⚠
Returns an operation that produced this value as its result. Asserts if the value is not an op result.
mlirOpResultGetResultNumber⚠
Returns the position of the value in the list of results of the operation that produced it.
mlirOpRewritePatternCreate⚠
Create a rewrite pattern that matches the operation with the given rootName, corresponding to mlir::OpRewritePattern.
mlirOpaqueAttrGet⚠
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).
mlirOpaqueAttrGetData⚠
Returns the raw data as a string reference. The data remains live as long as the context in which the attribute lives.
mlirOpaqueAttrGetDialectNamespace⚠
Returns the namespace of the dialect with which the given opaque attribute is associated. The namespace string is owned by the context.
mlirOpaqueAttrGetName⚠
mlirOpaqueAttrGetTypeID⚠
Returns the typeID of an Opaque attribute.
mlirOpaqueTypeGet⚠
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).
mlirOpaqueTypeGetData⚠
Returns the raw data as a string reference. The data remains live as long as the context in which the type lives.
mlirOpaqueTypeGetDialectNamespace⚠
Returns the namespace of the dialect with which the given opaque type is associated. The namespace string is owned by the context.
mlirOpaqueTypeGetName⚠
mlirOpaqueTypeGetTypeID⚠
Returns the typeID of an Opaque type.
mlirOperationClone⚠
Creates a deep copy of an operation. The operation is not inserted and ownership is transferred to the caller.
mlirOperationCloneWithMapping⚠
Clones the operation with the given mapping. The mapping is updated with the cloned operation’s results and regions.
mlirOperationCreate⚠
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).
mlirOperationCreateParse⚠
Parses an operation, giving ownership to the caller. If parsing fails a null operation will be returned, and an error diagnostic emitted.
mlirOperationDestroy⚠
Takes an operation owned by the caller and destroys it.
mlirOperationDump⚠
Prints an operation to stderr.
mlirOperationEqual⚠
Checks whether two operation handles point to the same operation. This does not perform deep comparison.
mlirOperationGetAttribute⚠
Return pos-th attribute of the operation. Deprecated, please use mlirOperationGetInherentAttribute or mlirOperationGetDiscardableAttribute.
mlirOperationGetAttributeByName⚠
Returns an attribute attached to the operation given its name. Deprecated, please use mlirOperationGetInherentAttributeByName or mlirOperationGetDiscardableAttributeByName.
mlirOperationGetBlock⚠
Gets the block that owns this operation, returning null if the operation is not owned.
mlirOperationGetContext⚠
Gets the context this operation is associated with
mlirOperationGetDiscardableAttribute⚠
Return pos-th discardable attribute of the operation.
mlirOperationGetDiscardableAttributeByName⚠
Returns a discardable attribute attached to the operation given its name.
mlirOperationGetFirstRegion⚠
Returns first region attached to the operation.
mlirOperationGetInherentAttributeByName⚠
Returns an inherent attribute attached to the operation given its name.
mlirOperationGetLocation⚠
Gets the location of the operation.
mlirOperationGetName⚠
Gets the name of the operation as an identifier.
mlirOperationGetNextInBlock⚠
Returns an operation immediately following the given operation it its enclosing block.
mlirOperationGetNumAttributes⚠
Returns the number of attributes attached to the operation. Deprecated, please use mlirOperationGetNumInherentAttributes or mlirOperationGetNumDiscardableAttributes.
mlirOperationGetNumDiscardableAttributes⚠
Returns the number of discardable attributes attached to the operation.
mlirOperationGetNumOperands⚠
Returns the number of operands of the operation.
mlirOperationGetNumRegions⚠
Returns the number of regions attached to the given operation.
mlirOperationGetNumResults⚠
Returns the number of results of the operation.
mlirOperationGetNumSuccessors⚠
Returns the number of successor blocks of the operation.
mlirOperationGetOpOperand⚠
Returns pos-th OpOperand of the operation.
mlirOperationGetOperand⚠
Returns pos-th operand of the operation.
mlirOperationGetParentOperation⚠
Gets the operation that owns this operation, returning null if the operation is not owned.
mlirOperationGetRegion⚠
Returns pos-th region attached to the operation.
mlirOperationGetResult⚠
Returns pos-th result of the operation.
mlirOperationGetSuccessor⚠
Returns pos-th successor of the operation.
mlirOperationGetTypeID⚠
Gets the type id of the operation. Returns null if the operation does not have a registered operation description.
mlirOperationHasInherentAttributeByName⚠
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.
mlirOperationHashValue⚠
Compute a hash for the given operation.
mlirOperationImplementsInterface⚠
Returns true if the given operation implements an interface identified by its TypeID.
mlirOperationImplementsInterfaceStatic⚠
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.
mlirOperationIsBeforeInBlock⚠
Given an operation ‘other’ that is within the same parent block, return whether the current operation is before ‘other’ in the operation list of the parent block. Note: This function has an average complexity of O(1), but worst case may take O(N) where N is the number of operations within the parent block.
mlirOperationMoveAfter⚠
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.
mlirOperationMoveBefore⚠
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.
mlirOperationNameHasTrait⚠
Checks if the operation name has a trait identified by the given type id.
mlirOperationPrint⚠
Prints an operation by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirOperationPrintWithFlags⚠
Same as mlirOperationPrint but accepts flags controlling the printing behavior.
mlirOperationPrintWithState⚠
Same as mlirOperationPrint but accepts AsmState controlling the printing behavior as well as caching computed names.
mlirOperationRemoveAttributeByName⚠
Removes an attribute by name. Returns false if the attribute was not found and true if removed. Deprecated, please use mlirOperationRemoveInherentAttributeByName or mlirOperationRemoveDiscardableAttributeByName.
mlirOperationRemoveDiscardableAttributeByName⚠
Removes a discardable attribute by name. Returns false if the attribute was not found and true if removed.
mlirOperationRemoveFromParent⚠
Removes the given operation from its parent block. The operation is not destroyed. The ownership of the operation is transferred to the caller.
mlirOperationReplaceUsesOfWith⚠
Replace uses of ‘of’ value with the ‘with’ value inside the ‘op’ operation.
mlirOperationSetAttributeByName⚠
Sets an attribute by name, replacing the existing if it exists or adding a new one otherwise. Deprecated, please use mlirOperationSetInherentAttributeByName or mlirOperationSetDiscardableAttributeByName.
mlirOperationSetDiscardableAttributeByName⚠
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.
mlirOperationSetInherentAttributeByName⚠
Sets an inherent attribute by name, replacing the existing if it exists. This has no effect if “name” does not match an inherent attribute.
mlirOperationSetLocation⚠
Sets the location of the operation.
mlirOperationSetOperand⚠
Sets the pos-th operand of the operation.
mlirOperationSetOperands⚠
Replaces the operands of the operation.
mlirOperationSetSuccessor⚠
Set pos-th successor of the operation.
mlirOperationStateAddAttributes⚠
mlirOperationStateAddOperands⚠
mlirOperationStateAddOwnedRegions⚠
mlirOperationStateAddResults⚠
Adds a list of components to the operation state.
mlirOperationStateAddSuccessors⚠
mlirOperationStateEnableResultTypeInference⚠
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.
mlirOperationStateGet⚠
Constructs an operation state from a name and a location.
mlirOperationVerify⚠
Verify the operation and return true if it passes, false if it fails.
mlirOperationWalk⚠
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.
mlirOperationWriteBytecode⚠
Same as mlirOperationPrint but writing the bytecode format.
mlirOperationWriteBytecodeWithConfig⚠
Same as mlirOperationWriteBytecode but with writer config and returns failure only if desired bytecode could not be honored.
mlirPDLAttributeTypeGet⚠
mlirPDLAttributeTypeGetName⚠
mlirPDLAttributeTypeGetTypeID⚠
mlirPDLOperationTypeGet⚠
mlirPDLOperationTypeGetName⚠
mlirPDLOperationTypeGetTypeID⚠
mlirPDLPatternModuleDestroy⚠
mlirPDLPatternModuleFromModule⚠
mlirPDLPatternModuleRegisterConstraintFunction⚠
Register a constraint function into the given PDL pattern module. userData will be provided as an argument to the constraint function.
mlirPDLPatternModuleRegisterRewriteFunction⚠
Register a rewrite function into the given PDL pattern module. userData will be provided as an argument to the rewrite function.
mlirPDLRangeTypeGet⚠
mlirPDLRangeTypeGetElementType⚠
mlirPDLRangeTypeGetName⚠
mlirPDLRangeTypeGetTypeID⚠
mlirPDLResultListPushBackAttribute⚠
Push the MlirAttribute into the given MlirPDLResultList.
mlirPDLResultListPushBackOperation⚠
Push the MlirOperation into the given MlirPDLResultList.
mlirPDLResultListPushBackType⚠
Push the MlirType into the given MlirPDLResultList.
mlirPDLResultListPushBackValue⚠
Push the MlirValue into the given MlirPDLResultList.
mlirPDLTypeTypeGet⚠
mlirPDLTypeTypeGetName⚠
mlirPDLTypeTypeGetTypeID⚠
mlirPDLValueAsAttribute⚠
Cast the MlirPDLValue to an MlirAttribute. Return a null value if the cast fails, just like llvm::dyn_cast.
mlirPDLValueAsOperation⚠
Cast the MlirPDLValue to an MlirOperation. Return a null value if the cast fails, just like llvm::dyn_cast.
mlirPDLValueAsType⚠
Cast the MlirPDLValue to an MlirType. Return a null value if the cast fails, just like llvm::dyn_cast.
mlirPDLValueAsValue⚠
Cast the MlirPDLValue to an MlirValue. Return a null value if the cast fails, just like llvm::dyn_cast.
mlirPDLValueTypeGet⚠
mlirPDLValueTypeGetName⚠
mlirPDLValueTypeGetTypeID⚠
mlirParsePassPipeline⚠
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.
mlirPassManagerAddOwnedPass⚠
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.
mlirPassManagerCreate⚠
Create a new top-level PassManager with the default anchor.
mlirPassManagerCreateOnOperation⚠
Create a new top-level PassManager anchored on anchorOp.
mlirPassManagerDestroy⚠
Destroy the provided PassManager.
mlirPassManagerEnableIRPrinting⚠
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.
mlirPassManagerEnableStatistics⚠
Enable pass statistics.
mlirPassManagerEnableTiming⚠
Enable pass timing.
mlirPassManagerEnableVerifier⚠
Enable / disable verify-each.
mlirPassManagerGetAsOpPassManager⚠
Cast a top-level PassManager to a generic OpPassManager.
mlirPassManagerGetNestedUnder⚠
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.
mlirPassManagerRunOnOp⚠
Run the provided passManager on the given op.
mlirPatternDescriptorOpInterfaceAttachFallbackModel⚠
Attach PatternDescriptorOpInterface to the operation with the given name using the provided callbacks.
mlirPatternDescriptorOpInterfaceTypeID⚠
Returns the interface TypeID of the PatternDescriptorOpInterface.
mlirPatternRewriterAsBase⚠
Cast the PatternRewriter to a RewriterBase
mlirPostDominanceInfoCreate⚠
Creates a PostDominanceInfo for the given operation.
mlirPostDominanceInfoDestroy⚠
Destroys the given PostDominanceInfo.
mlirPostDominanceInfoInvalidate⚠
Invalidates all cached post-dominance information.
mlirPostDominanceInfoPostDominatesBlock⚠
Returns true if block A post-dominates block B.
mlirPostDominanceInfoPostDominatesOperation⚠
Returns true if operation A post-dominates operation B.
mlirPostDominanceInfoProperlyPostDominatesBlock⚠
Returns true if block A properly post-dominates block B.
mlirPostDominanceInfoProperlyPostDominatesOperation⚠
Returns true if operation A properly post-dominates operation B.
mlirPrintPassPipeline⚠
Print a textual MLIR pass pipeline by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirQuantizedTypeCastExpressedToStorageType⚠
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.
mlirQuantizedTypeCastFromExpressedType⚠
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.
mlirQuantizedTypeCastFromStorageType⚠
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.
mlirQuantizedTypeCastToExpressedType⚠
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.
mlirQuantizedTypeCastToStorageType⚠
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.
mlirQuantizedTypeGetDefaultMaximumForInteger⚠
Returns the maximum possible value stored by a quantized type.
mlirQuantizedTypeGetDefaultMinimumForInteger⚠
Returns the minimum possible value stored by a quantized type.
mlirQuantizedTypeGetExpressedType⚠
Gets the original type approximated by the given quantized type.
mlirQuantizedTypeGetFlags⚠
Gets the flags associated with the given quantized type.
mlirQuantizedTypeGetQuantizedElementType⚠
Returns the element type of the given quantized type as another quantized type.
mlirQuantizedTypeGetSignedFlag⚠
Returns the bit flag used to indicate signedness of a quantized type.
mlirQuantizedTypeGetStorageType⚠
Returns the underlying type used to store the values.
mlirQuantizedTypeGetStorageTypeIntegralWidth⚠
Returns the integral bitwidth that the storage type of the given quantized type can represent exactly.
mlirQuantizedTypeGetStorageTypeMax⚠
Returns the maximum value that the storage type of the given quantized type can take.
mlirQuantizedTypeGetStorageTypeMin⚠
Returns the minimum value that the storage type of the given quantized type can take.
mlirQuantizedTypeIsCompatibleExpressedType⚠
Returns true if the candidate type is compatible with the given quantized type.
mlirQuantizedTypeIsSigned⚠
Returns true if the given type is signed, false otherwise.
mlirRankedTensorTypeGet⚠
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.
mlirRankedTensorTypeGetChecked⚠
Same as “mlirRankedTensorTypeGet” but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.
mlirRankedTensorTypeGetEncoding⚠
Gets the ‘encoding’ attribute from the ranked tensor type, returning a null attribute if none.
mlirRankedTensorTypeGetName⚠
mlirRankedTensorTypeGetTypeID⚠
Returns the typeID of an RankedTensor type.
mlirRegionAppendOwnedBlock⚠
Takes a block owned by the caller and appends it to the given region.
mlirRegionCreate⚠
Creates a new empty region and transfers ownership to the caller.
mlirRegionDestroy⚠
Takes a region owned by the caller and destroys it.
mlirRegionEqual⚠
Checks whether two region handles point to the same region. This does not perform deep comparison.
mlirRegionGetFirstBlock⚠
Gets the first block in the region.
mlirRegionGetNextInOperation⚠
Returns the region immediately following the given region in its parent operation.
mlirRegionInsertOwnedBlock⚠
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.
mlirRegionInsertOwnedBlockAfter⚠
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.
mlirRegionInsertOwnedBlockBefore⚠
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.
mlirRegionTakeBody⚠
Moves the entire content of the source region to the target region.
mlirRegisterAMDGPUAmdgpuEmulateAtomicsPass⚠
mlirRegisterAMDGPUAmdgpuMaskedloadToLoadPass⚠
mlirRegisterAMDGPUAmdgpuResolveStridedMetadataPass⚠
mlirRegisterAMDGPUPasses⚠
mlirRegisterAffineAffineDataCopyGeneration⚠
mlirRegisterAffineAffineExpandIndexOps⚠
mlirRegisterAffineAffineExpandIndexOpsAsAffine⚠
mlirRegisterAffineAffineFoldMemRefAliasOps⚠
mlirRegisterAffineAffineLoopFusion⚠
mlirRegisterAffineAffineLoopInvariantCodeMotion⚠
mlirRegisterAffineAffineLoopNormalize⚠
mlirRegisterAffineAffineLoopTiling⚠
mlirRegisterAffineAffineLoopUnroll⚠
mlirRegisterAffineAffineLoopUnrollAndJam⚠
mlirRegisterAffineAffineParallelize⚠
mlirRegisterAffineAffinePipelineDataTransfer⚠
mlirRegisterAffineAffineScalarReplacement⚠
mlirRegisterAffineAffineVectorize⚠
mlirRegisterAffineLoopCoalescing⚠
mlirRegisterAffinePasses⚠
mlirRegisterAffineRaiseMemrefDialect⚠
mlirRegisterAffineSimplifyAffineMinMaxPass⚠
mlirRegisterAffineSimplifyAffineStructures⚠
mlirRegisterAffineSimplifyAffineWithBounds⚠
mlirRegisterAllDialects⚠
Appends all upstream dialects and extensions to the dialect registry.
mlirRegisterAllLLVMTranslations⚠
Register all translations to LLVM IR for dialects that can support it.
mlirRegisterAllPasses⚠
Register all compiler passes of MLIR.
mlirRegisterArithArithEmulateUnsupportedFloats⚠
mlirRegisterArithArithEmulateWideInt⚠
mlirRegisterArithArithExpandOpsPass⚠
mlirRegisterArithArithIntRangeNarrowing⚠
mlirRegisterArithArithIntRangeOpts⚠
mlirRegisterArithArithUnsignedWhenEquivalentPass⚠
mlirRegisterArithPasses⚠
mlirRegisterArmSMEEnableArmStreaming⚠
mlirRegisterArmSMEOuterProductFusion⚠
mlirRegisterArmSMEPasses⚠
mlirRegisterArmSMETestTileAllocation⚠
mlirRegisterArmSMEVectorLegalization⚠
mlirRegisterAsyncAsyncFuncToAsyncRuntimePass⚠
mlirRegisterAsyncAsyncParallelForPass⚠
mlirRegisterAsyncAsyncRuntimePolicyBasedRefCountingPass⚠
mlirRegisterAsyncAsyncRuntimeRefCountingOptPass⚠
mlirRegisterAsyncAsyncRuntimeRefCountingPass⚠
mlirRegisterAsyncAsyncToAsyncRuntimePass⚠
mlirRegisterAsyncPasses⚠
mlirRegisterBufferizationBufferDeallocationSimplificationPass⚠
mlirRegisterBufferizationBufferHoistingPass⚠
mlirRegisterBufferizationBufferLoopHoistingPass⚠
mlirRegisterBufferizationBufferResultsToOutParamsPass⚠
mlirRegisterBufferizationDropEquivalentBufferResultsPass⚠
mlirRegisterBufferizationEmptyTensorEliminationPass⚠
mlirRegisterBufferizationEmptyTensorToAllocTensorPass⚠
mlirRegisterBufferizationLowerDeallocationsPass⚠
mlirRegisterBufferizationOneShotBufferizePass⚠
mlirRegisterBufferizationOptimizeAllocationLivenessPass⚠
mlirRegisterBufferizationOwnershipBasedBufferDeallocationPass⚠
mlirRegisterBufferizationPasses⚠
mlirRegisterBufferizationPromoteBuffersToStackPass⚠
mlirRegisterBufferizationStaticMemoryPlannerAnalysisPass⚠
mlirRegisterConversionArithToAMDGPUConversionPass⚠
mlirRegisterConversionArithToAPFloatConversionPass⚠
mlirRegisterConversionArithToArmSMEConversionPass⚠
mlirRegisterConversionArithToLLVMConversionPass⚠
mlirRegisterConversionConvertAMDGPUToROCDLPass⚠
mlirRegisterConversionConvertAffineForToGPUPass⚠
mlirRegisterConversionConvertArithToEmitC⚠
mlirRegisterConversionConvertArithToSPIRVPass⚠
mlirRegisterConversionConvertArmNeon2dToIntrPass⚠
mlirRegisterConversionConvertArmSMEToLLVM⚠
mlirRegisterConversionConvertArmSMEToSCFPass⚠
mlirRegisterConversionConvertAsyncToLLVMPass⚠
mlirRegisterConversionConvertBufferizationToMemRefPass⚠
mlirRegisterConversionConvertComplexToLLVMPass⚠
mlirRegisterConversionConvertComplexToLibm⚠
mlirRegisterConversionConvertComplexToROCDLLibraryCalls⚠
mlirRegisterConversionConvertComplexToSPIRVPass⚠
mlirRegisterConversionConvertComplexToStandardPass⚠
mlirRegisterConversionConvertControlFlowToLLVMPass⚠
mlirRegisterConversionConvertControlFlowToSPIRVPass⚠
mlirRegisterConversionConvertFuncToEmitC⚠
mlirRegisterConversionConvertFuncToLLVMPass⚠
mlirRegisterConversionConvertFuncToSPIRVPass⚠
mlirRegisterConversionConvertGPUToSPIRV⚠
mlirRegisterConversionConvertGpuOpsToLLVMSPVOps⚠
mlirRegisterConversionConvertGpuOpsToNVVMOps⚠
mlirRegisterConversionConvertGpuOpsToROCDLOps⚠
mlirRegisterConversionConvertIndexToLLVMPass⚠
mlirRegisterConversionConvertIndexToSPIRVPass⚠
mlirRegisterConversionConvertLinalgToStandardPass⚠
mlirRegisterConversionConvertMathToEmitC⚠
mlirRegisterConversionConvertMathToFuncs⚠
mlirRegisterConversionConvertMathToLLVMPass⚠
mlirRegisterConversionConvertMathToLibmPass⚠
mlirRegisterConversionConvertMathToNVVM⚠
mlirRegisterConversionConvertMathToROCDL⚠
mlirRegisterConversionConvertMathToSPIRVPass⚠
mlirRegisterConversionConvertMathToXeVM⚠
mlirRegisterConversionConvertMemRefToEmitC⚠
mlirRegisterConversionConvertMemRefToSPIRVPass⚠
mlirRegisterConversionConvertNVGPUToNVVMPass⚠
mlirRegisterConversionConvertNVVMToLLVMPass⚠
mlirRegisterConversionConvertOpenACCToSCFPass⚠
mlirRegisterConversionConvertOpenMPToLLVMPass⚠
mlirRegisterConversionConvertPDLToPDLInterpPass⚠
mlirRegisterConversionConvertParallelLoopToGpuPass⚠
mlirRegisterConversionConvertSCFToOpenMPPass⚠
mlirRegisterConversionConvertSPIRVToLLVMPass⚠
mlirRegisterConversionConvertShapeConstraintsPass⚠
mlirRegisterConversionConvertShapeToStandardPass⚠
mlirRegisterConversionConvertShardToMPIPass⚠
mlirRegisterConversionConvertTensorToLinalgPass⚠
mlirRegisterConversionConvertTensorToSPIRVPass⚠
mlirRegisterConversionConvertToEmitC⚠
mlirRegisterConversionConvertToLLVMPass⚠
mlirRegisterConversionConvertVectorToAMX⚠
mlirRegisterConversionConvertVectorToArmSMEPass⚠
mlirRegisterConversionConvertVectorToGPU⚠
mlirRegisterConversionConvertVectorToLLVMPass⚠
mlirRegisterConversionConvertVectorToSCF⚠
mlirRegisterConversionConvertVectorToSPIRVPass⚠
mlirRegisterConversionConvertVectorToXeGPU⚠
mlirRegisterConversionConvertXeGPUToXeVMPass⚠
mlirRegisterConversionConvertXeVMToLLVMPass⚠
mlirRegisterConversionFinalizeMemRefToLLVMConversionPass⚠
mlirRegisterConversionGpuToLLVMConversionPass⚠
mlirRegisterConversionLiftControlFlowToSCFPass⚠
mlirRegisterConversionLowerAffinePass⚠
mlirRegisterConversionLowerHostCodeToLLVMPass⚠
mlirRegisterConversionMapMemRefStorageClass⚠
mlirRegisterConversionMathToAPFloatConversionPass⚠
mlirRegisterConversionPasses⚠
mlirRegisterConversionRaiseWasmMLIR⚠
mlirRegisterConversionReconcileUnrealizedCastsPass⚠
mlirRegisterConversionSCFToControlFlowPass⚠
mlirRegisterConversionSCFToEmitC⚠
mlirRegisterConversionSCFToSPIRV⚠
mlirRegisterConversionSetLLVMModuleDataLayoutPass⚠
mlirRegisterConversionTosaToArithPass⚠
mlirRegisterConversionTosaToLinalg⚠
mlirRegisterConversionTosaToLinalgNamed⚠
mlirRegisterConversionTosaToMLProgram⚠
mlirRegisterConversionTosaToSCFPass⚠
mlirRegisterConversionTosaToSPIRVTosa⚠
mlirRegisterConversionTosaToSPIRVTosaMarkGraphConstants⚠
mlirRegisterConversionTosaToTensorPass⚠
mlirRegisterConversionUBToLLVMConversionPass⚠
mlirRegisterConversionUBToSPIRVConversionPass⚠
mlirRegisterEmitCFormExpressionsPass⚠
mlirRegisterEmitCPasses⚠
mlirRegisterEmitCWrapFuncInClassPass⚠
mlirRegisterFuncDuplicateFunctionEliminationPass⚠
mlirRegisterFuncPasses⚠
mlirRegisterGPUGpuAsyncRegionPass⚠
mlirRegisterGPUGpuDecomposeMemrefsPass⚠
mlirRegisterGPUGpuEliminateBarriers⚠
mlirRegisterGPUGpuKernelOutliningPass⚠
mlirRegisterGPUGpuLaunchSinkIndexComputationsPass⚠
mlirRegisterGPUGpuMapParallelLoopsPass⚠
mlirRegisterGPUGpuModuleToBinaryPass⚠
mlirRegisterGPUGpuNVVMAttachTarget⚠
mlirRegisterGPUGpuROCDLAttachTarget⚠
mlirRegisterGPUGpuSPIRVAttachTarget⚠
mlirRegisterGPUGpuXeVMAttachTarget⚠
mlirRegisterGPUPasses⚠
mlirRegisterLLVMDIScopeForLLVMFuncOpPass⚠
mlirRegisterLLVMLLVMAddComdats⚠
mlirRegisterLLVMLLVMLegalizeForExportPass⚠
mlirRegisterLLVMLLVMRequestCWrappersPass⚠
mlirRegisterLLVMLLVMUseDefaultVisibilityPass⚠
mlirRegisterLLVMPasses⚠
mlirRegisterLinalgConvertElementwiseToLinalgPass⚠
mlirRegisterLinalgConvertLinalgToAffineLoopsPass⚠
mlirRegisterLinalgConvertLinalgToLoopsPass⚠
mlirRegisterLinalgConvertLinalgToParallelLoopsPass⚠
mlirRegisterLinalgLinalgBlockPackMatmul⚠
mlirRegisterLinalgLinalgElementwiseOpFusionPass⚠
mlirRegisterLinalgLinalgFoldIntoElementwisePass⚠
mlirRegisterLinalgLinalgFoldUnitExtentDimsPass⚠
mlirRegisterLinalgLinalgGeneralizeNamedOpsPass⚠
mlirRegisterLinalgLinalgInlineScalarOperandsPass⚠
mlirRegisterLinalgLinalgMorphOpsPass⚠
mlirRegisterLinalgLinalgSpecializeGenericOpsPass⚠
mlirRegisterLinalgPasses⚠
mlirRegisterLinalgSimplifyDepthwiseConvPass⚠
mlirRegisterMLProgramMLProgramPipelineGlobalsPass⚠
mlirRegisterMLProgramPasses⚠
mlirRegisterMathMathExpandOpsPass⚠
mlirRegisterMathMathExtendToSupportedTypes⚠
mlirRegisterMathMathSincosFusionPass⚠
mlirRegisterMathMathUpliftToFMA⚠
mlirRegisterMathPasses⚠
mlirRegisterMemRefElideReinterpretCastPass⚠
mlirRegisterMemRefExpandOpsPass⚠
mlirRegisterMemRefExpandReallocPass⚠
mlirRegisterMemRefExpandStridedMetadataPass⚠
mlirRegisterMemRefFlattenMemrefsPass⚠
mlirRegisterMemRefFoldMemRefAliasOpsPass⚠
mlirRegisterMemRefMemRefEmulateWideInt⚠
mlirRegisterMemRefNormalizeMemRefsPass⚠
mlirRegisterMemRefPasses⚠
mlirRegisterMemRefReifyResultShapesPass⚠
mlirRegisterMemRefResolveRankedShapeTypeResultDimsPass⚠
mlirRegisterMemRefResolveShapedTypeResultDimsPass⚠
mlirRegisterNVGPUOptimizeSharedMemory⚠
mlirRegisterNVGPUPasses⚠
mlirRegisterOpenACCACCBindRoutine⚠
mlirRegisterOpenACCACCComputeLowering⚠
mlirRegisterOpenACCACCDeclareGPUModuleInsertion⚠
mlirRegisterOpenACCACCEmitRemarksLoop⚠
mlirRegisterOpenACCACCEmitRemarksPrivate⚠
mlirRegisterOpenACCACCIfClauseLowering⚠
mlirRegisterOpenACCACCImplicitData⚠
mlirRegisterOpenACCACCImplicitDeclare⚠
mlirRegisterOpenACCACCImplicitRoutine⚠
mlirRegisterOpenACCACCLegalizeSerial⚠
mlirRegisterOpenACCACCLoopTiling⚠
mlirRegisterOpenACCACCRecipeMaterialization⚠
mlirRegisterOpenACCACCRoutineLowering⚠
mlirRegisterOpenACCACCRoutineToGPUFunc⚠
mlirRegisterOpenACCACCSpecializeForDevice⚠
mlirRegisterOpenACCACCSpecializeForHost⚠
mlirRegisterOpenACCLegalizeDataValuesInRegion⚠
mlirRegisterOpenACCOffloadLiveInValueCanonicalization⚠
mlirRegisterOpenACCOffloadTargetVerifier⚠
mlirRegisterOpenACCPasses⚠
mlirRegisterSCFPasses⚠
mlirRegisterSCFSCFForLoopCanonicalization⚠
mlirRegisterSCFSCFForLoopPeeling⚠
mlirRegisterSCFSCFForLoopRangeFolding⚠
mlirRegisterSCFSCFForLoopSpecialization⚠
mlirRegisterSCFSCFForToWhileLoop⚠
mlirRegisterSCFSCFForallToForLoop⚠
mlirRegisterSCFSCFForallToParallelLoop⚠
mlirRegisterSCFSCFParallelForToNestedFors⚠
mlirRegisterSCFSCFParallelLoopFusion⚠
mlirRegisterSCFSCFParallelLoopSpecialization⚠
mlirRegisterSCFSCFParallelLoopTiling⚠
mlirRegisterSCFTestSCFParallelLoopCollapsing⚠
mlirRegisterSPIRVPasses⚠
mlirRegisterSPIRVSPIRVCanonicalizeGLPass⚠
mlirRegisterSPIRVSPIRVCompositeTypeLayoutPass⚠
mlirRegisterSPIRVSPIRVLowerABIAttributesPass⚠
mlirRegisterSPIRVSPIRVReplicatedConstantCompositePass⚠
mlirRegisterSPIRVSPIRVRewriteInsertsPass⚠
mlirRegisterSPIRVSPIRVUnifyAliasedResourcePass⚠
mlirRegisterSPIRVSPIRVUpdateVCEPass⚠
mlirRegisterSPIRVSPIRVWebGPUPreparePass⚠
mlirRegisterShapeOutlineShapeComputationPass⚠
mlirRegisterShapePasses⚠
mlirRegisterShapeRemoveShapeConstraintsPass⚠
mlirRegisterShapeShapeToShapeLoweringPass⚠
mlirRegisterShardPartition⚠
mlirRegisterShardPasses⚠
mlirRegisterShardShardSimplify⚠
mlirRegisterShardShardingPropagation⚠
mlirRegisterSparseTensorLowerForeachToSCF⚠
mlirRegisterSparseTensorLowerSparseIterationToSCF⚠
mlirRegisterSparseTensorLowerSparseOpsToForeach⚠
mlirRegisterSparseTensorPasses⚠
mlirRegisterSparseTensorPreSparsificationRewrite⚠
mlirRegisterSparseTensorSparseAssembler⚠
mlirRegisterSparseTensorSparseBufferRewrite⚠
mlirRegisterSparseTensorSparseGPUCodegen⚠
mlirRegisterSparseTensorSparseReinterpretMap⚠
mlirRegisterSparseTensorSparseSpaceCollapse⚠
mlirRegisterSparseTensorSparseTensorCodegen⚠
mlirRegisterSparseTensorSparseTensorConversionPass⚠
mlirRegisterSparseTensorSparseVectorization⚠
mlirRegisterSparseTensorSparsificationAndBufferization⚠
mlirRegisterSparseTensorSparsificationPass⚠
mlirRegisterSparseTensorStageSparseOperations⚠
mlirRegisterSparseTensorStorageSpecifierToLLVM⚠
mlirRegisterTensorFoldTensorSubsetOpsPass⚠
mlirRegisterTensorPasses⚠
mlirRegisterTensorScalarizeSingleElementTensorReturnPass⚠
mlirRegisterTosaPasses⚠
mlirRegisterTosaTosaArithConstantToTosaConstPass⚠
mlirRegisterTosaTosaAttachTarget⚠
mlirRegisterTosaTosaConvertIntegerTypeToSignless⚠
mlirRegisterTosaTosaDowngrade1p1To1p0Pass⚠
mlirRegisterTosaTosaInferShapesPass⚠
mlirRegisterTosaTosaInputShape⚠
mlirRegisterTosaTosaLayerwiseConstantFoldPass⚠
mlirRegisterTosaTosaMakeBroadcastablePass⚠
mlirRegisterTosaTosaNarrowF64ToF32Pass⚠
mlirRegisterTosaTosaNarrowI64ToI32Pass⚠
mlirRegisterTosaTosaOptionalDecompositionsPass⚠
mlirRegisterTosaTosaReduceTransposes⚠
mlirRegisterTosaTosaValidation⚠
mlirRegisterTransformCheckUsesPass⚠
mlirRegisterTransformInferEffectsPass⚠
mlirRegisterTransformInterpreterPass⚠
mlirRegisterTransformPasses⚠
mlirRegisterTransformPreloadLibraryPass⚠
mlirRegisterTransformsBubbleDownMemorySpaceCasts⚠
mlirRegisterTransformsCSEPass⚠
mlirRegisterTransformsCanonicalizerPass⚠
mlirRegisterTransformsCompositeFixedPointPass⚠
mlirRegisterTransformsControlFlowSinkPass⚠
mlirRegisterTransformsGenerateRuntimeVerificationPass⚠
mlirRegisterTransformsInlinerPass⚠
mlirRegisterTransformsLocationSnapshot⚠
mlirRegisterTransformsLoopInvariantCodeMotionPass⚠
mlirRegisterTransformsLoopInvariantSubsetHoistingPass⚠
mlirRegisterTransformsMem2Reg⚠
mlirRegisterTransformsPasses⚠
mlirRegisterTransformsPrintIRPass⚠
mlirRegisterTransformsPrintOpStatsPass⚠
mlirRegisterTransformsRemoveDeadValuesPass⚠
mlirRegisterTransformsSCCPPass⚠
mlirRegisterTransformsSROA⚠
mlirRegisterTransformsStripDebugInfoPass⚠
mlirRegisterTransformsSymbolDCEPass⚠
mlirRegisterTransformsSymbolPrivatizePass⚠
mlirRegisterTransformsTopologicalSortPass⚠
mlirRegisterTransformsTrivialDeadCodeEliminationPass⚠
mlirRegisterTransformsViewOpGraphPass⚠
mlirRegisterVectorLowerVectorMaskPass⚠
mlirRegisterVectorLowerVectorMultiReduction⚠
mlirRegisterVectorLowerVectorToFromElementsToShuffleTree⚠
mlirRegisterVectorPasses⚠
mlirRewritePatternSetAdd⚠
Add the given MlirRewritePattern into a MlirRewritePatternSet. Note that the ownership of the pattern is transferred to the set after this call.
mlirRewritePatternSetCreate⚠
Create an empty MlirRewritePatternSet.
mlirRewritePatternSetDestroy⚠
Destruct the given MlirRewritePatternSet.
mlirRewritePatternSetFromPDLPatternModule⚠
mlirRewritePatternSetGetContext⚠
Get the context associated with a MlirRewritePatternSet.
mlirRewriterBaseCancelOpModification⚠
This method cancels a pending in-place modification. This can only be called on operations that were provided to a call to startOpModification.
mlirRewriterBaseClearInsertionPoint⚠
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.
mlirRewriterBaseClone⚠
Creates a deep copy of the specified operation.
mlirRewriterBaseCloneRegionBefore⚠
Clone the blocks that belong to “region” before the given position in another region “parent”.
mlirRewriterBaseCloneWithMapping⚠
Clones the given operation using the rewriter and the provided IRMapping. The mapping is updated with the results of the cloned operation.
mlirRewriterBaseCloneWithoutRegions⚠
Creates a deep copy of this operation but keep the operation regions empty.
mlirRewriterBaseCreateBlockBefore⚠
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.
mlirRewriterBaseEraseBlock⚠
Erases a block along with all operations inside it.
mlirRewriterBaseEraseOp⚠
Erases an operation that is known to have no uses.
mlirRewriterBaseFinalizeOpModification⚠
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.
mlirRewriterBaseGetBlock⚠
Returns the current block of the rewriter.
mlirRewriterBaseGetContext⚠
Get the MLIR context referenced by the rewriter.
mlirRewriterBaseGetInsertionBlock⚠
Return the block the current insertion point belongs to. Note that the insertion point is not necessarily the end of the block.
mlirRewriterBaseGetOperationAfterInsertion⚠
Returns the operation right after the current insertion point of the rewriter. A null MlirOperation will be returned
mlirRewriterBaseInlineBlockBefore⚠
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’
mlirRewriterBaseInlineRegionBefore⚠
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.
mlirRewriterBaseInsert⚠
Insert the given operation at the current insertion point and return it.
mlirRewriterBaseMergeBlocks⚠
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’
mlirRewriterBaseMoveBlockBefore⚠
Unlink this block and insert it right before existingBlock.
mlirRewriterBaseMoveOpAfter⚠
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.
mlirRewriterBaseMoveOpBefore⚠
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.
mlirRewriterBaseReplaceAllOpUsesWithOperation⚠
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.
mlirRewriterBaseReplaceAllOpUsesWithValueRange⚠
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.
mlirRewriterBaseReplaceAllUsesExcept⚠
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).
mlirRewriterBaseReplaceAllUsesWith⚠
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).
mlirRewriterBaseReplaceAllValueRangeUsesWith⚠
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).
mlirRewriterBaseReplaceOpUsesWithinBlock⚠
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.
mlirRewriterBaseReplaceOpWithOperation⚠
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.
mlirRewriterBaseReplaceOpWithValues⚠
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.
mlirRewriterBaseSetInsertionPointAfter⚠
Sets the insertion point to the node after the specified operation, which will cause subsequent insertions to go right after it.
mlirRewriterBaseSetInsertionPointAfterValue⚠
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.
mlirRewriterBaseSetInsertionPointBefore⚠
Sets the insertion point to the specified operation, which will cause subsequent insertions to go right before it.
mlirRewriterBaseSetInsertionPointToEnd⚠
Sets the insertion point to the end of the specified block.
mlirRewriterBaseSetInsertionPointToStart⚠
Sets the insertion point to the start of the specified block.
mlirRewriterBaseStartOpModification⚠
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.
mlirSMTAttrCheckBVCmpPredicate⚠
Checks if the given string is a valid smt::BVCmpPredicate.
mlirSMTAttrCheckIntPredicate⚠
Checks if the given string is a valid smt::IntPredicate.
mlirSMTAttrGetBVCmpPredicate⚠
Creates a smt::BVCmpPredicateAttr with the given string.
mlirSMTAttrGetBitVector⚠
Creates a smt::BitVectorAttr with the given value and width.
mlirSMTAttrGetIntPredicate⚠
Creates a smt::IntPredicateAttr with the given string.
mlirSMTAttrIsASMTAttribute⚠
Checks if the given attribute is a smt::SMTAttribute.
mlirSMTBitVectorTypeGetName⚠
mlirSMTBitVectorTypeGetTypeID⚠
mlirSMTBoolTypeGetName⚠
mlirSMTBoolTypeGetTypeID⚠
mlirSMTIntTypeGetName⚠
mlirSMTIntTypeGetTypeID⚠
mlirSMTTypeGetArray⚠
Creates an array type with the given domain and range types.
mlirSMTTypeGetBitVector⚠
Creates a smt::BitVectorType with the given width.
mlirSMTTypeGetBool⚠
Creates a smt::BoolType.
mlirSMTTypeGetInt⚠
Creates a smt::IntType.
mlirSMTTypeGetSMTFunc⚠
Creates a smt::FuncType with the given domain and range types.
mlirSMTTypeGetSort⚠
Creates a smt::SortType with the given identifier and sort parameters.
mlirSMTTypeIsAArray⚠
Checks if the given type is a smt::ArrayType.
mlirSMTTypeIsABitVector⚠
Checks if the given type is a smt::BitVectorType.
mlirSMTTypeIsABool⚠
Checks if the given type is a smt::BoolType.
mlirSMTTypeIsAInt⚠
Checks if the given type is a smt::IntType.
mlirSMTTypeIsASMTFunc⚠
Checks if the given type is a smt::FuncType.
mlirSMTTypeIsASort⚠
Checks if the given type is a smt::SortType.
mlirSMTTypeIsAnyNonFuncSMTValueType⚠
Checks if the given type is any non-func SMT value type.
mlirSMTTypeIsAnySMTValueType⚠
Checks if the given type is any SMT value type.
mlirSetGlobalDebugType⚠
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.
mlirSetGlobalDebugTypes⚠
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.
mlirShapedTypeGetDimSize⚠
Returns the dim-th dimension of the given ranked shaped type.
mlirShapedTypeGetDynamicSize⚠
Returns the value indicating a dynamic size in a shaped type. Prefer mlirShapedTypeIsDynamicSize and mlirShapedTypeIsStaticSize to direct comparisons with this value.
mlirShapedTypeGetDynamicStrideOrOffset⚠
Returns the value indicating a dynamic stride or offset in a shaped type. Prefer mlirShapedTypeIsDynamicStrideOrOffset and mlirShapedTypeIsStaticStrideOrOffset to direct comparisons with this value.
mlirShapedTypeGetElementType⚠
Returns the element type of the shaped type.
mlirShapedTypeGetRank⚠
Returns the rank of the given ranked shaped type.
mlirShapedTypeHasRank⚠
Checks whether the given shaped type is ranked.
mlirShapedTypeHasStaticShape⚠
Checks whether the given shaped type has a static shape.
mlirShapedTypeIsDynamicDim⚠
Checks whether the dim-th dimension of the given shaped type is dynamic.
mlirShapedTypeIsDynamicSize⚠
Checks whether the given value is used as a placeholder for dynamic sizes in shaped types.
mlirShapedTypeIsDynamicStrideOrOffset⚠
Checks whether the given value is used as a placeholder for dynamic strides and offsets in shaped types.
mlirShapedTypeIsStaticDim⚠
Checks whether the dim-th dimension of the given shaped type is static.
mlirShapedTypeIsStaticSize⚠
Checks whether the given shaped type dimension value is statically-sized.
mlirShapedTypeIsStaticStrideOrOffset⚠
Checks whether the given dimension value of a stride or an offset is statically-sized.
mlirSimplifyAffineExpr⚠
Simplify an affine expression by flattening and some amount of simple analysis. This has complexity linear in the number of nodes in ‘expr’. Returns the simplified expression, which is the same as the input expression if it can’t be simplified. When expr is semi-affine, a simplified semi-affine expression is constructed in the sorted order of dimension and symbol positions.
mlirSparseElementsAttrGetIndices⚠
Returns the dense elements attribute containing 64-bit integer indices of non-null elements in the given sparse elements attribute.
mlirSparseElementsAttrGetTypeID⚠
Returns the typeID of a SparseElements attribute.
mlirSparseElementsAttrGetValues⚠
Returns the dense elements attribute containing the non-null elements in the given sparse elements attribute.
mlirSparseElementsAttribute⚠
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.
mlirSparseTensorEncodingAttrBuildLvlType⚠
mlirSparseTensorEncodingAttrGet⚠
Creates a sparse_tensor.encoding attribute with the given parameters.
mlirSparseTensorEncodingAttrGetCrdWidth⚠
Returns the coordinate bitwidth of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetDimToLvl⚠
Returns the dimension-to-level mapping of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetExplicitVal⚠
Returns the explicit value of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetImplicitVal⚠
Returns the implicit value of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetLvlFmt⚠
Returns a specified level-format of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetLvlToDim⚠
Returns the level-to-dimension mapping of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetLvlType⚠
Returns a specified level-type of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetName⚠
mlirSparseTensorEncodingAttrGetPosWidth⚠
Returns the position bitwidth of the sparse_tensor.encoding attribute.
mlirSparseTensorEncodingAttrGetStructuredM⚠
mlirSparseTensorEncodingAttrGetStructuredN⚠
mlirSparseTensorEncodingGetLvlRank⚠
Returns the level-rank of the sparse_tensor.encoding attribute.
mlirStridedLayoutAttrGet⚠
mlirStridedLayoutAttrGetName⚠
mlirStridedLayoutAttrGetNumStrides⚠
mlirStridedLayoutAttrGetOffset⚠
mlirStridedLayoutAttrGetStride⚠
mlirStridedLayoutAttrGetTypeID⚠
Returns the typeID of a StridedLayout attribute.
mlirStringAttrGet⚠
Creates a string attribute in the given context containing the given string.
mlirStringAttrGetName⚠
mlirStringAttrGetTypeID⚠
Returns the typeID of a String attribute.
mlirStringAttrGetValue⚠
Returns the attribute values as a string reference. The data remains live as long as the context in which the attribute lives.
mlirStringAttrTypedGet⚠
Creates a string attribute in the given context containing the given string. Additionally, the attribute has the given type.
mlirStringRefCreateFromCString⚠
Constructs a string reference from a null-terminated C string. Prefer mlirStringRefCreate if the length of the string is known.
mlirStringRefEqual⚠
Returns true if two string references are equal, false otherwise.
mlirSymbolRefAttrGet⚠
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.
mlirSymbolRefAttrGetLeafReference⚠
Returns the string reference to the leaf referenced symbol. The data remains live as long as the context in which the attribute lives.
mlirSymbolRefAttrGetName⚠
mlirSymbolRefAttrGetNestedReference⚠
Returns pos-th reference nested in the given symbol reference attribute.
mlirSymbolRefAttrGetNumNestedReferences⚠
Returns the number of references nested in the given symbol reference attribute.
mlirSymbolRefAttrGetRootReference⚠
Returns the string reference to the root referenced symbol. The data remains live as long as the context in which the attribute lives.
mlirSymbolRefAttrGetTypeID⚠
Returns the typeID of an SymbolRef attribute.
mlirSymbolTableCreate⚠
Creates a symbol table for the given operation. If the operation does not have the SymbolTable trait, returns a null symbol table.
mlirSymbolTableDestroy⚠
Destroys the symbol table created with mlirSymbolTableCreate. This does not affect the operations in the table.
mlirSymbolTableErase⚠
Removes the given operation from the symbol table and erases it.
mlirSymbolTableGetSymbolAttributeName⚠
Returns the name of the attribute used to store symbol names compatible with symbol tables.
mlirSymbolTableGetVisibilityAttributeName⚠
Returns the name of the attribute used to store symbol visibility.
mlirSymbolTableInsert⚠
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.
mlirSymbolTableLookup⚠
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.
mlirSymbolTableReplaceAllSymbolUses⚠
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.
mlirSymbolTableWalkSymbolTables⚠
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.
mlirTF32TypeGet⚠
Creates a TF32 type in the given context. The type is owned by the context.
mlirTF32TypeGetName⚠
mlirTransformAnyOpTypeGet⚠
mlirTransformAnyOpTypeGetName⚠
mlirTransformAnyOpTypeGetTypeID⚠
mlirTransformAnyParamTypeGet⚠
mlirTransformAnyParamTypeGetName⚠
mlirTransformAnyParamTypeGetTypeID⚠
mlirTransformAnyValueTypeGet⚠
mlirTransformAnyValueTypeGetName⚠
mlirTransformAnyValueTypeGetTypeID⚠
mlirTransformApplyNamedSequence⚠
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.
mlirTransformConsumesHandle⚠
Helper to mark operands as consuming handles.
mlirTransformModifiesPayload⚠
Helper to mark potential modifications to the payload IR.
mlirTransformOnlyReadsHandle⚠
Helper to mark operands as only reading handles.
mlirTransformOnlyReadsPayload⚠
Helper to mark potential reads from the payload IR.
mlirTransformOpInterfaceAttachFallbackModel⚠
Attach TransformOpInterface to the operation with the given name using the provided callbacks.
mlirTransformOpInterfaceTypeID⚠
Returns the interface TypeID of the TransformOpInterface.
mlirTransformOperationTypeGet⚠
mlirTransformOperationTypeGetName⚠
mlirTransformOperationTypeGetOperationName⚠
mlirTransformOperationTypeGetTypeID⚠
mlirTransformOptionsCreate⚠
Creates a default-initialized transform options object.
mlirTransformOptionsDestroy⚠
Destroys a transform options object previously created by mlirTransformOptionsCreate.
mlirTransformOptionsEnableExpensiveChecks⚠
Enables or disables expensive checks in transform options.
mlirTransformOptionsEnforceSingleTopLevelTransformOp⚠
Enables or disables the enforcement of the top-level transform op being single in transform options.
mlirTransformOptionsGetEnforceSingleTopLevelTransformOp⚠
Returns true if the enforcement of the top-level transform op being single is enabled in transform options.
mlirTransformOptionsGetExpensiveChecksEnabled⚠
Returns true if expensive checks are enabled in transform options.
mlirTransformParamTypeGet⚠
mlirTransformParamTypeGetName⚠
mlirTransformParamTypeGetType⚠
mlirTransformParamTypeGetTypeID⚠
mlirTransformProducesHandle⚠
Helper to mark results as producing handles.
mlirTransformResultsSetOps⚠
Set the payload operations for a transform result by iterating over a list.
mlirTransformResultsSetParams⚠
Set the parameters for a transform result by iterating over a list.
mlirTransformResultsSetValues⚠
Set the payload values for a transform result by iterating over a list.
mlirTransformRewriterAsBase⚠
Cast the TransformRewriter to a RewriterBase
mlirTransformStateForEachParam⚠
Iterate over parameters associated with the transform IR value. Calls the callback for each parameter.
mlirTransformStateForEachPayloadOp⚠
Iterate over payload operations associated with the transform IR value. Calls the callback for each payload operation.
mlirTransformStateForEachPayloadValue⚠
Iterate over payload values associated with the transform IR value. Calls the callback for each payload value.
mlirTranslateModuleToLLVMIR⚠
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.
mlirTranslateModuleToLLVMIRToString⚠
mlirTranslateModuleToSMTLIB⚠
Emits SMTLIB for the specified module using the provided callback and user data
mlirTranslateOperationToSMTLIB⚠
mlirTupleTypeGet⚠
Creates a tuple type that consists of the given list of elemental types. The type is owned by the context.
mlirTupleTypeGetName⚠
mlirTupleTypeGetNumTypes⚠
Returns the number of types contained in a tuple.
mlirTupleTypeGetType⚠
Returns the pos-th type in the tuple type.
mlirTupleTypeGetTypeID⚠
Returns the typeID of an Tuple type.
mlirTypeAttrGet⚠
Creates a type attribute wrapping the given type in the same context as the type.
mlirTypeAttrGetName⚠
mlirTypeAttrGetTypeID⚠
Returns the typeID of a Type attribute.
mlirTypeAttrGetValue⚠
Returns the type stored in the given type attribute.
mlirTypeConverterAddConversion⚠
Add a type conversion function to the given TypeConverter.
mlirTypeConverterConvertType⚠
Convert the given type using the given TypeConverter.
mlirTypeConverterCreate⚠
Create a TypeConverter.
mlirTypeConverterDestroy⚠
Destroy the given TypeConverter.
mlirTypeDump⚠
Prints the type to the standard error stream.
mlirTypeEqual⚠
Checks if two types are equal.
mlirTypeFromLLVMIRTranslatorCreate⚠
Create an LLVM::TypeFromLLVMIRTranslator and transfer ownership to the caller.
mlirTypeFromLLVMIRTranslatorDestroy⚠
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.
mlirTypeFromLLVMIRTranslatorTranslateType⚠
Translates the given LLVM IR type to the MLIR LLVM dialect.
mlirTypeGetContext⚠
Gets the context that a type was created with.
mlirTypeGetDialect⚠
Gets the dialect a type belongs to.
mlirTypeGetTypeID⚠
Gets the type ID of the type.
mlirTypeIDAllocatorAllocateTypeID⚠
Allocates a type id that is valid for the lifetime of the allocator
mlirTypeIDAllocatorCreate⚠
Creates a type id allocator for dynamic type id creation
mlirTypeIDAllocatorDestroy⚠
Deallocates the allocator and all allocated type ids
mlirTypeIDCreate⚠
ptr must be 8 byte aligned and unique to a type valid for the duration of the returned type id’s usage
mlirTypeIDEqual⚠
Checks if two type ids are equal.
mlirTypeIDHashValue⚠
Returns the hash value of the type id.
mlirTypeIsAAMDGPUTDMBaseType⚠
mlirTypeIsAAMDGPUTDMDescriptorType⚠
mlirTypeIsAAMDGPUTDMGatherBaseType⚠
mlirTypeIsAAnyQuantizedType⚠
Returns true if the given type is an AnyQuantizedType.
mlirTypeIsABF16⚠
Checks whether the given type is a bf16 type.
mlirTypeIsACalibratedQuantizedType⚠
Returns true if the given type is a CalibratedQuantizedType.
mlirTypeIsAComplex⚠
Checks whether the given type is a Complex type.
mlirTypeIsADynamicType⚠
Check if the given type is a dynamic type.
mlirTypeIsAEmitCArrayType⚠
mlirTypeIsAEmitCLValueType⚠
mlirTypeIsAEmitCOpaqueType⚠
mlirTypeIsAEmitCPointerType⚠
mlirTypeIsAEmitCPtrDiffTType⚠
mlirTypeIsAEmitCSignedSizeTType⚠
mlirTypeIsAEmitCSizeTType⚠
mlirTypeIsAF16⚠
Checks whether the given type is an f16 type.
mlirTypeIsAF32⚠
Checks whether the given type is an f32 type.
mlirTypeIsAF64⚠
Checks whether the given type is an f64 type.
mlirTypeIsAFloat⚠
Checks whether the given type is a floating-point type.
mlirTypeIsAFloat4E2M1FN⚠
Checks whether the given type is an f4E2M1FN type.
mlirTypeIsAFloat6E2M3FN⚠
Checks whether the given type is an f6E2M3FN type.
mlirTypeIsAFloat6E3M2FN⚠
Checks whether the given type is an f6E3M2FN type.
mlirTypeIsAFloat8E3M4⚠
Checks whether the given type is an f8E3M4 type.
mlirTypeIsAFloat8E4M3⚠
Checks whether the given type is an f8E4M3 type.
mlirTypeIsAFloat8E4M3B11FNUZ⚠
Checks whether the given type is an f8E4M3B11FNUZ type.
mlirTypeIsAFloat8E4M3FN⚠
Checks whether the given type is an f8E4M3FN type.
mlirTypeIsAFloat8E4M3FNUZ⚠
Checks whether the given type is an f8E4M3FNUZ type.
mlirTypeIsAFloat8E5M2⚠
Checks whether the given type is an f8E5M2 type.
mlirTypeIsAFloat8E5M2FNUZ⚠
Checks whether the given type is an f8E5M2FNUZ type.
mlirTypeIsAFloat8E8M0FNU⚠
Checks whether the given type is an f8E8M0FNU type.
mlirTypeIsAFunction⚠
Checks whether the given type is a function type.
mlirTypeIsAGPUAsyncTokenType⚠
mlirTypeIsAIndex⚠
Checks whether the given type is an index type.
mlirTypeIsAInteger⚠
Checks whether the given type is an integer type.
mlirTypeIsALLVMArrayType⚠
Returns true if the type is an LLVM dialect array type.
mlirTypeIsALLVMFunctionType⚠
Returns true if the type is an LLVM dialect function type.
mlirTypeIsALLVMPointerType⚠
Returns true if the type is an LLVM dialect pointer type.
mlirTypeIsALLVMStructType⚠
Returns true if the type is an LLVM dialect struct type.
mlirTypeIsAMemRef⚠
Checks whether the given type is a MemRef type.
mlirTypeIsANVGPUTensorMapDescriptorType⚠
mlirTypeIsANone⚠
Checks whether the given type is a None type.
mlirTypeIsAOpaque⚠
Checks whether the given type is an opaque type.
mlirTypeIsAPDLAttributeType⚠
mlirTypeIsAPDLOperationType⚠
mlirTypeIsAPDLRangeType⚠
mlirTypeIsAPDLType⚠
mlirTypeIsAPDLTypeType⚠
mlirTypeIsAPDLValueType⚠
mlirTypeIsAQuantizedType⚠
Returns true if the given type is a quantization dialect type.
mlirTypeIsARankedTensor⚠
Checks whether the given type is a ranked tensor type.
mlirTypeIsAShaped⚠
Checks whether the given type is a Shaped type.
mlirTypeIsATF32⚠
Checks whether the given type is an TF32 type.
mlirTypeIsATensor⚠
Checks whether the given type is a Tensor type.
mlirTypeIsATransformAnyOpType⚠
mlirTypeIsATransformAnyParamType⚠
mlirTypeIsATransformAnyValueType⚠
mlirTypeIsATransformOperationType⚠
mlirTypeIsATransformParamType⚠
mlirTypeIsATuple⚠
Checks whether the given type is a tuple type.
mlirTypeIsAUniformQuantizedPerAxisType⚠
Returns true if the given type is a UniformQuantizedPerAxisType.
mlirTypeIsAUniformQuantizedSubChannelType⚠
Returns true if the given type is a UniformQuantizedSubChannel.
mlirTypeIsAUniformQuantizedType⚠
Returns true if the given type is a UniformQuantizedType.
mlirTypeIsAUnrankedMemRef⚠
Checks whether the given type is an UnrankedMemRef type.
mlirTypeIsAUnrankedTensor⚠
Checks whether the given type is an unranked tensor type.
mlirTypeIsAVector⚠
Checks whether the given type is a Vector type.
mlirTypeParseGet⚠
Parses a type. The type is owned by the context.
mlirTypePrint⚠
Prints a location by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirTypeToLLVMIRTranslatorCreate⚠
Create an LLVM::TypeToLLVMIRTranslator and transfer ownership to the caller.
mlirTypeToLLVMIRTranslatorDestroy⚠
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.
mlirTypeToLLVMIRTranslatorTranslateType⚠
Translates the given MLIR LLVM dialect to the LLVM IR type.
mlirUniformQuantizedPerAxisTypeGet⚠
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.
mlirUniformQuantizedPerAxisTypeGetName⚠
mlirUniformQuantizedPerAxisTypeGetNumDims⚠
Returns the number of axes in the given quantized per-axis type.
mlirUniformQuantizedPerAxisTypeGetQuantizedDimension⚠
Returns the index of the quantized dimension in the given quantized per-axis type.
mlirUniformQuantizedPerAxisTypeGetScale⚠
Returns pos-th scale of the given quantized per-axis type.
mlirUniformQuantizedPerAxisTypeGetTypeID⚠
mlirUniformQuantizedPerAxisTypeGetZeroPoint⚠
Returns pos-th zero point of the given quantized per-axis type.
mlirUniformQuantizedPerAxisTypeIsFixedPoint⚠
Returns true if the given uniform quantized per-axis type is fixed-point.
mlirUniformQuantizedSubChannelTypeGet⚠
Creates a UniformQuantizedSubChannelType with the given parameters.
mlirUniformQuantizedSubChannelTypeGetBlockSize⚠
Returns the block size at the given position.
mlirUniformQuantizedSubChannelTypeGetName⚠
mlirUniformQuantizedSubChannelTypeGetNumBlockSizes⚠
Returns the number of block sizes provided in type.
mlirUniformQuantizedSubChannelTypeGetQuantizedDimension⚠
Returns the quantized dimension at the given position.
mlirUniformQuantizedSubChannelTypeGetScales⚠
Returns the scales of the quantized type.
mlirUniformQuantizedSubChannelTypeGetTypeID⚠
mlirUniformQuantizedSubChannelTypeGetZeroPoints⚠
Returns the zero-points of the quantized type.
mlirUniformQuantizedTypeGet⚠
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.
mlirUniformQuantizedTypeGetName⚠
mlirUniformQuantizedTypeGetScale⚠
Returns the scale of the given uniform quantized type.
mlirUniformQuantizedTypeGetTypeID⚠
mlirUniformQuantizedTypeGetZeroPoint⚠
Returns the zero point of the given uniform quantized type.
mlirUniformQuantizedTypeIsFixedPoint⚠
Returns true if the given uniform quantized type is fixed-point.
mlirUnitAttrGet⚠
Creates a unit attribute in the given context.
mlirUnitAttrGetName⚠
mlirUnitAttrGetTypeID⚠
Returns the typeID of a Unit attribute.
mlirUnmanagedDenseBoolResourceElementsAttrGet⚠
mlirUnmanagedDenseDoubleResourceElementsAttrGet⚠
mlirUnmanagedDenseFloatResourceElementsAttrGet⚠
mlirUnmanagedDenseInt8ResourceElementsAttrGet⚠
mlirUnmanagedDenseInt16ResourceElementsAttrGet⚠
mlirUnmanagedDenseInt32ResourceElementsAttrGet⚠
mlirUnmanagedDenseInt64ResourceElementsAttrGet⚠
mlirUnmanagedDenseResourceElementsAttrGet⚠
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).
mlirUnmanagedDenseUInt8ResourceElementsAttrGet⚠
mlirUnmanagedDenseUInt16ResourceElementsAttrGet⚠
mlirUnmanagedDenseUInt32ResourceElementsAttrGet⚠
mlirUnmanagedDenseUInt64ResourceElementsAttrGet⚠
mlirUnrankedMemRefTypeGet⚠
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.
mlirUnrankedMemRefTypeGetChecked⚠
Same as “mlirUnrankedMemRefTypeGet” but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.
mlirUnrankedMemRefTypeGetName⚠
mlirUnrankedMemRefTypeGetTypeID⚠
Returns the typeID of an UnrankedMemRef type.
mlirUnrankedMemrefGetMemorySpace⚠
Returns the memory spcae of the given Unranked MemRef type.
mlirUnrankedTensorTypeGet⚠
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.
mlirUnrankedTensorTypeGetChecked⚠
Same as “mlirUnrankedTensorTypeGet” but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.
mlirUnrankedTensorTypeGetName⚠
mlirUnrankedTensorTypeGetTypeID⚠
Returns the typeID of an UnrankedTensor type.
mlirValueDump⚠
Prints the value to the standard error stream.
mlirValueEqual⚠
Returns 1 if two values are equal, 0 otherwise.
mlirValueGetContext⚠
Gets the context that a value was created with.
mlirValueGetFirstUse⚠
Returns an op operand representing the first use of the value, or a null op operand if there are no uses.
mlirValueGetLocation⚠
Gets the location of the value.
mlirValueGetType⚠
Returns the type of the value.
mlirValueIsABlockArgument⚠
Returns 1 if the value is a block argument, 0 otherwise.
mlirValueIsAOpResult⚠
Returns 1 if the value is an operation result, 0 otherwise.
mlirValuePrint⚠
Prints a value by sending chunks of the string representation and forwarding userData to callback`. Note that the callback may be called several times with consecutive chunks of the string.
mlirValuePrintAsOperand⚠
Prints a value as an operand (i.e., the ValueID).
mlirValueReplaceAllUsesExcept⚠
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’.
mlirValueReplaceAllUsesOfWith⚠
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’.
mlirValueSetType⚠
Set the type of the value.
mlirVectorTypeGet⚠
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.
mlirVectorTypeGetChecked⚠
Same as “mlirVectorTypeGet” but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.
mlirVectorTypeGetName⚠
mlirVectorTypeGetScalable⚠
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.
mlirVectorTypeGetScalableChecked⚠
Same as “mlirVectorTypeGetScalable” but returns a nullptr wrapping MlirType on illegal arguments, emitting appropriate diagnostics.
mlirVectorTypeGetTypeID⚠
Returns the typeID of an Vector type.
mlirVectorTypeIsDimScalable⚠
Checks whether the “dim”-th dimension of the given vector is scalable.
mlirVectorTypeIsScalable⚠
Checks whether the given vector type is scalable, i.e., has at least one scalable dimension.
mlirWalkAndApplyPatterns⚠
Applies the given patterns to the given op by a fast walk-based pattern rewrite driver.
pselect⚠
select⚠
strtoimax⚠
strtoumax⚠
wcstoimax⚠
wcstoumax⚠

Type Aliases§

LLVMAtomicOrdering
LLVMAtomicRMWBinOp
LLVMAttributeIndex
LLVMAttributeRef
Used to represent an attributes.
LLVMBasicBlockRef
Represents a basic block of instructions in LLVM IR.
LLVMBinaryRef
@see llvm::object::Binary
LLVMBool
@defgroup LLVMCSupportTypes Types and Enumerations
LLVMBuilderRef
Represents an LLVM basic block builder.
LLVMCallConv
LLVMComdatRef
@see llvm::Comdat
LLVMContextRef
The top-level container for all LLVM global data. See the LLVMContext class.
LLVMDIBuilderRef
Represents an LLVM debug info builder.
LLVMDLLStorageClass
LLVMDbgRecordKind
LLVMDbgRecordRef
@see llvm::DbgRecord
LLVMDenormalModeKind
Represent different denormal handling kinds for use with LLVMCreateDenormalFPEnvAttribute.
LLVMDiagnosticHandler
@defgroup LLVMCCoreContext Contexts
LLVMDiagnosticInfoRef
@see llvm::DiagnosticInfo
LLVMDiagnosticSeverity
LLVMFastMathFlags
Flags to indicate what fast-math-style optimizations are allowed on operations.
LLVMFatalErrorHandler
@addtogroup LLVMCError
LLVMGEPNoWrapFlags
Flags that constrain the allowed wrap semantics of a getelementptr instruction.
LLVMInlineAsmDialect
LLVMIntPredicate
LLVMJITEventListenerRef
@see llvm::JITEventListener
LLVMLinkage
LLVMMemoryBufferRef
Used to pass regions of memory through LLVM interfaces.
LLVMMetadataRef
Represents an LLVM Metadata.
LLVMModuleFlagBehavior
LLVMModuleFlagEntry
@see llvm::Module::ModuleFlagEntry
LLVMModuleProviderRef
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.
LLVMModuleRef
The top-level container for all other LLVM Intermediate Representation (IR) objects.
LLVMNamedMDNodeRef
Represents an LLVM Named Metadata Node.
LLVMOpcode
External users depend on the following values being stable. It is not safe to reorder them.
LLVMOperandBundleRef
@see llvm::OperandBundleDef
LLVMPassManagerRef
@see llvm::PassManagerBase
LLVMRealPredicate
LLVMTailCallKind
Tail call kind for LLVMSetTailCallKind and LLVMGetTailCallKind.
LLVMThreadLocalMode
LLVMTypeKind
LLVMTypeRef
Each value in the LLVM IR has a type, an LLVMTypeRef.
LLVMUnnamedAddr
LLVMUseRef
Used to get the users and usees of a Value.
LLVMValueKind
LLVMValueMetadataEntry
Represents an entry in a Global Object’s metadata attachments.
LLVMValueRef
Represents an individual value in LLVM IR.
LLVMVisibility
LLVMYieldCallback
MlirAttributeCallback
Callback for iterating over parameters.
MlirConversionTargetDynamicLegalityCallback
Callback for dynamic legality checks. Returns the legality of the given operation instance (see MlirConversionTargetLegality).
MlirConversionTargetLegality
Result of a dynamic legality callback.
MlirDiagnosedSilenceableFailure
Enum representing the result of a transform operation.
MlirDiagnosticHandler
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.
MlirDiagnosticHandlerID
Opaque identifier of a diagnostic handler, useful to detach a handler.
MlirDiagnosticSeverity
Severity of a diagnostic.
MlirDialectConversionFoldingMode
MlirEmitCCmpPredicate
MlirGreedyRewriteStrictness
Greedy rewrite strictness levels.
MlirGreedySimplifyRegionLevel
Greedy simplify region levels.
MlirLLVMCConv
MlirLLVMComdat
MlirLLVMDIEmissionKind
MlirLLVMDINameTableKind
MlirLLVMLinkage
MlirLLVMTypeEncoding
MlirOperationCallback
Callback for iterating over payload operations.
MlirOperationWalkCallback
Operation walker type. The handler is passed an (opaque) reference to an operation and a pointer to a userData.
MlirPDLConstraintFunction
This function type is used as callbacks for PDL native constraint functions. Input values can be accessed by values with its size nValues; output values can be added into results by mlirPDLResultListPushBack* APIs. And the return value indicates whether the constraint holds.
MlirPDLRewriteFunction
This function type is used as callbacks for PDL native rewrite functions. Input values can be accessed by values with its size nValues; output values can be added into results by mlirPDLResultListPushBack* APIs. And the return value indicates whether the rewrite succeeds.
MlirPassDisplayMode
Enumerated type of pass display modes. Mainly used in mlirPassManagerEnableStatistics.
MlirShapedTypeComponentsCallback
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.
MlirSparseTensorLevelFormat
MlirSparseTensorLevelPropertyNondefault
MlirSparseTensorLevelType
Dimension level types (and properties) that define sparse tensors. See the documentation in SparseTensorAttrDefs.td for their meaning.
MlirSpeculatability
Enum representing the speculatability of an operation.
MlirStringCallback
A callback for returning string references.
MlirTypeConverterConversionCallback
Callback type for type conversion functions. Returns failure or sets convertedType to MlirType{NULL} to indicate failure. If failure is returned, the converter is allowed to try another conversion function to perform the conversion.
MlirTypesCallback
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.
MlirValueCallback
Callback for iterating over payload values.
MlirWalkOrder
Traversal order for operation walk.
MlirWalkResult
Operation walk result.
__blkcnt64_t
__blkcnt_t
__blksize_t
__caddr_t
__clock_t
__clockid_t
__daddr_t
__dev_t
__fd_mask
__fsblkcnt64_t
__fsblkcnt_t
__fsfilcnt64_t
__fsfilcnt_t
__fsword_t
__gid_t
__gwchar_t
__id_t
__ino64_t
__ino_t
__int8_t
__int16_t
__int32_t
__int64_t
__int_least8_t
__int_least16_t
__int_least32_t
__int_least64_t
__intmax_t
__intptr_t
__key_t
__loff_t
__mode_t
__nlink_t
__off64_t
__off_t
__pid_t
__pthread_list_t
__pthread_slist_t
__quad_t
__rlim64_t
__rlim_t
__sig_atomic_t
__socklen_t
__ssize_t
__suseconds64_t
__suseconds_t
__syscall_slong_t
__syscall_ulong_t
__thrd_t
__time_t
__timer_t
__tss_t
__u_char
__u_int
__u_long
__u_quad_t
__u_short
__uid_t
__uint8_t
__uint16_t
__uint32_t
__uint64_t
__uint_least8_t
__uint_least16_t
__uint_least32_t
__uint_least64_t
__uintmax_t
__useconds_t
_bindgen_ty_1
Attribute index are either LLVMAttributeReturnIndex, LLVMAttributeFunctionIndex or a parameter number from 1 to N.
_bindgen_ty_2
_bindgen_ty_3
blkcnt_t
blksize_t
caddr_t
clock_t
clockid_t
daddr_t
dev_t
fd_mask
fsblkcnt_t
fsfilcnt_t
fsid_t
gid_t
id_t
ino_t
int_fast8_t
int_fast16_t
int_fast32_t
int_fast64_t
int_least8_t
int_least16_t
int_least32_t
int_least64_t
intmax_t
key_t
loff_t
mode_t
nlink_t
off_t
pid_t
pthread_key_t
pthread_once_t
pthread_spinlock_t
pthread_t
quad_t
register_t
sigset_t
suseconds_t
time_t
timer_t
u_char
u_int
u_int8_t
u_int16_t
u_int32_t
u_int64_t
u_long
u_quad_t
u_short
uid_t
uint
uint_fast8_t
uint_fast16_t
uint_fast32_t
uint_fast64_t
uint_least8_t
uint_least16_t
uint_least32_t
uint_least64_t
uintmax_t
ulong
ushort
wchar_t

Unions§

__atomic_wide_counter
pthread_attr_t
pthread_barrier_t
pthread_barrierattr_t
pthread_cond_t
pthread_condattr_t
pthread_mutex_t
pthread_mutexattr_t
pthread_rwlock_t
pthread_rwlockattr_t