Module llvm

Source

Re-exports§

pub use self::AtomicRmwBinOp::*;
pub use self::CallConv::*;
pub use self::CodeGenOptSize::*;
pub use self::IntPredicate::*;
pub use self::Linkage::*;
pub use self::MetadataType::*;
pub use self::RealPredicate::*;

Modules§

archive_ro
A wrapper around LLVM’s archive (.a) code
debuginfo
diagnostic
LLVM diagnostic reports.
enzyme_ffi

Structs§

AllocKindFlags
ArchiveChild
ArchiveIterator
Builder
Linker
PassManager
RawEnum
Wrapper for a raw enum value returned from LLVM’s C APIs.
RustArchiveMember
SanitizerOptions
LLVMRustSanitizerOptions
ThinLTOModule
LLVMRustThinLTOModule

Enums§

ArchiveKind
LLVMRustArchiveKind
AsmDialect
LLVMRustAsmDialect
AtomicOrdering
LLVMAtomicOrdering
AtomicRmwBinOp
LLVMAtomicRmwBinOp
AttributeKind
Must match the layout of LLVMRustAttributeKind. Semantically a subset of the C++ enum llvm::Attribute::AttrKind, though it is not ABI compatible (since it’s a C++ enum)
AttributePlace
CallConv
LLVM CallingConv::ID. Should we wrap this?
ChecksumKind
LLVMRustChecksumKind
CodeGenOptLevel
LLVMRustCodeGenOptLevel
CodeGenOptSize
CodeModel
LLVMRustCodeModel
DLLStorageClass
LLVMDLLStorageClass
DiagnosticKind
LLVMRustDiagnosticKind
DiagnosticLevel
LLVMRustDiagnosticLevel
FileType
LLVMRustFileType
FloatAbi
LLVMRustFloatABI
IntPredicate
LLVMIntPredicate
LLVMMachineType
Translation of LLVM’s MachineTypes enum, defined in llvm\include\llvm\BinaryFormat\COFF.h.
LLVMRustResult
LLVMRustVerifierFailureAction
Linkage
Must match the layout of LLVMLinkage.
MemoryEffects
LLVMRustMemoryEffects
MetadataType
LLVMMetadataType
ModuleFlagMergeBehavior
Must match the layout of LLVMRustModuleFlagMergeBehavior.
Opcode
LLVMOpcode
OptStage
LLVMRustOptStage
PassBuilderOptLevel
LLVMRustPassBuilderOptLevel
RealPredicate
LLVMRealPredicate
RelocModel
LLVMRustRelocModel
TailCallKind
LLVMRustTailCallKind
ThreadLocalMode
LLVMThreadLocalMode
TypeKind
LLVMTypeKind
UnnamedAddr
LLVMUnnamedAddr
Visibility
Must match the layout of LLVMVisibility.

Constants§

False
True

Functions§

