• API Documentation
  • Source Repository
  • LLVM.org
  • LLVM Docs
Show / Hide Table of Contents
  • Ubiquity.NET.Llvm
    • BitcodeModule
      • AddAlias
      • AddFunction
      • AddGlobal
      • AddGlobalInAddressSpace
      • AddModuleFlag
      • AddNamedMetadataOperand
      • AddVersionIdentMetadata
      • Aliases
      • AppendInlineAsm
      • Clone
      • Comdats
      • Context
      • CreateAndAddGlobalIFunc
      • CreateFunction
      • DataLayoutString
      • DebugMetadataVersion
      • DebugVersionValue
      • DIBuilder
      • DICompileUnit
      • Dispose
      • DwarfVersionValue
      • Functions
      • GetAlias
      • GetFunction
      • GetIntrinsicDeclaration
      • GetNamedGlobal
      • GetTypeByName
      • Globals
      • IExtensiblePropertyContainer.AddExtendedPropertyValue
      • IExtensiblePropertyContainer.TryGetExtendedPropertyValue
      • IndirectFunctions
      • IsDisposed
      • Layout
      • Link
      • LoadFrom
      • ModuleFlags
      • ModuleInlineAsm
      • Name
      • NamedMetadata
      • SourceFileName
      • TargetTriple
      • TryGetFunction
      • TryGetNamedGlobalIFunc
      • Verify
      • WriteToBuffer
      • WriteToFile
      • WriteToString
      • WriteToTextFile
    • ByteOrdering
    • CodeGenFileType
    • CodeGenOpt
    • CodeModel
    • Comdat
      • Kind
      • Module
      • Name
    • ComdatCollection
      • Clear
      • Contains
      • Count
      • GetEnumerator
      • IEnumerable.GetEnumerator
      • InsertOrUpdate
      • Item
      • Remove
      • TryGetValue
    • ComdatKind
    • ConstantAsMetadata
      • Constant
    • Context
      • BoolType
      • Context
      • CreateAttribute
      • CreateBasicBlock
      • CreateBitcodeModule
      • CreateConstant
      • CreateConstantString
      • CreateConstantStruct
      • CreateFunctionType
      • CreateMDNode
      • CreateMetadataString
      • CreateNamedConstantStruct
      • CreateStructType
      • Dispose
      • DoubleType
      • Float128Type
      • FloatType
      • GetFunctionType
      • GetIntType
      • GetMDKindId
      • GetPointerTypeFor
      • HalfFloatType
      • Int128Type
      • Int16Type
      • Int32Type
      • Int64Type
      • Int8Type
      • Metadata
      • MetadataType
      • Modules
      • OdrUniqueDebugTypes
      • OpenBinary
      • PpcFloat128Type
      • TokenType
      • VoidType
      • X86Float80Type
    • DataLayout
      • AbiAlignmentOf
      • AbiBitAlignmentOf
      • AbiSizeOf
      • BitOffsetOfElement
      • BitSizeOf
      • ByteSizeOf
      • CallFrameAlignmentOf
      • ElementAtOffset
      • Endianess
      • IntPtrType
      • OffsetOfElement
      • PointerSize
      • PreferredAlignmentOf
      • PreferredBitAlignmentOf
      • StoreSizeOf
      • ToString
    • Disassembler
      • Disassemble
      • Disassembler
      • SetOptions
    • DisassemblerOptions
    • ExtensiblePropertyContainer
      • AddExtendedPropertyValue
      • TryGetExtendedPropertyValue
    • ExtensiblePropertyDescriptor<T>
      • ExtensiblePropertyDescriptor
      • GetValueFrom
      • Name
      • SetValueIn
    • ExtensiblePropertyDescriptor<T>.LazyDefaultFactory
    • IBitcodeModuleFactory
      • CreateBitcodeModule
    • IExtensiblePropertyContainer
      • AddExtendedPropertyValue
      • TryGetExtendedPropertyValue
    • InternalCodeGeneratorException
      • InternalCodeGeneratorException
    • IOperandCollection<T>
      • Contains
      • Item
      • Slice
    • LlvmMetadata
      • Kind
      • ReplaceAllUsesWith
      • ToString
    • LocalAsMetadata
    • MDNode
      • Context
      • GetOperand
      • GetOperandString
      • IsDeleted
      • IsDistinct
      • IsResolved
      • IsTemporary
      • IsUniqued
      • Operands
      • ReplaceAllUsesWith
    • MDString
      • ToString
    • MDTuple
    • MemoryBuffer
      • Detach
      • Implicit
      • MemoryBuffer
      • Size
      • Slice
      • ToArray
    • MetadataAsValue
      • Operands
    • MetadataKind
    • MetadataOperandCollection
      • Contains
      • Count
      • GetEnumerator
      • GetOperand
      • IEnumerable.GetEnumerator
      • Item
    • ModuleFlag
      • Behavior
      • Metadata
      • ModuleFlag
      • Name
    • ModuleFlagBehavior
    • NamedMDNode
      • EraseFromParent
      • Name
      • Operands
      • ParentModule
    • OperandBundleNames
      • DeOpt
      • Funclet
      • GcTransition
    • OptimizationSizeLevel
    • RelocationMode
    • ScopeStack<T>
      • Depth
      • EnterScope
      • Item
      • ScopeStack
      • TryGetValue
    • Target
      • AvailableTargets
      • CreateTargetMachine
      • Description
      • FromTriple
      • HasAsmBackEnd
      • HasJIT
      • HasTargetMachine
      • Name
    • TargetMachine
      • Cpu
      • EmitToBuffer
      • EmitToFile
      • Features
      • FromTriple
      • Target
      • TargetData
      • TargetMachine
      • Triple
    • Triple
      • ArchitectureType
      • Environment
      • EnvironmentVersion
      • Equals
      • GetCanonicalArchForSubArch
      • GetCanonicalName
      • GetDefaultObjectFormat
      • GetHashCode
      • HostTriple
      • Implicit
      • Normalize
      • ObjectFormat
      • OS
      • SubArchitecture
      • ToString
      • Triple
      • Vendor
    • Triple.ArchType
    • Triple.EnvironmentType
    • Triple.ObjectFormatType
    • Triple.OSType
    • Triple.SubArchType
    • Triple.VendorType
    • ValueAsMetadata
      • Context
      • Implicit
      • Type
      • Value
  • Ubiquity.NET.Llvm.DebugInfo
    • DebugArrayType
      • DebugArrayType
      • DebugElementType
      • ElementType
      • Length
      • LowerBound
      • ResolveTemporary
    • DebugBasicType
      • DebugBasicType
    • DebugFunctionType
      • DebugFunctionType
      • IsVarArg
      • ParameterTypes
      • ReturnType
    • DebugInfoBuilder
      • CreateArgument
      • CreateArrayType
      • CreateBasicType
      • CreateCompileUnit
      • CreateConstantValueExpression
      • CreateEnumerationType
      • CreateEnumeratorValue
      • CreateExpression
      • CreateFile
      • CreateFunction
      • CreateGlobalVariableExpression
      • CreateLexicalBlock
      • CreateLexicalBlockFile
      • CreateLocalVariable
      • CreateMacro
      • CreateMemberType
      • CreateNamespace
      • CreatePointerType
      • CreateQualifiedType
      • CreateReplaceableCompositeType
      • CreateStructType
      • CreateSubRange
      • CreateSubroutineType
      • CreateTempMacroFile
      • CreateTypeArray
      • CreateTypedef
      • CreateUnionType
      • CreateVectorType
      • Finish
      • ForwardDeclareFunction
      • GetOrCreateArray
      • GetOrCreateTypeArray
      • InsertDeclare
      • InsertValue
      • OwningModule
    • DebugInfoFlags
    • DebugMemberInfo
      • DebugInfoFlags
      • DebugMemberInfo
      • DebugType
      • ExplicitLayout
      • File
      • Index
      • Line
      • Name
    • DebugMemberLayout
      • BitAlignment
      • BitOffset
      • BitSize
      • DebugMemberLayout
    • DebugPointerType
      • AddressSpace
      • DebugPointerType
      • ElementType
    • DebugStructType
      • DebugMembers
      • DebugStructType
      • IsOpaque
      • IsPacked
      • Members
      • Name
      • SetBody
      • SourceName
    • DebugType
      • Create
      • HasDebugInfo
    • DebugType<TNative, TDebug>
      • AddExtendedPropertyValue
      • Context
      • CreateArrayType
      • CreatePointerType
      • DIType
      • GetNullValue
      • Implicit
      • IntegerBitWidth
      • IsDouble
      • IsFloat
      • IsFloatingPoint
      • IsInteger
      • IsPointer
      • IsPointerPointer
      • IsSequence
      • IsSized
      • IsStruct
      • IsVoid
      • Kind
      • NativeType
      • TryGetExtendedPropertyValue
    • DebugUnionType
      • DebugMembers
      • DebugUnionType
      • IsOpaque
      • Members
      • Name
      • SetBody
    • DIBasicType
      • Encoding
    • DICompileUnit
      • EnumTypes
      • Flags
      • GlobalVariables
      • ImportedEntities
      • Macros
      • Producer
      • RetainedTypes
      • SplitDebugFileName
    • DICompositeType
      • BaseType
      • Discriminator
      • Elements
      • Identifier
      • TemplateParameters
      • VTableHolder
    • DICompositeTypeArray
    • DIDerivedType
      • BaseType
      • ClassType
      • Constant
      • ExtraData
      • ObjCProperty
      • StorageOffsetInBits
    • DIEnumerator
      • Name
    • DIExpression
    • DIFile
      • CheckSum
      • Directory
      • FileName
      • Path
      • Source
    • DIGlobalVariable
      • DisplayName
      • LinkageName
      • StaticDataMemberDeclaration
    • DIGlobalVariableExpression
      • Expression
      • Variable
    • DIGlobalVariableExpressionArray
    • DIImportedEntity
      • Entity
      • File
      • Name
      • Scope
    • DIImportedEntityArray
    • DILexicalBlock
    • DILexicalBlockBase
    • DILexicalBlockFile
    • DILocalScope
      • FirstNonLexicalBlockFileScope
      • LocalScope
      • SubProgram
    • DILocalVariable
      • Scope
    • DILocalVariableArray
    • DILocation
      • Column
      • DILocation
      • InlinedAt
      • InlinedAtScope
      • Line
      • Scope
      • ToString
    • DIMacro
      • Name
      • Value
    • DIMacroFile
      • Elements
      • File
    • DIMacroNode
    • DIMacroNodeArray
    • DIModule
      • ConfigurationMacros
      • IncludePath
      • Name
      • Scope
      • SysRoot
    • DINamespace
      • Name
      • Scope
    • DINode
      • Tag
    • DINodeArray
    • DIObjCProperty
      • File
      • GetterName
      • Name
      • SetterName
      • Type
    • DIScope
      • File
      • Name
      • Scope
    • DIScopeArray
    • DISubProgram
      • CompileUnit
      • ContainingType
      • Declaration
      • Describes
      • Line
      • LinkageName
      • Name
      • Signature
      • TemplateParams
      • ThrownTypes
      • Variables
    • DISubRange
      • ConstantCount
      • LowerBound
      • VariableCount
    • DISubroutineType
      • TypeArray
    • DITemplateParameter
      • Name
      • Type
    • DITemplateParameterArray
    • DITemplateTypeParameter
    • DITemplateValueParameter
      • GetValue
    • DIType
      • BitAlignment
      • BitOffset
      • BitSize
      • DebugInfoFlags
      • Line
      • Name
      • Scope
    • DITypeArray
    • DiTypeKind
    • DIVariable
      • DIType
      • File
      • Line
      • Name
      • Scope
    • DwarfEmissionKind
    • ExpressionOp
    • GenericDINode
      • Header
    • IDebugType<TNative, TDebug>
      • CreateArrayType
      • CreatePointerType
      • DIType
      • NativeType
    • MacroKind
    • QualifiedTypeTag
    • SourceLanguage
    • Tag
    • TupleTypedArrayWrapper<T>
      • Count
      • GetEnumerator
      • IEnumerable.GetEnumerator
      • Item
      • Tuple
  • Ubiquity.NET.Llvm.Instructions
    • AddressSpaceCast
    • Alloca
      • ElementType
    • AtomicCmpXchg
      • IsWeak
    • AtomicRMW
      • Kind
    • AtomicRMWBinOp
    • BinaryOperator
    • BitCast
    • Branch
      • Condition
      • IsConditional
    • CallBr
      • AddAttributeAtIndex
      • Attributes
      • GetAttributeAtIndex
      • GetAttributeCountAtIndex
      • GetAttributesAtIndex
      • RemoveAttributeAtIndex
      • TargetFunction
    • CallInstruction
      • AddAttributeAtIndex
      • Attributes
      • GetAttributeAtIndex
      • GetAttributeCountAtIndex
      • GetAttributesAtIndex
      • IsTailCall
      • RemoveAttributeAtIndex
      • TargetFunction
    • Cast
      • FromType
      • ToType
    • CatchPad
      • CatchSwitch
    • CatchReturn
      • CatchPad
      • CatchSwitchParentPad
    • CatchSwitch
      • HasUnwindDestination
      • ParentPad
      • UnwindDestination
      • UnwindsToCaller
    • CleanupPad
    • CleanupReturn
      • CleanupPad
      • HasUnwindDestination
      • UnwindDestination
      • UnwindsToCaller
    • Cmp
      • Predicate
    • DebugDeclare
    • DebugInfoIntrinsic
    • ExtractElement
    • ExtractValue
    • FCmp
    • Fence
    • FPExt
    • FPToSI
    • FPToUI
    • FPTrunc
    • Freeze
      • Value
    • FuncletPad
      • ArgOperands
      • ParentPad
    • GetElementPtr
    • IndirectBranch
    • InsertElement
    • InsertValue
    • Instruction
      • Alignment
      • ContainingBlock
      • HasMetadata
      • IsMemoryAccess
      • Item
      • Location
      • NonDebugLocMetadata
      • Opcode
      • Successors
    • InstructionBuilder
      • Add
      • AddWithOverflow
      • Alloca
      • And
      • AppendBasicBlock
      • ArithmeticShiftRight
      • AtomicAdd
      • AtomicAnd
      • AtomicCmpXchg
      • AtomicFadd
      • AtomicFSub
      • AtomicMax
      • AtomicMin
      • AtomicNand
      • AtomicOr
      • AtomicSub
      • AtomicUMax
      • AtomicUMin
      • AtomicXchg
      • AtomicXor
      • BitCast
      • Branch
      • Call
      • Compare
      • ConstGetElementPtrInBounds
      • Context
      • CurrentDebugLocation
      • DebugTrap
      • DoNothing
      • ExtractValue
      • FAdd
      • FDiv
      • FMul
      • FNeg
      • FPExt
      • FPToSICast
      • FPToUICast
      • FPTrunc
      • Freeze
      • FRem
      • FSub
      • GetElementPtr
      • GetElementPtrInBounds
      • GetStructElementPointer
      • InsertBlock
      • InsertFunction
      • InsertValue
      • InstructionBuilder
      • IntCast
      • IntToPointer
      • Invoke
      • LandingPad
      • Load
      • LogicalShiftRight
      • MemCpy
      • MemMove
      • MemSet
      • Mul
      • MulWithOverflow
      • Neg
      • Not
      • Or
      • PhiNode
      • PointerToInt
      • PositionAtEnd
      • PositionBefore
      • Resume
      • Return
      • SDiv
      • Select
      • SetDebugLocation
      • ShiftLeft
      • SignExtend
      • SignExtendOrBitCast
      • SIToFPCast
      • SRem
      • Store
      • Sub
      • SubWithOverflow
      • Switch
      • Trap
      • Trunc
      • TruncOrBitCast
      • UDiv
      • UIToFPCast
      • Unreachable
      • URem
      • Xor
      • ZeroExtend
      • ZeroExtendOrBitCast
    • InstructionExtensions
      • Alignment
      • IsVolatile
    • IntCmp
    • IntPredicate
    • Intrinsic
      • LookupId
    • IntToPointer
    • Invoke
      • AddAttributeAtIndex
      • Attributes
      • GetAttributeAtIndex
      • GetAttributeCountAtIndex
      • GetAttributesAtIndex
      • NormalDestination
      • RemoveAttributeAtIndex
      • TargetFunction
    • LandingPad
      • Clauses
      • IsCleanup
    • Load
      • IsVolatile
    • MemCpy
    • MemIntrinsic
    • MemMove
    • MemSet
    • OpCode
    • PhiNode
      • AddIncoming
    • PointerToInt
    • Predicate
    • RealPredicate
    • ResumeInstruction
    • ReturnInstruction
    • SelectInstruction
    • ShuffleVector
    • SignExtend
    • SIToFP
    • Store
      • IsVolatile
    • SuccessorBlockCollection
      • Contains
      • Count
      • GetEnumerator
      • IEnumerable.GetEnumerator
      • Item
    • Switch
      • AddCase
      • Default
    • Terminator
    • Trunc
    • UIToFP
    • UnaryInstruction
    • UnaryOperator
    • Unreachable
    • UserOp1
    • UserOp2
    • VaArg
    • ZeroExtend
  • Ubiquity.NET.Llvm.JIT
    • GenericValue
      • GenericValue
      • IntegerBitWidth
      • ToDouble
      • ToFloat
      • ToInt32
      • ToUInt32
    • IExecutionEngine
      • AddEagerlyCompiledModule
      • DefaultSymbolResolver
      • GetFunctionDelegate
      • RemoveModule
      • TargetMachine
    • ILazyCompileExecutionEngine
      • AddLazyCompiledModule
    • LazyCompilationExecutionEngineExtensions
      • AddEagerlyCompiledModule
      • AddLazyCompiledModule
    • LazyFunctionCompiler
    • OrcJit
      • AddEagerlyCompiledModule
      • AddInteropCallback
      • AddLazyCompiledModule
      • DefaultSymbolResolver
      • Dispose
      • GetFunctionDelegate
      • OrcJit
      • RemoveModule
      • TargetMachine
  • Ubiquity.NET.Llvm.ObjectFile
    • BinaryKind
    • Relocation
      • Description
      • Equality
      • Equals
      • GetHashCode
      • Inequality
      • Kind
      • Offset
      • Section
      • Symbol
      • Value
    • Section
      • Address
      • ContainingBinary
      • ContainsSymbol
      • Contents
      • Equality
      • Equals
      • GetHashCode
      • Inequality
      • MoveToContainingSection
      • Name
      • Relocations
    • Symbol
      • Address
      • ContainingBinary
      • Equality
      • Equals
      • GetHashCode
      • Inequality
      • Name
      • Section
      • Size
    • TargetBinary
      • Kind
      • Sections
      • Symbols
  • Ubiquity.NET.Llvm.Transforms
    • FunctionPassManager
      • Finish
      • FunctionPassManager
      • Initialize
      • Run
    • InterproceduralTransforms
      • AddAlwaysInlinerPass
      • AddArgumentPromotionPass
      • AddConstantMergePass
      • AddDeadArgEliminationPass
      • AddFunctionAttrsPass
      • AddFunctionInliningPass
      • AddGlobalDCEPass
      • AddGlobalOptimizerPass
      • AddInternalizePass
      • AddInternalizePassWithMustPreservePredicate
      • AddIPConstantPropagationPass
      • AddIPSCCPPass
      • AddPruneEHPass
      • AddStripDeadPrototypesPass
      • AddStripSymbolsPass
    • ModulePassManager
      • ModulePassManager
      • Run
    • PassManager
    • Sanitizers
      • AddAddressSanitizerPass
      • AddDataFlowSanitizerPass
      • AddMemorySanitizerPass
      • AddSanitizerPass
      • AddThreadSanitizerPass
    • ScalarTransforms
      • AddAddDiscriminatorsPass
      • AddAggressiveDCEPass
      • AddAlignmentFromAssumptionsPass
      • AddBasicAliasAnalysisPass
      • AddBitTrackingDCEPass
      • AddCFGSimplificationPass
      • AddConstantPropagationPass
      • AddCorrelatedValuePropagationPass
      • AddDCEPass
      • AddDeadStoreEliminationPass
      • AddDemoteMemoryToRegisterPass
      • AddEarlyCSEMemSSAPass
      • AddEarlyCSEPass
      • AddGVNPass
      • AddIndVarSimplifyPass
      • AddInstructionCombiningPass
      • AddJumpThreadingPass
      • AddLICMPass
      • AddLoopDeletionPass
      • AddLoopIdiomPass
      • AddLoopRerollPass
      • AddLoopRotatePass
      • AddLoopUnrollAndJamPass
      • AddLoopUnrollPass
      • AddLoopUnswitchPass
      • AddLowerAtomicPass
      • AddLowerConstantIntrinsicsPass
      • AddLowerExpectIntrinsicPass
      • AddLowerSwitchPass
      • AddMemCpyOptPass
      • AddMergedLoadStoreMotionPass
      • AddNewGVNPass
      • AddPartiallyInlineLibCallsPass
      • AddPromoteMemoryToRegisterPass
      • AddReassociatePass
      • AddScalarizerPass
      • AddScalarReplAggregatesPass
      • AddScalarReplAggregatesPassSSA
      • AddScalarReplAggregatesPassWithThreshold
      • AddSCCPPass
      • AddScopedNoAliasAAPass
      • AddSimplifyLibCallsPass
      • AddTailCallEliminationPass
      • AddTypeBasedAliasAnalysisPass
      • AddVerifierPass
    • VectorTransforms
      • AddLoopVectorizePass
      • AddSLPVectorizePass
  • Ubiquity.NET.Llvm.Types
    • IArrayType
      • Length
    • IFunctionType
      • IsVarArg
      • ParameterTypes
      • ReturnType
    • INamedStructuralType
      • IsOpaque
      • Members
      • Name
    • IPointerType
      • AddressSpace
    • ISequenceType
      • ElementType
    • IStructType
      • IsPacked
      • SetBody
    • ITypeRef
      • Context
      • CreateArrayType
      • CreatePointerType
      • GetNullValue
      • IntegerBitWidth
      • IsDouble
      • IsFloat
      • IsFloatingPoint
      • IsInteger
      • IsPointer
      • IsPointerPointer
      • IsSequence
      • IsSized
      • IsStruct
      • IsVoid
      • Kind
    • IVectorType
      • Size
    • TypeKind
  • Ubiquity.NET.Llvm.Values
    • Argument
      • AddAttribute
      • AddAttributes
      • Attributes
      • ContainingFunction
      • Index
      • RemoveAttribute
      • SetAlignment
    • AsmDialect
    • AttributeCollectionExtensions
      • Remove
    • AttributeContainerMixins
      • AddAttribute
      • AddAttributes
      • Contains
      • RemoveAttribute
    • AttributeKind
    • AttributeKindExtensions
      • GetAttributeName
      • LookupId
      • RequiresIntValue
    • AttributeValue
      • Context
      • Equality
      • Equals
      • GetHashCode
      • HasIntegerVaue
      • Inequality
      • IntegerValue
      • IsEnum
      • IsString
      • IsValidOn
      • Kind
      • Name
      • StringValue
      • ToString
      • TypeValue
      • VerifyValidOn
    • BasicBlock
      • ContainingFunction
      • FirstInstruction
      • GetNextInstruction
      • Instructions
      • LastInstruction
      • Terminator
    • BlockAddress
      • BasicBlock
      • Function
    • CallingConvention
    • Constant
      • AllOnesValueFor
      • ConstPointerToNullFor
      • IsZeroValue
      • NullValueFor
      • ToMetadata
      • UndefinedValueFor
    • ConstantAggregate
    • ConstantAggregateZero
    • ConstantArray
      • From
    • ConstantData
    • ConstantDataArray
    • ConstantDataSequential
      • Count
      • ExtractAsString
      • IsI8Sequence
      • IsString
      • RawData
    • ConstantDataVector
    • ConstantExpression
      • BitCast
      • GetElementPtr
      • IntToPtrExpression
      • OpCode
    • ConstantFP
      • GetValueWithLoss
      • Value
    • ConstantInt
      • BitWidth
      • SignExtendedValue
      • ZeroExtendedValue
    • ConstantPointerNull
      • From
    • ConstantStruct
    • ConstantTokenNone
    • ConstantVector
    • FunctionAttributeIndex
    • FunctionIndexKinds
    • GlobalAlias
      • Aliasee
    • GlobalIFunc
      • RemoveFromParent
      • Resolver
    • GlobalIndirectSymbol
      • IndirectSymbol
    • GlobalObject
      • Alignment
      • Comdat
      • Metadata
      • Section
      • SetMetadata
    • GlobalObjectExtensions
      • Alignment
      • Comdat
      • SectionName
    • GlobalValue
      • IsDeclaration
      • Linkage
      • ParentModule
      • UnnamedAddress
      • Visibility
    • GlobalValueExtensions
      • Linkage
      • UnnamedAddress
      • Visibility
    • GlobalVariable
      • AddDebugInfo
      • Initializer
      • IsConstant
      • IsExternallyInitialized
      • IsThreadLocal
      • RemoveFromParent
    • IAttributeAccessor
      • AddAttributeAtIndex
      • GetAttributeAtIndex
      • GetAttributeCountAtIndex
      • GetAttributesAtIndex
      • RemoveAttributeAtIndex
    • IAttributeContainer
      • Attributes
      • Context
    • IAttributeDictionary
    • InlineAsm
    • IrFunction
      • AddAttributeAtIndex
      • AppendBasicBlock
      • Attributes
      • BasicBlocks
      • CallingConvention
      • DISubProgram
      • EntryBlock
      • EraseFromParent
      • FindOrCreateNamedBlock
      • GcName
      • GetAttributeAtIndex
      • GetAttributeCountAtIndex
      • GetAttributesAtIndex
      • InsertBasicBlock
      • IntrinsicId
      • IsVarArg
      • Parameters
      • PersonalityFunction
      • PrependBasicBlock
      • RemoveAttributeAtIndex
      • ReturnType
      • Signature
      • Verify
    • Linkage
    • UndefValue
    • UnnamedAddressKind
    • Use
      • User
      • Value
    • User
      • Operands
      • Uses
    • Value
      • AddExtendedPropertyValue
      • Context
      • IsCallSite
      • IsFunction
      • IsInstruction
      • IsNull
      • IsUndefined
      • Name
      • NativeType
      • ReplaceAllUsesWith
      • ToString
      • TryGetExtendedPropertyValue
    • ValueExtensions
      • RegisterName
    • ValueOperandListCollection<T>
      • Contains
      • Count
      • GetEnumerator
      • GetOperand
      • IEnumerable.GetEnumerator
      • Item
    • Visibility