AddCallSiteAttributes
AddFunctionAttributes
CreateAlignmentAttr
CreateAllocKindAttr
CreateAllocSizeAttr
CreateAttrString
CreateAttrStringValue
CreateByValAttr
CreateDereferenceableAttr
CreateDereferenceableOrNullAttr
CreateRangeAttr
CreateStructRetAttr
CreateUWTableAttr
LLVMAddAnalysisPasses
LLVMAddCase
LLVMAddClause
LLVMAddGlobal
LLVMAddHandler
LLVMAddIncoming
LLVMAddNamedMetadataOperand
LLVMAppendBasicBlockInContext
LLVMAppendModuleInlineAsm
See Module::setModuleInlineAsm.
LLVMArrayType2
LLVMBuildAShr
LLVMBuildAdd
LLVMBuildAlloca
LLVMBuildAnd
LLVMBuildArrayAlloca
LLVMBuildAtomicCmpXchg
LLVMBuildAtomicRMW
LLVMBuildBitCast
LLVMBuildBr
LLVMBuildCatchPad
LLVMBuildCatchRet
LLVMBuildCatchSwitch
LLVMBuildCleanupPad
LLVMBuildCleanupRet
LLVMBuildCondBr
LLVMBuildExactSDiv
LLVMBuildExactUDiv
LLVMBuildExtractElement
LLVMBuildExtractValue
LLVMBuildFAdd
LLVMBuildFCmp
LLVMBuildFDiv
LLVMBuildFMul
LLVMBuildFNeg
LLVMBuildFPExt
LLVMBuildFPToSI
LLVMBuildFPToUI
LLVMBuildFPTrunc
LLVMBuildFRem
LLVMBuildFSub
LLVMBuildFence
LLVMBuildGEP2
LLVMBuildICmp
LLVMBuildInBoundsGEP2
LLVMBuildInsertElement
LLVMBuildInsertValue
LLVMBuildIntCast2
LLVMBuildIntToPtr
LLVMBuildLShr
LLVMBuildLandingPad
LLVMBuildLoad2
LLVMBuildMul
LLVMBuildNSWAdd
LLVMBuildNSWMul
LLVMBuildNSWSub
LLVMBuildNUWAdd
LLVMBuildNUWMul
LLVMBuildNUWSub
LLVMBuildNeg
LLVMBuildNot
LLVMBuildOr
LLVMBuildPhi
LLVMBuildPointerCast
LLVMBuildPtrToInt
LLVMBuildResume
LLVMBuildRet
LLVMBuildRetVoid
LLVMBuildSDiv
LLVMBuildSExt
LLVMBuildSIToFP
LLVMBuildSRem
LLVMBuildSelect
LLVMBuildShl
LLVMBuildShuffleVector
LLVMBuildStore
LLVMBuildSub
LLVMBuildSwitch
LLVMBuildTrunc
LLVMBuildUDiv
LLVMBuildUIToFP
LLVMBuildURem
LLVMBuildUnreachable
LLVMBuildVAArg
LLVMBuildXor
LLVMBuildZExt
LLVMCloneModule
LLVMConstArray2
LLVMConstBitCast
LLVMConstInBoundsGEP2
LLVMConstInt
LLVMConstIntOfArbitraryPrecision
LLVMConstIntToPtr
LLVMConstNull
LLVMConstPointerCast
LLVMConstPtrToInt
LLVMConstReal
LLVMConstStringInContext2
LLVMConstStructInContext
LLVMConstVector
LLVMContextDispose
LLVMCountParamTypes
LLVMCountParams
LLVMCreateBuilderInContext
LLVMCreatePassManager
Creates a legacy pass manager – only used for final codegen.
LLVMCreateStringAttribute
LLVMDeleteGlobal
LLVMDisposeBuilder
LLVMDisposeMessage
LLVMDoubleTypeInContext
LLVMDumpModule
LLVMDumpValue
LLVMFP128TypeInContext
LLVMFloatTypeInContext
LLVMFunctionType
LLVMGetAggregateElement
LLVMGetAlignment
LLVMGetBasicBlockParent
LLVMGetConstOpcode
LLVMGetCurrentDebugLocation2
LLVMGetDataLayoutStr
Data layout. See Module::getDataLayout.
LLVMGetElementType
LLVMGetFirstBasicBlock
LLVMGetFirstGlobal
LLVMGetFunctionCallConv
LLVMGetHostCPUFeatures
LLVMGetInitializer
LLVMGetInsertBlock
LLVMGetIntTypeWidth
LLVMGetLinkage
LLVMGetMDKindIDInContext
LLVMGetModuleContext
LLVMGetNamedFunction
LLVMGetNamedGlobal
LLVMGetNextGlobal
LLVMGetOperand
LLVMGetOrInsertComdat
LLVMGetParam
LLVMGetParamTypes
LLVMGetParams
LLVMGetPoison
LLVMGetReturnType
LLVMGetUndef
LLVMGetValueName2
LLVMGetVectorSize
LLVMGetVisibility
LLVMGlobalGetValueType
LLVMGlobalSetMetadata
LLVMHalfTypeInContext
LLVMInt1TypeInContext
LLVMInt8TypeInContext
LLVMInt16TypeInContext
LLVMInt32TypeInContext
LLVMInt64TypeInContext
LLVMIntTypeInContext
LLVMIsAArgument
LLVMIsAConstantExpr
LLVMIsAConstantInt
LLVMIsAGlobalVariable
LLVMIsAInstruction
LLVMIsDeclaration
LLVMIsGlobalConstant
LLVMIsMultithreaded
LLVMIsThreadLocal
LLVMIsUndef
LLVMMDNodeInContext2
LLVMMDStringInContext2
LLVMMetadataAsValue
LLVMMetadataTypeInContext
LLVMModuleCreateWithNameInContext
LLVMPointerTypeInContext
LLVMPositionBuilderAtEnd
LLVMReplaceAllUsesWith
LLVMRustAddCallSiteAttributes
LLVMRustAddFunctionAttributes
LLVMRustAddLibraryInfo
LLVMRustAddModuleFlagString
LLVMRustAddModuleFlagU32
Add LLVM module flags.
LLVMRustArchiveChildFree
LLVMRustArchiveChildName
LLVMRustArchiveIteratorFree
LLVMRustArchiveIteratorNew
LLVMRustArchiveIteratorNext
LLVMRustArchiveMemberFree
LLVMRustArchiveMemberNew
LLVMRustBuildAtomicLoad
LLVMRustBuildAtomicStore
LLVMRustBuildMaxNum
LLVMRustBuildMemCpy
LLVMRustBuildMemMove
LLVMRustBuildMemSet
LLVMRustBuildMinNum
LLVMRustBuildVectorReduceAdd
LLVMRustBuildVectorReduceAnd
LLVMRustBuildVectorReduceFAdd
LLVMRustBuildVectorReduceFMax
LLVMRustBuildVectorReduceFMin
LLVMRustBuildVectorReduceFMul
LLVMRustBuildVectorReduceMax
LLVMRustBuildVectorReduceMin
LLVMRustBuildVectorReduceMul
LLVMRustBuildVectorReduceOr
LLVMRustBuildVectorReduceXor
LLVMRustComputeLTOCacheKey
LLVMRustConstInt128Get
LLVMRustConstIntGetZExtValue
LLVMRustContextConfigureDiagnosticHandler
LLVMRustContextCreate
LLVMRustContextGetDiagnosticHandler
LLVMRustContextSetDiagnosticHandler
LLVMRustCreateAlignmentAttr
LLVMRustCreateAllocKindAttr
LLVMRustCreateAllocSizeAttr
LLVMRustCreateAttrNoValue
LLVMRustCreateByValAttr
LLVMRustCreateDereferenceableAttr
LLVMRustCreateDereferenceableOrNullAttr
LLVMRustCreateElementTypeAttr
LLVMRustCreateMemoryEffectsAttr
LLVMRustCreateRangeAttribute
LLVMRustCreateStructRetAttr
LLVMRustCreateTargetMachine
LLVMRustCreateThinLTOData
LLVMRustCreateUWTableAttr
LLVMRustDIBuilderCreate
LLVMRustDIBuilderCreateArrayType
LLVMRustDIBuilderCreateBasicType
LLVMRustDIBuilderCreateCompileUnit
LLVMRustDIBuilderCreateDebugLocation
LLVMRustDIBuilderCreateEnumerationType
LLVMRustDIBuilderCreateEnumerator
LLVMRustDIBuilderCreateFile
LLVMRustDIBuilderCreateFunction
LLVMRustDIBuilderCreateLexicalBlock
LLVMRustDIBuilderCreateLexicalBlockFile
LLVMRustDIBuilderCreateMemberType
LLVMRustDIBuilderCreateMethod
LLVMRustDIBuilderCreateNameSpace
LLVMRustDIBuilderCreatePointerType
LLVMRustDIBuilderCreateQualifiedType
LLVMRustDIBuilderCreateStaticMemberType
LLVMRustDIBuilderCreateStaticVariable
LLVMRustDIBuilderCreateStructType
LLVMRustDIBuilderCreateSubroutineType
LLVMRustDIBuilderCreateTemplateTypeParameter
LLVMRustDIBuilderCreateTypedef
LLVMRustDIBuilderCreateUnionType
LLVMRustDIBuilderCreateVariable
LLVMRustDIBuilderCreateVariantMemberType
LLVMRustDIBuilderCreateVariantPart
LLVMRustDIBuilderDispose
LLVMRustDIBuilderFinalize
LLVMRustDIBuilderGetOrCreateArray
LLVMRustDIBuilderGetOrCreateSubrange
LLVMRustDIBuilderInsertDeclareAtEnd
LLVMRustDICompositeTypeReplaceArrays
LLVMRustDIGetInstMetadata
LLVMRustDILocationCloneWithBaseDiscriminator
LLVMRustDebugMetadataVersion
LLVMRustDestroyArchive
LLVMRustDisableSystemDialogsOnCrash
LLVMRustDisposeTargetMachine
LLVMRustEraseInstFromParent
LLVMRustEraseInstUntilInclusive
LLVMRustFreeThinLTOData
LLVMRustGetDiagInfoKind
LLVMRustGetElementTypeArgIndex
LLVMRustGetHostCPUName
LLVMRustGetLastError
Returns a string describing the last error caused by an LLVMRust* call.
LLVMRustGetLastInstruction
LLVMRustGetMangledName
LLVMRustGetNamedValue
LLVMRustGetOrInsertFunction
LLVMRustGetOrInsertGlobal
LLVMRustGetSMDiagnostic
LLVMRustGetSliceFromObjectDataByName
LLVMRustGetSymbols
LLVMRustGetTargetFeature
LLVMRustGetTargetFeaturesCount
LLVMRustGetTerminator
LLVMRustGetTypeKind
See llvm::LLVMTypeKind::getTypeID.
LLVMRustGlobalAddMetadata
LLVMRustHasFeature
LLVMRustHasMetadata
LLVMRustInlineAsm
Prepares inline assembly.
LLVMRustInlineAsmVerify
LLVMRustInsertPrivateGlobal
LLVMRustInstallErrorHandlers
LLVMRustIs64BitSymbolicFile
LLVMRustIsBitcode
LLVMRustIsECObject
LLVMRustIsNonGVFunctionPointerTy
LLVMRustLLVMHasZlibCompressionForDebugSymbols
LLVMRustLLVMHasZstdCompressionForDebugSymbols
LLVMRustLinkerAdd
LLVMRustLinkerFree
LLVMRustLinkerNew
LLVMRustModuleBufferCreate
LLVMRustModuleBufferFree
LLVMRustModuleBufferLen
LLVMRustModuleBufferPtr
LLVMRustModuleCost
LLVMRustModuleInstructionStats
LLVMRustOpenArchive
LLVMRustOptimize
LLVMRustParseBitcodeForLTO
LLVMRustPositionBuilderAtStart
LLVMRustPrepareThinLTOImport
LLVMRustPrepareThinLTOInternalize
LLVMRustPrepareThinLTORename
LLVMRustPrepareThinLTOResolveWeak
LLVMRustPrintModule
LLVMRustPrintPasses
LLVMRustRunRestrictionPass
LLVMRustSetAlgebraicMath
LLVMRustSetAllowReassoc
LLVMRustSetDSOLocal
LLVMRustSetDataLayoutFromTargetMachine
LLVMRustSetFastMath
LLVMRustSetLLVMOptions
LLVMRustSetModuleCodeModel
LLVMRustSetModulePICLevel
LLVMRustSetModulePIELevel
LLVMRustSetNoSanitizeAddress
LLVMRustSetNoSanitizeHWAddress
LLVMRustSetNormalizedTarget
LLVMRustSetTailCallKind
LLVMRustThinLTOBufferCreate
LLVMRustThinLTOBufferFree
LLVMRustThinLTOBufferLen
LLVMRustThinLTOBufferPtr
LLVMRustThinLTOBufferThinLinkDataLen
LLVMRustThinLTOBufferThinLinkDataPtr
LLVMRustTimeTraceProfilerFinish
LLVMRustTimeTraceProfilerFinishThread
LLVMRustTimeTraceProfilerInitialize
LLVMRustUnpackInlineAsmDiagnostic
LLVMRustUnpackOptimizationDiagnostic
LLVMRustUnpackSMDiagnostic
LLVMRustVerifyFunction
LLVMRustVersionMajor
LLVMRustVersionMinor
LLVMRustVersionPatch
LLVMRustWriteArchive
LLVMRustWriteDiagnosticInfoToString
LLVMRustWriteOutputFile
LLVMRustWriteTwineToString
LLVMRustWriteTypeToString
LLVMRustWriteValueToString
LLVMSetAlignment
LLVMSetCleanup
LLVMSetComdat
LLVMSetCurrentDebugLocation2
LLVMSetDLLStorageClass
LLVMSetDataLayout
LLVMSetFunctionCallConv
LLVMSetGlobalConstant
LLVMSetInitializer
LLVMSetInstructionCallConv
LLVMSetLinkage
LLVMSetMetadata
LLVMSetPersonalityFn
LLVMSetSection
LLVMSetTailCall
LLVMSetThreadLocalMode
LLVMSetUnnamedAddress
LLVMSetValueName2
LLVMSetVisibility
LLVMSetVolatile
LLVMSetWeak
LLVMStructCreateNamed
LLVMStructSetBody
LLVMStructTypeInContext
LLVMTokenTypeInContext
LLVMTypeOf
LLVMValueAsMetadata
LLVMVectorType
LLVMVoidTypeInContext
LLVMWriteBitcodeToFile
Writes a module to the specified path. Returns 0 on success.
SetFunctionCallConv
SetInstructionCallConv
SetUniqueComdat
SetUnnamedAddress
add_global
build_byte_buffer
build_string
get_linkage
get_param
Safe wrapper around LLVMGetParam, because segfaults are no fun.
get_value_name
Safe wrapper for LLVMGetValueName2 into a byte slice
get_visibility
last_error
set_alignment
set_comdat
Get the named comdat from llmod and assign it to llglobal.
set_global_constant
set_initializer
set_linkage
set_section
set_thread_local_mode
set_value_name
Safe wrapper for LLVMSetValueName2 from a byte slice
set_visibility
twine_to_string

Type Aliases§

Bool
In the LLVM-C API, boolean values are passed as typedef int LLVMBool, which has a different ABI from Rust or C++ bool.
DiagnosticHandlerTy
GetSymbolsCallback
GetSymbolsErrorCallback
InlineAsmDiagHandlerTy
SelfProfileAfterPassCallback
SelfProfileBeforePassCallback

Foreign Types§

Archive
Attribute
BasicBlock
Comdat
ConstantInt
Context
DiagnosticHandler
DiagnosticInfo
Metadata
Module
ModuleBuffer
Pass
SMDiagnostic
TargetMachine
ThinLTOBuffer
ThinLTOData
Twine
Type
Value