Method CreateFunction

 

CreateFunction(String, IFunctionType)

Gets an existing function with the specified signature to the module or creates a new one if it doesn't exist

Declaration
public IrFunction CreateFunction(string name, IFunctionType signature)

Parameters

String name

Name of the function to add

IFunctionType signature

Signature of the function

Returns

IrFunction

IrFunctionmatching the specified signature and name

Remarks

If a matching function already exists it is returned, and therefore the returned IrFunction may have a body and additional attributes. If a function of the same name exists with a different signature an exception is thrown as LLVM does not perform any function overloading.

 

CreateFunction(DIScope, String, String, DIFile, UInt32, DebugFunctionType, Boolean, Boolean, UInt32, DebugInfoFlags, Boolean)

Creates a Function definition with Debug information

Declaration
public IrFunction CreateFunction(DIScope scope, string name, string linkageName, DIFile file, uint line, DebugFunctionType signature, bool isLocalToUnit, bool isDefinition, uint scopeLine, DebugInfoFlags debugFlags, bool isOptimized)

Parameters

DIScope scope

Containing scope for the function

String name

Name of the function in source language form

String linkageName

Mangled linker visible name of the function (may be same as name if mangling not required by source language

DIFile file

File containing the function definition

UInt32 line

Line number of the function definition

DebugFunctionType signature

LLVM Function type for the signature of the function

Boolean isLocalToUnit

Flag to indicate if this function is local to the compilation unit

Boolean isDefinition

Flag to indicate if this is a definition

UInt32 scopeLine

First line of the function's outermost scope, this may not be the same as the first line of the function definition due to source formatting

DebugInfoFlags debugFlags

Additional flags describing this function

Boolean isOptimized

Flag to indicate if this function is optimized

Returns

IrFunction

Function described by the arguments

 

CreateFunction(String, Boolean, IDebugType<ITypeRef, DIType>, IEnumerable<IDebugType<ITypeRef, DIType>>)

Creates a function

Declaration
public IrFunction CreateFunction(string name, bool isVarArg, IDebugType<ITypeRef, DIType> returnType, IEnumerable<IDebugType<ITypeRef, DIType>> argumentTypes)

Parameters

String name

Name of the function

Boolean isVarArg

Flag indicating if the function supports a variadic argument list

IDebugType<ITypeRef, DIType> returnType

Return type of the function

IEnumerable<IDebugType<ITypeRef, DIType>> argumentTypes

Arguments for the function

Returns

IrFunction

Function, matching the signature specified. This may be a previously declared or defined function or a new function if none matching the name and signature is already present.

 

CreateFunction(String, Boolean, IDebugType<ITypeRef, DIType>, IDebugType<ITypeRef, DIType>[])

Creates a function

Declaration
public IrFunction CreateFunction(string name, bool isVarArg, IDebugType<ITypeRef, DIType> returnType, params IDebugType<ITypeRef, DIType>[] argumentTypes)

Parameters

String name

Name of the function

Boolean isVarArg

Flag indicating if the function supports a variadic argument list

IDebugType<ITypeRef, DIType> returnType

Return type of the function

IDebugType<ITypeRef, DIType>[] argumentTypes

Arguments for the function

Returns

IrFunction

Function, matching the signature specified. This may be a previously declared or defined function or a new function if none matching the name and signature is already present.

Back to top Copyright (C) 2017-2020, Ubiquity.NET Contributors
Build: 10.0.0