
org.lwjgl.llvm.LLVMCore Maven / Gradle / Ivy
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.llvm;
import javax.annotation.*;
import java.nio.*;
import org.lwjgl.*;
import org.lwjgl.system.*;
import static org.lwjgl.system.APIUtil.*;
import static org.lwjgl.system.Checks.*;
import static org.lwjgl.system.JNI.*;
import static org.lwjgl.system.MemoryStack.*;
import static org.lwjgl.system.MemoryUtil.*;
public class LLVMCore {
/**
* {@code LLVMOpcode}
*
* Enum values:
*
*
* - {@link #LLVMRet Ret} - Terminator Instructions
* - {@link #LLVMBr Br} - Terminator Instructions
* - {@link #LLVMSwitch Switch} - Terminator Instructions
* - {@link #LLVMIndirectBr IndirectBr} - Terminator Instructions
* - {@link #LLVMInvoke Invoke} - Terminator Instructions
* - {@link #LLVMUnreachable Unreachable} - removed 6 due to API changes
* - {@link #LLVMFNeg FNeg} - Standard Unary Operators
* - {@link #LLVMAdd Add} - Standard Binary Operators
* - {@link #LLVMFAdd FAdd} - Standard Binary Operators
* - {@link #LLVMSub Sub} - Standard Binary Operators
* - {@link #LLVMFSub FSub} - Standard Binary Operators
* - {@link #LLVMMul Mul} - Standard Binary Operators
* - {@link #LLVMFMul FMul} - Standard Binary Operators
* - {@link #LLVMUDiv UDiv} - Standard Binary Operators
* - {@link #LLVMSDiv SDiv} - Standard Binary Operators
* - {@link #LLVMFDiv FDiv} - Standard Binary Operators
* - {@link #LLVMURem URem} - Standard Binary Operators
* - {@link #LLVMSRem SRem} - Standard Binary Operators
* - {@link #LLVMFRem FRem} - Standard Binary Operators
* - {@link #LLVMShl Shl} - Logical Operators
* - {@link #LLVMLShr LShr} - Logical Operators
* - {@link #LLVMAShr AShr} - Logical Operators
* - {@link #LLVMAnd And} - Logical Operators
* - {@link #LLVMOr Or} - Logical Operators
* - {@link #LLVMXor Xor} - Logical Operators
* - {@link #LLVMAlloca Alloca} - Memory Operators
* - {@link #LLVMLoad Load} - Memory Operators
* - {@link #LLVMStore Store} - Memory Operators
* - {@link #LLVMGetElementPtr GetElementPtr} - Memory Operators
* - {@link #LLVMTrunc Trunc} - Cast Operators
* - {@link #LLVMZExt ZExt} - Cast Operators
* - {@link #LLVMSExt SExt} - Cast Operators
* - {@link #LLVMFPToUI FPToUI} - Cast Operators
* - {@link #LLVMFPToSI FPToSI} - Cast Operators
* - {@link #LLVMUIToFP UIToFP} - Cast Operators
* - {@link #LLVMSIToFP SIToFP} - Cast Operators
* - {@link #LLVMFPTrunc FPTrunc} - Cast Operators
* - {@link #LLVMFPExt FPExt} - Cast Operators
* - {@link #LLVMPtrToInt PtrToInt} - Cast Operators
* - {@link #LLVMIntToPtr IntToPtr} - Cast Operators
* - {@link #LLVMBitCast BitCast} - Cast Operators
* - {@link #LLVMAddrSpaceCast AddrSpaceCast} - Cast Operators
* - {@link #LLVMICmp ICmp} - Other Operators
* - {@link #LLVMFCmp FCmp} - Other Operators
* - {@link #LLVMPHI PHI} - Other Operators
* - {@link #LLVMCall Call} - Other Operators
* - {@link #LLVMSelect Select} - Other Operators
* - {@link #LLVMUserOp1 UserOp1} - Other Operators
* - {@link #LLVMUserOp2 UserOp2} - Other Operators
* - {@link #LLVMVAArg VAArg} - Other Operators
* - {@link #LLVMExtractElement ExtractElement} - Other Operators
* - {@link #LLVMInsertElement InsertElement} - Other Operators
* - {@link #LLVMShuffleVector ShuffleVector} - Other Operators
* - {@link #LLVMExtractValue ExtractValue} - Other Operators
* - {@link #LLVMInsertValue InsertValue} - Other Operators
* - {@link #LLVMFence Fence} - Atomic operators
* - {@link #LLVMAtomicCmpXchg AtomicCmpXchg} - Atomic operators
* - {@link #LLVMAtomicRMW AtomicRMW} - Atomic operators
* - {@link #LLVMResume Resume} - Exception Handling Operators
* - {@link #LLVMLandingPad LandingPad} - Exception Handling Operators
* - {@link #LLVMCleanupRet CleanupRet} - Exception Handling Operators
* - {@link #LLVMCatchRet CatchRet} - Exception Handling Operators
* - {@link #LLVMCatchPad CatchPad} - Exception Handling Operators
* - {@link #LLVMCleanupPad CleanupPad} - Exception Handling Operators
* - {@link #LLVMCatchSwitch CatchSwitch} - Exception Handling Operators
*
*/
public static final int
LLVMRet = 1,
LLVMBr = 2,
LLVMSwitch = 3,
LLVMIndirectBr = 4,
LLVMInvoke = 5,
LLVMUnreachable = 7,
LLVMFNeg = 66,
LLVMAdd = 8,
LLVMFAdd = 9,
LLVMSub = 10,
LLVMFSub = 11,
LLVMMul = 12,
LLVMFMul = 13,
LLVMUDiv = 14,
LLVMSDiv = 15,
LLVMFDiv = 16,
LLVMURem = 17,
LLVMSRem = 18,
LLVMFRem = 19,
LLVMShl = 20,
LLVMLShr = 21,
LLVMAShr = 22,
LLVMAnd = 23,
LLVMOr = 24,
LLVMXor = 25,
LLVMAlloca = 26,
LLVMLoad = 27,
LLVMStore = 28,
LLVMGetElementPtr = 29,
LLVMTrunc = 30,
LLVMZExt = 31,
LLVMSExt = 32,
LLVMFPToUI = 33,
LLVMFPToSI = 34,
LLVMUIToFP = 35,
LLVMSIToFP = 36,
LLVMFPTrunc = 37,
LLVMFPExt = 38,
LLVMPtrToInt = 39,
LLVMIntToPtr = 40,
LLVMBitCast = 41,
LLVMAddrSpaceCast = 60,
LLVMICmp = 42,
LLVMFCmp = 43,
LLVMPHI = 44,
LLVMCall = 45,
LLVMSelect = 46,
LLVMUserOp1 = 47,
LLVMUserOp2 = 48,
LLVMVAArg = 49,
LLVMExtractElement = 50,
LLVMInsertElement = 51,
LLVMShuffleVector = 52,
LLVMExtractValue = 53,
LLVMInsertValue = 54,
LLVMFence = 55,
LLVMAtomicCmpXchg = 56,
LLVMAtomicRMW = 57,
LLVMResume = 58,
LLVMLandingPad = 59,
LLVMCleanupRet = 61,
LLVMCatchRet = 62,
LLVMCatchPad = 63,
LLVMCleanupPad = 64,
LLVMCatchSwitch = 65;
/**
* {@code LLVMTypeKind}
*
* Enum values:
*
*
* - {@link #LLVMVoidTypeKind VoidTypeKind} - type with no size
* - {@link #LLVMHalfTypeKind HalfTypeKind} - 16 bit floating point type
* - {@link #LLVMFloatTypeKind FloatTypeKind} - 32 bit floating point type
* - {@link #LLVMDoubleTypeKind DoubleTypeKind} - 64 bit floating point type
* - {@link #LLVMX86_FP80TypeKind X86_FP80TypeKind} - 80 bit floating point type (X87)
* - {@link #LLVMFP128TypeKind FP128TypeKind} - 128 bit floating point type (112-bit mantissa)
* - {@link #LLVMPPC_FP128TypeKind PPC_FP128TypeKind} - 128 bit floating point type (two 64-bits)
* - {@link #LLVMLabelTypeKind LabelTypeKind} - Labels
* - {@link #LLVMIntegerTypeKind IntegerTypeKind} - Arbitrary bit width integers
* - {@link #LLVMFunctionTypeKind FunctionTypeKind} - Functions
* - {@link #LLVMStructTypeKind StructTypeKind} - Structures
* - {@link #LLVMArrayTypeKind ArrayTypeKind} - Arrays
* - {@link #LLVMPointerTypeKind PointerTypeKind} - Pointers
* - {@link #LLVMVectorTypeKind VectorTypeKind} - SIMD 'packed' format, or other vector type
* - {@link #LLVMMetadataTypeKind MetadataTypeKind} - Metadata
* - {@link #LLVMX86_MMXTypeKind X86_MMXTypeKind} - X86 MMX
* - {@link #LLVMTokenTypeKind TokenTypeKind} - Tokens
*
*/
public static final int
LLVMVoidTypeKind = 0,
LLVMHalfTypeKind = 1,
LLVMFloatTypeKind = 2,
LLVMDoubleTypeKind = 3,
LLVMX86_FP80TypeKind = 4,
LLVMFP128TypeKind = 5,
LLVMPPC_FP128TypeKind = 6,
LLVMLabelTypeKind = 7,
LLVMIntegerTypeKind = 8,
LLVMFunctionTypeKind = 9,
LLVMStructTypeKind = 10,
LLVMArrayTypeKind = 11,
LLVMPointerTypeKind = 12,
LLVMVectorTypeKind = 13,
LLVMMetadataTypeKind = 14,
LLVMX86_MMXTypeKind = 15,
LLVMTokenTypeKind = 16;
/**
* {@code LLVMLinkage}
*
* Enum values:
*
*
* - {@link #LLVMExternalLinkage ExternalLinkage} - Externally visible function
* - {@link #LLVMAvailableExternallyLinkage AvailableExternallyLinkage}
* - {@link #LLVMLinkOnceAnyLinkage LinkOnceAnyLinkage} - Keep one copy of function when linking (inline)
* - {@link #LLVMLinkOnceODRLinkage LinkOnceODRLinkage} - Same, but only replaced by something equivalent.
* - {@link #LLVMLinkOnceODRAutoHideLinkage LinkOnceODRAutoHideLinkage} - Obsolete
* - {@link #LLVMWeakAnyLinkage WeakAnyLinkage} - Keep one copy of function when linking (weak)
* - {@link #LLVMWeakODRLinkage WeakODRLinkage} - Same, but only replaced by something equivalent.
* - {@link #LLVMAppendingLinkage AppendingLinkage} - Special purpose, only applies to global arrays
* - {@link #LLVMInternalLinkage InternalLinkage} - Rename collisions when linking (static functions)
* - {@link #LLVMPrivateLinkage PrivateLinkage} - Like Internal, but omit from symbol table
* - {@link #LLVMDLLImportLinkage DLLImportLinkage} - Obsolete
* - {@link #LLVMDLLExportLinkage DLLExportLinkage} - Obsolete
* - {@link #LLVMExternalWeakLinkage ExternalWeakLinkage} - ExternalWeak linkage description
* - {@link #LLVMGhostLinkage GhostLinkage} - Obsolete
* - {@link #LLVMCommonLinkage CommonLinkage} - Tentative definitions
* - {@link #LLVMLinkerPrivateLinkage LinkerPrivateLinkage} - Like Private, but linker removes.
* - {@link #LLVMLinkerPrivateWeakLinkage LinkerPrivateWeakLinkage} - Like LinkerPrivate, but is weak.
*
*/
public static final int
LLVMExternalLinkage = 0,
LLVMAvailableExternallyLinkage = 1,
LLVMLinkOnceAnyLinkage = 2,
LLVMLinkOnceODRLinkage = 3,
LLVMLinkOnceODRAutoHideLinkage = 4,
LLVMWeakAnyLinkage = 5,
LLVMWeakODRLinkage = 6,
LLVMAppendingLinkage = 7,
LLVMInternalLinkage = 8,
LLVMPrivateLinkage = 9,
LLVMDLLImportLinkage = 10,
LLVMDLLExportLinkage = 11,
LLVMExternalWeakLinkage = 12,
LLVMGhostLinkage = 13,
LLVMCommonLinkage = 14,
LLVMLinkerPrivateLinkage = 15,
LLVMLinkerPrivateWeakLinkage = 16;
/**
* {@code LLVMVisibility}
*
* Enum values:
*
*
* - {@link #LLVMDefaultVisibility DefaultVisibility} - The GV is visible
* - {@link #LLVMHiddenVisibility HiddenVisibility} - The GV is hidden
* - {@link #LLVMProtectedVisibility ProtectedVisibility} - The GV is protected
*
*/
public static final int
LLVMDefaultVisibility = 0,
LLVMHiddenVisibility = 1,
LLVMProtectedVisibility = 2;
/**
* {@code LLVMUnnamedAddr}
*
* Enum values:
*
*
* - {@link #LLVMNoUnnamedAddr NoUnnamedAddr} - Address of the GV is significant.
* - {@link #LLVMLocalUnnamedAddr LocalUnnamedAddr} - Address of the GV is locally insignificant.
* - {@link #LLVMGlobalUnnamedAddr GlobalUnnamedAddr} - Address of the GV is globally insignificant.
*
*/
public static final int
LLVMNoUnnamedAddr = 0,
LLVMLocalUnnamedAddr = 1,
LLVMGlobalUnnamedAddr = 2;
/**
* {@code LLVMDLLStorageClass}
*
* Enum values:
*
*
* - {@link #LLVMDefaultStorageClass DefaultStorageClass}
* - {@link #LLVMDLLImportStorageClass DLLImportStorageClass} - Function to be imported from DLL.
* - {@link #LLVMDLLExportStorageClass DLLExportStorageClass} - Function to be accessible from DLL.
*
*/
public static final int
LLVMDefaultStorageClass = 0,
LLVMDLLImportStorageClass = 1,
LLVMDLLExportStorageClass = 2;
/**
* {@code LLVMCallConv}
*
* Enum values:
*
*
* - {@link #LLVMCCallConv CCallConv}
* - {@link #LLVMFastCallConv FastCallConv}
* - {@link #LLVMColdCallConv ColdCallConv}
* - {@link #LLVMGHCCallConv GHCCallConv}
* - {@link #LLVMHiPECallConv HiPECallConv}
* - {@link #LLVMWebKitJSCallConv WebKitJSCallConv}
* - {@link #LLVMAnyRegCallConv AnyRegCallConv}
* - {@link #LLVMPreserveMostCallConv PreserveMostCallConv}
* - {@link #LLVMPreserveAllCallConv PreserveAllCallConv}
* - {@link #LLVMSwiftCallConv SwiftCallConv}
* - {@link #LLVMCXXFASTTLSCallConv CXXFASTTLSCallConv}
* - {@link #LLVMX86StdcallCallConv X86StdcallCallConv}
* - {@link #LLVMX86FastcallCallConv X86FastcallCallConv}
* - {@link #LLVMARMAPCSCallConv ARMAPCSCallConv}
* - {@link #LLVMARMAAPCSCallConv ARMAAPCSCallConv}
* - {@link #LLVMARMAAPCSVFPCallConv ARMAAPCSVFPCallConv}
* - {@link #LLVMMSP430INTRCallConv MSP430INTRCallConv}
* - {@link #LLVMX86ThisCallCallConv X86ThisCallCallConv}
* - {@link #LLVMPTXKernelCallConv PTXKernelCallConv}
* - {@link #LLVMPTXDeviceCallConv PTXDeviceCallConv}
* - {@link #LLVMSPIRFUNCCallConv SPIRFUNCCallConv}
* - {@link #LLVMSPIRKERNELCallConv SPIRKERNELCallConv}
* - {@link #LLVMIntelOCLBICallConv IntelOCLBICallConv}
* - {@link #LLVMX8664SysVCallConv X8664SysVCallConv}
* - {@link #LLVMWin64CallConv Win64CallConv}
* - {@link #LLVMX86VectorCallCallConv X86VectorCallCallConv}
* - {@link #LLVMHHVMCallConv HHVMCallConv}
* - {@link #LLVMHHVMCCallConv HHVMCCallConv}
* - {@link #LLVMX86INTRCallConv X86INTRCallConv}
* - {@link #LLVMAVRINTRCallConv AVRINTRCallConv}
* - {@link #LLVMAVRSIGNALCallConv AVRSIGNALCallConv}
* - {@link #LLVMAVRBUILTINCallConv AVRBUILTINCallConv}
* - {@link #LLVMAMDGPUVSCallConv AMDGPUVSCallConv}
* - {@link #LLVMAMDGPUGSCallConv AMDGPUGSCallConv}
* - {@link #LLVMAMDGPUPSCallConv AMDGPUPSCallConv}
* - {@link #LLVMAMDGPUCSCallConv AMDGPUCSCallConv}
* - {@link #LLVMAMDGPUKERNELCallConv AMDGPUKERNELCallConv}
* - {@link #LLVMX86RegCallCallConv X86RegCallCallConv}
* - {@link #LLVMAMDGPUHSCallConv AMDGPUHSCallConv}
* - {@link #LLVMMSP430BUILTINCallConv MSP430BUILTINCallConv}
* - {@link #LLVMAMDGPULSCallConv AMDGPULSCallConv}
* - {@link #LLVMAMDGPUESCallConv AMDGPUESCallConv}
*
*/
public static final int
LLVMCCallConv = 0,
LLVMFastCallConv = 8,
LLVMColdCallConv = 9,
LLVMGHCCallConv = 10,
LLVMHiPECallConv = 11,
LLVMWebKitJSCallConv = 12,
LLVMAnyRegCallConv = 13,
LLVMPreserveMostCallConv = 14,
LLVMPreserveAllCallConv = 15,
LLVMSwiftCallConv = 16,
LLVMCXXFASTTLSCallConv = 17,
LLVMX86StdcallCallConv = 64,
LLVMX86FastcallCallConv = 65,
LLVMARMAPCSCallConv = 66,
LLVMARMAAPCSCallConv = 67,
LLVMARMAAPCSVFPCallConv = 68,
LLVMMSP430INTRCallConv = 69,
LLVMX86ThisCallCallConv = 70,
LLVMPTXKernelCallConv = 71,
LLVMPTXDeviceCallConv = 72,
LLVMSPIRFUNCCallConv = 75,
LLVMSPIRKERNELCallConv = 76,
LLVMIntelOCLBICallConv = 77,
LLVMX8664SysVCallConv = 78,
LLVMWin64CallConv = 79,
LLVMX86VectorCallCallConv = 80,
LLVMHHVMCallConv = 81,
LLVMHHVMCCallConv = 82,
LLVMX86INTRCallConv = 83,
LLVMAVRINTRCallConv = 84,
LLVMAVRSIGNALCallConv = 85,
LLVMAVRBUILTINCallConv = 86,
LLVMAMDGPUVSCallConv = 87,
LLVMAMDGPUGSCallConv = 88,
LLVMAMDGPUPSCallConv = 89,
LLVMAMDGPUCSCallConv = 90,
LLVMAMDGPUKERNELCallConv = 91,
LLVMX86RegCallCallConv = 92,
LLVMAMDGPUHSCallConv = 93,
LLVMMSP430BUILTINCallConv = 94,
LLVMAMDGPULSCallConv = 95,
LLVMAMDGPUESCallConv = 96;
/**
* {@code LLVMValueKind}
*
* Enum values:
*
*
* - {@link #LLVMArgumentValueKind ArgumentValueKind}
* - {@link #LLVMBasicBlockValueKind BasicBlockValueKind}
* - {@link #LLVMMemoryUseValueKind MemoryUseValueKind}
* - {@link #LLVMMemoryDefValueKind MemoryDefValueKind}
* - {@link #LLVMMemoryPhiValueKind MemoryPhiValueKind}
* - {@link #LLVMFunctionValueKind FunctionValueKind}
* - {@link #LLVMGlobalAliasValueKind GlobalAliasValueKind}
* - {@link #LLVMGlobalIFuncValueKind GlobalIFuncValueKind}
* - {@link #LLVMGlobalVariableValueKind GlobalVariableValueKind}
* - {@link #LLVMBlockAddressValueKind BlockAddressValueKind}
* - {@link #LLVMConstantExprValueKind ConstantExprValueKind}
* - {@link #LLVMConstantArrayValueKind ConstantArrayValueKind}
* - {@link #LLVMConstantStructValueKind ConstantStructValueKind}
* - {@link #LLVMConstantVectorValueKind ConstantVectorValueKind}
* - {@link #LLVMUndefValueValueKind UndefValueValueKind}
* - {@link #LLVMConstantAggregateZeroValueKind ConstantAggregateZeroValueKind}
* - {@link #LLVMConstantDataArrayValueKind ConstantDataArrayValueKind}
* - {@link #LLVMConstantDataVectorValueKind ConstantDataVectorValueKind}
* - {@link #LLVMConstantIntValueKind ConstantIntValueKind}
* - {@link #LLVMConstantFPValueKind ConstantFPValueKind}
* - {@link #LLVMConstantPointerNullValueKind ConstantPointerNullValueKind}
* - {@link #LLVMConstantTokenNoneValueKind ConstantTokenNoneValueKind}
* - {@link #LLVMMetadataAsValueValueKind MetadataAsValueValueKind}
* - {@link #LLVMInlineAsmValueKind InlineAsmValueKind}
* - {@link #LLVMInstructionValueKind InstructionValueKind}
*
*/
public static final int
LLVMArgumentValueKind = 0,
LLVMBasicBlockValueKind = 1,
LLVMMemoryUseValueKind = 2,
LLVMMemoryDefValueKind = 3,
LLVMMemoryPhiValueKind = 4,
LLVMFunctionValueKind = 5,
LLVMGlobalAliasValueKind = 6,
LLVMGlobalIFuncValueKind = 7,
LLVMGlobalVariableValueKind = 8,
LLVMBlockAddressValueKind = 9,
LLVMConstantExprValueKind = 10,
LLVMConstantArrayValueKind = 11,
LLVMConstantStructValueKind = 12,
LLVMConstantVectorValueKind = 13,
LLVMUndefValueValueKind = 14,
LLVMConstantAggregateZeroValueKind = 15,
LLVMConstantDataArrayValueKind = 16,
LLVMConstantDataVectorValueKind = 17,
LLVMConstantIntValueKind = 18,
LLVMConstantFPValueKind = 19,
LLVMConstantPointerNullValueKind = 20,
LLVMConstantTokenNoneValueKind = 21,
LLVMMetadataAsValueValueKind = 22,
LLVMInlineAsmValueKind = 23,
LLVMInstructionValueKind = 24;
/**
* {@code LLVMIntPredicate}
*
* Enum values:
*
*
* - {@link #LLVMIntEQ IntEQ} - equal
* - {@link #LLVMIntNE IntNE} - not equal
* - {@link #LLVMIntUGT IntUGT} - unsigned greater than
* - {@link #LLVMIntUGE IntUGE} - unsigned greater or equal
* - {@link #LLVMIntULT IntULT} - unsigned less than
* - {@link #LLVMIntULE IntULE} - unsigned less or equal
* - {@link #LLVMIntSGT IntSGT} - signed greater than
* - {@link #LLVMIntSGE IntSGE} - signed greater or equal
* - {@link #LLVMIntSLT IntSLT} - signed less than
* - {@link #LLVMIntSLE IntSLE} - signed less or equal
*
*/
public static final int
LLVMIntEQ = 32,
LLVMIntNE = 33,
LLVMIntUGT = 34,
LLVMIntUGE = 35,
LLVMIntULT = 36,
LLVMIntULE = 37,
LLVMIntSGT = 38,
LLVMIntSGE = 39,
LLVMIntSLT = 40,
LLVMIntSLE = 41;
/**
* {@code LLVMRealPredicate}
*
* Enum values:
*
*
* - {@link #LLVMRealPredicateFalse RealPredicateFalse} - Always false (always folded)
* - {@link #LLVMRealOEQ RealOEQ} - True if ordered and equal
* - {@link #LLVMRealOGT RealOGT} - True if ordered and greater than
* - {@link #LLVMRealOGE RealOGE} - True if ordered and greater than or equal
* - {@link #LLVMRealOLT RealOLT} - True if ordered and less than
* - {@link #LLVMRealOLE RealOLE} - True if ordered and less than or equal
* - {@link #LLVMRealONE RealONE} - True if ordered and operands are unequal
* - {@link #LLVMRealORD RealORD} - True if ordered (no nans)
* - {@link #LLVMRealUNO RealUNO} - True if unordered: isnan(X) | isnan(Y)
* - {@link #LLVMRealUEQ RealUEQ} - True if unordered or equal
* - {@link #LLVMRealUGT RealUGT} - True if unordered or greater than
* - {@link #LLVMRealUGE RealUGE} - True if unordered, greater than, or equal
* - {@link #LLVMRealULT RealULT} - True if unordered or less than
* - {@link #LLVMRealULE RealULE} - True if unordered, less than, or equal
* - {@link #LLVMRealUNE RealUNE} - True if unordered or not equal
* - {@link #LLVMRealPredicateTrue RealPredicateTrue} - Always true (always folded)
*
*/
public static final int
LLVMRealPredicateFalse = 0,
LLVMRealOEQ = 1,
LLVMRealOGT = 2,
LLVMRealOGE = 3,
LLVMRealOLT = 4,
LLVMRealOLE = 5,
LLVMRealONE = 6,
LLVMRealORD = 7,
LLVMRealUNO = 8,
LLVMRealUEQ = 9,
LLVMRealUGT = 10,
LLVMRealUGE = 11,
LLVMRealULT = 12,
LLVMRealULE = 13,
LLVMRealUNE = 14,
LLVMRealPredicateTrue = 15;
/**
* {@code LLVMLandingPadClauseTy}
*
* Enum values:
*
*
* - {@link #LLVMLandingPadCatch LandingPadCatch} - A catch clause
* - {@link #LLVMLandingPadFilter LandingPadFilter} - A filter clause
*
*/
public static final int
LLVMLandingPadCatch = 0,
LLVMLandingPadFilter = 1;
/**
* {@code LLVMThreadLocalMode}
*
* Enum values:
*
*
* - {@link #LLVMNotThreadLocal NotThreadLocal}
* - {@link #LLVMGeneralDynamicTLSModel GeneralDynamicTLSModel}
* - {@link #LLVMLocalDynamicTLSModel LocalDynamicTLSModel}
* - {@link #LLVMInitialExecTLSModel InitialExecTLSModel}
* - {@link #LLVMLocalExecTLSModel LocalExecTLSModel}
*
*/
public static final int
LLVMNotThreadLocal = 0,
LLVMGeneralDynamicTLSModel = 1,
LLVMLocalDynamicTLSModel = 2,
LLVMInitialExecTLSModel = 3,
LLVMLocalExecTLSModel = 4;
/**
* {@code LLVMAtomicOrdering}
*
* Enum values:
*
*
* - {@link #LLVMAtomicOrderingNotAtomic AtomicOrderingNotAtomic} - A load or store which is not atomic
* - {@link #LLVMAtomicOrderingUnordered AtomicOrderingUnordered} - Lowest level of atomicity, guarantees somewhat sane results, lock free.
* - {@link #LLVMAtomicOrderingMonotonic AtomicOrderingMonotonic} - guarantees that if you take all the operations affecting a specific address, a consistent ordering exists
* - {@link #LLVMAtomicOrderingAcquire AtomicOrderingAcquire} - Acquire provides a barrier of the sort necessary to acquire a lock to access other memory with normal loads and stores.
* - {@link #LLVMAtomicOrderingRelease AtomicOrderingRelease} - Release is similar to Acquire, but with a barrier of the sort necessary to release a lock.
* - {@link #LLVMAtomicOrderingAcquireRelease AtomicOrderingAcquireRelease} - provides both an Acquire and a Release barrier (for fences and operations which both read and write memory).
* - {@link #LLVMAtomicOrderingSequentiallyConsistent AtomicOrderingSequentiallyConsistent} -
* provides Acquire semantics for loads and Release semantics for stores. Additionally, it guarantees that a total ordering exists between all
* SequentiallyConsistent operations.
*
*
*/
public static final int
LLVMAtomicOrderingNotAtomic = 0,
LLVMAtomicOrderingUnordered = 1,
LLVMAtomicOrderingMonotonic = 2,
LLVMAtomicOrderingAcquire = 4,
LLVMAtomicOrderingRelease = 5,
LLVMAtomicOrderingAcquireRelease = 6,
LLVMAtomicOrderingSequentiallyConsistent = 7;
/**
* {@code LLVMAtomicRMWBinOp}
*
* Enum values:
*
*
* - {@link #LLVMAtomicRMWBinOpXchg AtomicRMWBinOpXchg} - Set the new value and return the one old
* - {@link #LLVMAtomicRMWBinOpAdd AtomicRMWBinOpAdd} - Add a value and return the old one
* - {@link #LLVMAtomicRMWBinOpSub AtomicRMWBinOpSub} - Subtract a value and return the old one
* - {@link #LLVMAtomicRMWBinOpAnd AtomicRMWBinOpAnd} - And a value and return the old one
* - {@link #LLVMAtomicRMWBinOpNand AtomicRMWBinOpNand} - Not-And a value and return the old one
* - {@link #LLVMAtomicRMWBinOpOr AtomicRMWBinOpOr} - OR a value and return the old one
* - {@link #LLVMAtomicRMWBinOpXor AtomicRMWBinOpXor} - Xor a value and return the old one
* - {@link #LLVMAtomicRMWBinOpMax AtomicRMWBinOpMax} - Sets the value if it's greater than the original using a signed comparison and return the old one
* - {@link #LLVMAtomicRMWBinOpMin AtomicRMWBinOpMin} - Sets the value if it's Smaller than the original using a signed comparison and return the old one
* - {@link #LLVMAtomicRMWBinOpUMax AtomicRMWBinOpUMax} - Sets the value if it's greater than the original using an unsigned comparison and return the old one
* - {@link #LLVMAtomicRMWBinOpUMin AtomicRMWBinOpUMin} - Sets the value if it's greater than the original using an unsigned comparison and return the old one
*
*/
public static final int
LLVMAtomicRMWBinOpXchg = 0,
LLVMAtomicRMWBinOpAdd = 1,
LLVMAtomicRMWBinOpSub = 2,
LLVMAtomicRMWBinOpAnd = 3,
LLVMAtomicRMWBinOpNand = 4,
LLVMAtomicRMWBinOpOr = 5,
LLVMAtomicRMWBinOpXor = 6,
LLVMAtomicRMWBinOpMax = 7,
LLVMAtomicRMWBinOpMin = 8,
LLVMAtomicRMWBinOpUMax = 9,
LLVMAtomicRMWBinOpUMin = 10;
/**
* {@code LLVMDiagnosticSeverity}
*
* Enum values:
*
*
* - {@link #LLVMDSError DSError}
* - {@link #LLVMDSWarning DSWarning}
* - {@link #LLVMDSRemark DSRemark}
* - {@link #LLVMDSNote DSNote}
*
*/
public static final int
LLVMDSError = 0,
LLVMDSWarning = 1,
LLVMDSRemark = 2,
LLVMDSNote = 3;
/**
* {@code LLVMInlineAsmDialect}
*
* Enum values:
*
*
* - {@link #LLVMInlineAsmDialectATT InlineAsmDialectATT}
* - {@link #LLVMInlineAsmDialectIntel InlineAsmDialectIntel}
*
*/
public static final int
LLVMInlineAsmDialectATT = 0,
LLVMInlineAsmDialectIntel = 1;
/**
* {@code LLVMModuleFlagBehavior}
*
* Enum values:
*
*
* - {@link #LLVMModuleFlagBehaviorError ModuleFlagBehaviorError} - Emits an error if two values disagree, otherwise the resulting value is that of the operands.
* - {@link #LLVMModuleFlagBehaviorWarning ModuleFlagBehaviorWarning} - Emits a warning if two values disagree. The result value will be the operand for the flag from the first module being linked.
* - {@link #LLVMModuleFlagBehaviorRequire ModuleFlagBehaviorRequire} -
* 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.
*
* - {@link #LLVMModuleFlagBehaviorOverride ModuleFlagBehaviorOverride} -
* 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.
*
* - {@link #LLVMModuleFlagBehaviorAppend ModuleFlagBehaviorAppend} - Appends the two values, which are required to be metadata nodes.
* - {@link #LLVMModuleFlagBehaviorAppendUnique ModuleFlagBehaviorAppendUnique} -
* Appends the two values, which are required to be metadata nodes. However, duplicate entries in the second list are dropped during the append
* operation.
*
*
*/
public static final int
LLVMModuleFlagBehaviorError = 0,
LLVMModuleFlagBehaviorWarning = 1,
LLVMModuleFlagBehaviorRequire = 2,
LLVMModuleFlagBehaviorOverride = 3,
LLVMModuleFlagBehaviorAppend = 4,
LLVMModuleFlagBehaviorAppendUnique = 5;
/**
* Attribute index are either {@code LLVMAttributeReturnIndex}, {@code LLVMAttributeFunctionIndex} or a parameter number from 1 to N.
*
* Enum values:
*
*
* - {@link #LLVMAttributeReturnIndex AttributeReturnIndex}
* - {@link #LLVMAttributeFunctionIndex AttributeFunctionIndex} - ISO C restricts enumerator values to range of 'int' (4294967295 is too large)
*
*/
public static final int
LLVMAttributeReturnIndex = 0,
LLVMAttributeFunctionIndex = -1;
protected LLVMCore() {
throw new UnsupportedOperationException();
}
private static final SharedLibrary LLVM = Library.loadNative(LLVMCore.class, Configuration.LLVM_LIBRARY_NAME, "libLLVM");
/** Contains the function pointers loaded from the LLVM {@link SharedLibrary}. */
public static final class Functions {
private Functions() {}
/** Function address. */
public static final long
InitializeCore = apiGetFunctionAddress(LLVM, "LLVMInitializeCore"),
Shutdown = apiGetFunctionAddress(LLVM, "LLVMShutdown"),
CreateMessage = apiGetFunctionAddress(LLVM, "LLVMCreateMessage"),
DisposeMessage = apiGetFunctionAddress(LLVM, "LLVMDisposeMessage"),
ContextCreate = apiGetFunctionAddress(LLVM, "LLVMContextCreate"),
GetGlobalContext = apiGetFunctionAddress(LLVM, "LLVMGetGlobalContext"),
ContextSetDiagnosticHandler = apiGetFunctionAddress(LLVM, "LLVMContextSetDiagnosticHandler"),
ContextGetDiagnosticHandler = apiGetFunctionAddress(LLVM, "LLVMContextGetDiagnosticHandler"),
ContextGetDiagnosticContext = apiGetFunctionAddress(LLVM, "LLVMContextGetDiagnosticContext"),
ContextSetYieldCallback = apiGetFunctionAddress(LLVM, "LLVMContextSetYieldCallback"),
ContextShouldDiscardValueNames = LLVM.getFunctionAddress("LLVMContextShouldDiscardValueNames"),
ContextSetDiscardValueNames = LLVM.getFunctionAddress("LLVMContextSetDiscardValueNames"),
ContextDispose = apiGetFunctionAddress(LLVM, "LLVMContextDispose"),
GetDiagInfoDescription = apiGetFunctionAddress(LLVM, "LLVMGetDiagInfoDescription"),
GetDiagInfoSeverity = apiGetFunctionAddress(LLVM, "LLVMGetDiagInfoSeverity"),
GetMDKindIDInContext = apiGetFunctionAddress(LLVM, "LLVMGetMDKindIDInContext"),
GetMDKindID = apiGetFunctionAddress(LLVM, "LLVMGetMDKindID"),
GetEnumAttributeKindForName = apiGetFunctionAddress(LLVM, "LLVMGetEnumAttributeKindForName"),
GetLastEnumAttributeKind = apiGetFunctionAddress(LLVM, "LLVMGetLastEnumAttributeKind"),
CreateEnumAttribute = apiGetFunctionAddress(LLVM, "LLVMCreateEnumAttribute"),
GetEnumAttributeKind = apiGetFunctionAddress(LLVM, "LLVMGetEnumAttributeKind"),
GetEnumAttributeValue = apiGetFunctionAddress(LLVM, "LLVMGetEnumAttributeValue"),
CreateStringAttribute = apiGetFunctionAddress(LLVM, "LLVMCreateStringAttribute"),
GetStringAttributeKind = apiGetFunctionAddress(LLVM, "LLVMGetStringAttributeKind"),
GetStringAttributeValue = apiGetFunctionAddress(LLVM, "LLVMGetStringAttributeValue"),
IsEnumAttribute = apiGetFunctionAddress(LLVM, "LLVMIsEnumAttribute"),
IsStringAttribute = apiGetFunctionAddress(LLVM, "LLVMIsStringAttribute"),
ModuleCreateWithName = apiGetFunctionAddress(LLVM, "LLVMModuleCreateWithName"),
ModuleCreateWithNameInContext = apiGetFunctionAddress(LLVM, "LLVMModuleCreateWithNameInContext"),
CloneModule = apiGetFunctionAddress(LLVM, "LLVMCloneModule"),
DisposeModule = apiGetFunctionAddress(LLVM, "LLVMDisposeModule"),
GetModuleIdentifier = apiGetFunctionAddress(LLVM, "LLVMGetModuleIdentifier"),
SetModuleIdentifier = apiGetFunctionAddress(LLVM, "LLVMSetModuleIdentifier"),
GetSourceFileName = LLVM.getFunctionAddress("LLVMGetSourceFileName"),
SetSourceFileName = LLVM.getFunctionAddress("LLVMSetSourceFileName"),
GetDataLayoutStr = apiGetFunctionAddress(LLVM, "LLVMGetDataLayoutStr"),
GetDataLayout = apiGetFunctionAddress(LLVM, "LLVMGetDataLayout"),
SetDataLayout = apiGetFunctionAddress(LLVM, "LLVMSetDataLayout"),
GetTarget = apiGetFunctionAddress(LLVM, "LLVMGetTarget"),
SetTarget = apiGetFunctionAddress(LLVM, "LLVMSetTarget"),
CopyModuleFlagsMetadata = LLVM.getFunctionAddress("LLVMCopyModuleFlagsMetadata"),
DisposeModuleFlagsMetadata = LLVM.getFunctionAddress("LLVMDisposeModuleFlagsMetadata"),
ModuleFlagEntriesGetFlagBehavior = LLVM.getFunctionAddress("LLVMModuleFlagEntriesGetFlagBehavior"),
ModuleFlagEntriesGetKey = LLVM.getFunctionAddress("LLVMModuleFlagEntriesGetKey"),
ModuleFlagEntriesGetMetadata = LLVM.getFunctionAddress("LLVMModuleFlagEntriesGetMetadata"),
GetModuleFlag = LLVM.getFunctionAddress("LLVMGetModuleFlag"),
AddModuleFlag = LLVM.getFunctionAddress("LLVMAddModuleFlag"),
DumpModule = apiGetFunctionAddress(LLVM, "LLVMDumpModule"),
PrintModuleToFile = apiGetFunctionAddress(LLVM, "LLVMPrintModuleToFile"),
PrintModuleToString = apiGetFunctionAddress(LLVM, "LLVMPrintModuleToString"),
GetModuleInlineAsm = LLVM.getFunctionAddress("LLVMGetModuleInlineAsm"),
SetModuleInlineAsm2 = LLVM.getFunctionAddress("LLVMSetModuleInlineAsm2"),
AppendModuleInlineAsm = LLVM.getFunctionAddress("LLVMAppendModuleInlineAsm"),
GetInlineAsm = LLVM.getFunctionAddress("LLVMGetInlineAsm"),
GetModuleContext = apiGetFunctionAddress(LLVM, "LLVMGetModuleContext"),
GetTypeByName = apiGetFunctionAddress(LLVM, "LLVMGetTypeByName"),
GetFirstNamedMetadata = LLVM.getFunctionAddress("LLVMGetFirstNamedMetadata"),
GetLastNamedMetadata = LLVM.getFunctionAddress("LLVMGetLastNamedMetadata"),
GetNextNamedMetadata = LLVM.getFunctionAddress("LLVMGetNextNamedMetadata"),
GetPreviousNamedMetadata = LLVM.getFunctionAddress("LLVMGetPreviousNamedMetadata"),
GetNamedMetadata = LLVM.getFunctionAddress("LLVMGetNamedMetadata"),
GetOrInsertNamedMetadata = LLVM.getFunctionAddress("LLVMGetOrInsertNamedMetadata"),
GetNamedMetadataName = LLVM.getFunctionAddress("LLVMGetNamedMetadataName"),
GetNamedMetadataNumOperands = apiGetFunctionAddress(LLVM, "LLVMGetNamedMetadataNumOperands"),
GetNamedMetadataOperands = apiGetFunctionAddress(LLVM, "LLVMGetNamedMetadataOperands"),
AddNamedMetadataOperand = apiGetFunctionAddress(LLVM, "LLVMAddNamedMetadataOperand"),
GetDebugLocDirectory = LLVM.getFunctionAddress("LLVMGetDebugLocDirectory"),
GetDebugLocFilename = LLVM.getFunctionAddress("LLVMGetDebugLocFilename"),
GetDebugLocLine = LLVM.getFunctionAddress("LLVMGetDebugLocLine"),
GetDebugLocColumn = LLVM.getFunctionAddress("LLVMGetDebugLocColumn"),
AddFunction = apiGetFunctionAddress(LLVM, "LLVMAddFunction"),
GetNamedFunction = apiGetFunctionAddress(LLVM, "LLVMGetNamedFunction"),
GetFirstFunction = apiGetFunctionAddress(LLVM, "LLVMGetFirstFunction"),
GetLastFunction = apiGetFunctionAddress(LLVM, "LLVMGetLastFunction"),
GetNextFunction = apiGetFunctionAddress(LLVM, "LLVMGetNextFunction"),
GetPreviousFunction = apiGetFunctionAddress(LLVM, "LLVMGetPreviousFunction"),
SetModuleInlineAsm = LLVM.getFunctionAddress("LLVMSetModuleInlineAsm"),
GetTypeKind = apiGetFunctionAddress(LLVM, "LLVMGetTypeKind"),
TypeIsSized = apiGetFunctionAddress(LLVM, "LLVMTypeIsSized"),
GetTypeContext = apiGetFunctionAddress(LLVM, "LLVMGetTypeContext"),
DumpType = LLVM.getFunctionAddress("LLVMDumpType"),
PrintTypeToString = apiGetFunctionAddress(LLVM, "LLVMPrintTypeToString"),
Int1TypeInContext = apiGetFunctionAddress(LLVM, "LLVMInt1TypeInContext"),
Int8TypeInContext = apiGetFunctionAddress(LLVM, "LLVMInt8TypeInContext"),
Int16TypeInContext = apiGetFunctionAddress(LLVM, "LLVMInt16TypeInContext"),
Int32TypeInContext = apiGetFunctionAddress(LLVM, "LLVMInt32TypeInContext"),
Int64TypeInContext = apiGetFunctionAddress(LLVM, "LLVMInt64TypeInContext"),
Int128TypeInContext = apiGetFunctionAddress(LLVM, "LLVMInt128TypeInContext"),
IntTypeInContext = apiGetFunctionAddress(LLVM, "LLVMIntTypeInContext"),
Int1Type = apiGetFunctionAddress(LLVM, "LLVMInt1Type"),
Int8Type = apiGetFunctionAddress(LLVM, "LLVMInt8Type"),
Int16Type = apiGetFunctionAddress(LLVM, "LLVMInt16Type"),
Int32Type = apiGetFunctionAddress(LLVM, "LLVMInt32Type"),
Int64Type = apiGetFunctionAddress(LLVM, "LLVMInt64Type"),
Int128Type = apiGetFunctionAddress(LLVM, "LLVMInt128Type"),
IntType = apiGetFunctionAddress(LLVM, "LLVMIntType"),
GetIntTypeWidth = apiGetFunctionAddress(LLVM, "LLVMGetIntTypeWidth"),
HalfTypeInContext = apiGetFunctionAddress(LLVM, "LLVMHalfTypeInContext"),
FloatTypeInContext = apiGetFunctionAddress(LLVM, "LLVMFloatTypeInContext"),
DoubleTypeInContext = apiGetFunctionAddress(LLVM, "LLVMDoubleTypeInContext"),
X86FP80TypeInContext = apiGetFunctionAddress(LLVM, "LLVMX86FP80TypeInContext"),
FP128TypeInContext = apiGetFunctionAddress(LLVM, "LLVMFP128TypeInContext"),
PPCFP128TypeInContext = apiGetFunctionAddress(LLVM, "LLVMPPCFP128TypeInContext"),
HalfType = apiGetFunctionAddress(LLVM, "LLVMHalfType"),
FloatType = apiGetFunctionAddress(LLVM, "LLVMFloatType"),
DoubleType = apiGetFunctionAddress(LLVM, "LLVMDoubleType"),
X86FP80Type = apiGetFunctionAddress(LLVM, "LLVMX86FP80Type"),
FP128Type = apiGetFunctionAddress(LLVM, "LLVMFP128Type"),
PPCFP128Type = apiGetFunctionAddress(LLVM, "LLVMPPCFP128Type"),
FunctionType = apiGetFunctionAddress(LLVM, "LLVMFunctionType"),
IsFunctionVarArg = apiGetFunctionAddress(LLVM, "LLVMIsFunctionVarArg"),
GetReturnType = apiGetFunctionAddress(LLVM, "LLVMGetReturnType"),
CountParamTypes = apiGetFunctionAddress(LLVM, "LLVMCountParamTypes"),
GetParamTypes = apiGetFunctionAddress(LLVM, "LLVMGetParamTypes"),
StructTypeInContext = apiGetFunctionAddress(LLVM, "LLVMStructTypeInContext"),
StructType = apiGetFunctionAddress(LLVM, "LLVMStructType"),
StructCreateNamed = apiGetFunctionAddress(LLVM, "LLVMStructCreateNamed"),
GetStructName = apiGetFunctionAddress(LLVM, "LLVMGetStructName"),
StructSetBody = apiGetFunctionAddress(LLVM, "LLVMStructSetBody"),
CountStructElementTypes = apiGetFunctionAddress(LLVM, "LLVMCountStructElementTypes"),
GetStructElementTypes = apiGetFunctionAddress(LLVM, "LLVMGetStructElementTypes"),
StructGetTypeAtIndex = apiGetFunctionAddress(LLVM, "LLVMStructGetTypeAtIndex"),
IsPackedStruct = apiGetFunctionAddress(LLVM, "LLVMIsPackedStruct"),
IsOpaqueStruct = apiGetFunctionAddress(LLVM, "LLVMIsOpaqueStruct"),
IsLiteralStruct = LLVM.getFunctionAddress("LLVMIsLiteralStruct"),
GetElementType = apiGetFunctionAddress(LLVM, "LLVMGetElementType"),
GetSubtypes = apiGetFunctionAddress(LLVM, "LLVMGetSubtypes"),
GetNumContainedTypes = apiGetFunctionAddress(LLVM, "LLVMGetNumContainedTypes"),
ArrayType = apiGetFunctionAddress(LLVM, "LLVMArrayType"),
GetArrayLength = apiGetFunctionAddress(LLVM, "LLVMGetArrayLength"),
PointerType = apiGetFunctionAddress(LLVM, "LLVMPointerType"),
GetPointerAddressSpace = apiGetFunctionAddress(LLVM, "LLVMGetPointerAddressSpace"),
VectorType = apiGetFunctionAddress(LLVM, "LLVMVectorType"),
GetVectorSize = apiGetFunctionAddress(LLVM, "LLVMGetVectorSize"),
VoidTypeInContext = apiGetFunctionAddress(LLVM, "LLVMVoidTypeInContext"),
LabelTypeInContext = apiGetFunctionAddress(LLVM, "LLVMLabelTypeInContext"),
X86MMXTypeInContext = apiGetFunctionAddress(LLVM, "LLVMX86MMXTypeInContext"),
TokenTypeInContext = LLVM.getFunctionAddress("LLVMTokenTypeInContext"),
MetadataTypeInContext = LLVM.getFunctionAddress("LLVMMetadataTypeInContext"),
VoidType = apiGetFunctionAddress(LLVM, "LLVMVoidType"),
LabelType = apiGetFunctionAddress(LLVM, "LLVMLabelType"),
X86MMXType = apiGetFunctionAddress(LLVM, "LLVMX86MMXType"),
TypeOf = apiGetFunctionAddress(LLVM, "LLVMTypeOf"),
GetValueKind = apiGetFunctionAddress(LLVM, "LLVMGetValueKind"),
GetValueName2 = LLVM.getFunctionAddress("LLVMGetValueName2"),
SetValueName2 = LLVM.getFunctionAddress("LLVMSetValueName2"),
DumpValue = apiGetFunctionAddress(LLVM, "LLVMDumpValue"),
PrintValueToString = apiGetFunctionAddress(LLVM, "LLVMPrintValueToString"),
ReplaceAllUsesWith = apiGetFunctionAddress(LLVM, "LLVMReplaceAllUsesWith"),
IsConstant = apiGetFunctionAddress(LLVM, "LLVMIsConstant"),
IsUndef = apiGetFunctionAddress(LLVM, "LLVMIsUndef"),
IsAArgument = apiGetFunctionAddress(LLVM, "LLVMIsAArgument"),
IsABasicBlock = apiGetFunctionAddress(LLVM, "LLVMIsABasicBlock"),
IsAInlineAsm = apiGetFunctionAddress(LLVM, "LLVMIsAInlineAsm"),
IsAUser = apiGetFunctionAddress(LLVM, "LLVMIsAUser"),
IsAConstant = apiGetFunctionAddress(LLVM, "LLVMIsAConstant"),
IsABlockAddress = apiGetFunctionAddress(LLVM, "LLVMIsABlockAddress"),
IsAConstantAggregateZero = apiGetFunctionAddress(LLVM, "LLVMIsAConstantAggregateZero"),
IsAConstantArray = apiGetFunctionAddress(LLVM, "LLVMIsAConstantArray"),
IsAConstantDataSequential = apiGetFunctionAddress(LLVM, "LLVMIsAConstantDataSequential"),
IsAConstantDataArray = apiGetFunctionAddress(LLVM, "LLVMIsAConstantDataArray"),
IsAConstantDataVector = apiGetFunctionAddress(LLVM, "LLVMIsAConstantDataVector"),
IsAConstantExpr = apiGetFunctionAddress(LLVM, "LLVMIsAConstantExpr"),
IsAConstantFP = apiGetFunctionAddress(LLVM, "LLVMIsAConstantFP"),
IsAConstantInt = apiGetFunctionAddress(LLVM, "LLVMIsAConstantInt"),
IsAConstantPointerNull = apiGetFunctionAddress(LLVM, "LLVMIsAConstantPointerNull"),
IsAConstantStruct = apiGetFunctionAddress(LLVM, "LLVMIsAConstantStruct"),
IsAConstantTokenNone = apiGetFunctionAddress(LLVM, "LLVMIsAConstantTokenNone"),
IsAConstantVector = apiGetFunctionAddress(LLVM, "LLVMIsAConstantVector"),
IsAGlobalValue = apiGetFunctionAddress(LLVM, "LLVMIsAGlobalValue"),
IsAGlobalAlias = apiGetFunctionAddress(LLVM, "LLVMIsAGlobalAlias"),
IsAGlobalIFunc = LLVM.getFunctionAddress("LLVMIsAGlobalIFunc"),
IsAGlobalObject = apiGetFunctionAddress(LLVM, "LLVMIsAGlobalObject"),
IsAFunction = apiGetFunctionAddress(LLVM, "LLVMIsAFunction"),
IsAGlobalVariable = apiGetFunctionAddress(LLVM, "LLVMIsAGlobalVariable"),
IsAUndefValue = apiGetFunctionAddress(LLVM, "LLVMIsAUndefValue"),
IsAInstruction = apiGetFunctionAddress(LLVM, "LLVMIsAInstruction"),
IsABinaryOperator = apiGetFunctionAddress(LLVM, "LLVMIsABinaryOperator"),
IsACallInst = apiGetFunctionAddress(LLVM, "LLVMIsACallInst"),
IsAIntrinsicInst = apiGetFunctionAddress(LLVM, "LLVMIsAIntrinsicInst"),
IsADbgInfoIntrinsic = apiGetFunctionAddress(LLVM, "LLVMIsADbgInfoIntrinsic"),
IsADbgVariableIntrinsic = LLVM.getFunctionAddress("LLVMIsADbgVariableIntrinsic"),
IsADbgDeclareInst = apiGetFunctionAddress(LLVM, "LLVMIsADbgDeclareInst"),
IsADbgLabelInst = LLVM.getFunctionAddress("LLVMIsADbgLabelInst"),
IsAMemIntrinsic = apiGetFunctionAddress(LLVM, "LLVMIsAMemIntrinsic"),
IsAMemCpyInst = apiGetFunctionAddress(LLVM, "LLVMIsAMemCpyInst"),
IsAMemMoveInst = apiGetFunctionAddress(LLVM, "LLVMIsAMemMoveInst"),
IsAMemSetInst = apiGetFunctionAddress(LLVM, "LLVMIsAMemSetInst"),
IsACmpInst = apiGetFunctionAddress(LLVM, "LLVMIsACmpInst"),
IsAFCmpInst = apiGetFunctionAddress(LLVM, "LLVMIsAFCmpInst"),
IsAICmpInst = apiGetFunctionAddress(LLVM, "LLVMIsAICmpInst"),
IsAExtractElementInst = apiGetFunctionAddress(LLVM, "LLVMIsAExtractElementInst"),
IsAGetElementPtrInst = apiGetFunctionAddress(LLVM, "LLVMIsAGetElementPtrInst"),
IsAInsertElementInst = apiGetFunctionAddress(LLVM, "LLVMIsAInsertElementInst"),
IsAInsertValueInst = apiGetFunctionAddress(LLVM, "LLVMIsAInsertValueInst"),
IsALandingPadInst = apiGetFunctionAddress(LLVM, "LLVMIsALandingPadInst"),
IsAPHINode = apiGetFunctionAddress(LLVM, "LLVMIsAPHINode"),
IsASelectInst = apiGetFunctionAddress(LLVM, "LLVMIsASelectInst"),
IsAShuffleVectorInst = apiGetFunctionAddress(LLVM, "LLVMIsAShuffleVectorInst"),
IsAStoreInst = apiGetFunctionAddress(LLVM, "LLVMIsAStoreInst"),
IsABranchInst = apiGetFunctionAddress(LLVM, "LLVMIsABranchInst"),
IsAIndirectBrInst = apiGetFunctionAddress(LLVM, "LLVMIsAIndirectBrInst"),
IsAInvokeInst = apiGetFunctionAddress(LLVM, "LLVMIsAInvokeInst"),
IsAReturnInst = apiGetFunctionAddress(LLVM, "LLVMIsAReturnInst"),
IsASwitchInst = apiGetFunctionAddress(LLVM, "LLVMIsASwitchInst"),
IsAUnreachableInst = apiGetFunctionAddress(LLVM, "LLVMIsAUnreachableInst"),
IsAResumeInst = apiGetFunctionAddress(LLVM, "LLVMIsAResumeInst"),
IsACleanupReturnInst = apiGetFunctionAddress(LLVM, "LLVMIsACleanupReturnInst"),
IsACatchReturnInst = apiGetFunctionAddress(LLVM, "LLVMIsACatchReturnInst"),
IsAFuncletPadInst = apiGetFunctionAddress(LLVM, "LLVMIsAFuncletPadInst"),
IsACatchPadInst = apiGetFunctionAddress(LLVM, "LLVMIsACatchPadInst"),
IsACleanupPadInst = apiGetFunctionAddress(LLVM, "LLVMIsACleanupPadInst"),
IsAUnaryInstruction = apiGetFunctionAddress(LLVM, "LLVMIsAUnaryInstruction"),
IsAAllocaInst = apiGetFunctionAddress(LLVM, "LLVMIsAAllocaInst"),
IsACastInst = apiGetFunctionAddress(LLVM, "LLVMIsACastInst"),
IsAAddrSpaceCastInst = apiGetFunctionAddress(LLVM, "LLVMIsAAddrSpaceCastInst"),
IsABitCastInst = apiGetFunctionAddress(LLVM, "LLVMIsABitCastInst"),
IsAFPExtInst = apiGetFunctionAddress(LLVM, "LLVMIsAFPExtInst"),
IsAFPToSIInst = apiGetFunctionAddress(LLVM, "LLVMIsAFPToSIInst"),
IsAFPToUIInst = apiGetFunctionAddress(LLVM, "LLVMIsAFPToUIInst"),
IsAFPTruncInst = apiGetFunctionAddress(LLVM, "LLVMIsAFPTruncInst"),
IsAIntToPtrInst = apiGetFunctionAddress(LLVM, "LLVMIsAIntToPtrInst"),
IsAPtrToIntInst = apiGetFunctionAddress(LLVM, "LLVMIsAPtrToIntInst"),
IsASExtInst = apiGetFunctionAddress(LLVM, "LLVMIsASExtInst"),
IsASIToFPInst = apiGetFunctionAddress(LLVM, "LLVMIsASIToFPInst"),
IsATruncInst = apiGetFunctionAddress(LLVM, "LLVMIsATruncInst"),
IsAUIToFPInst = apiGetFunctionAddress(LLVM, "LLVMIsAUIToFPInst"),
IsAZExtInst = apiGetFunctionAddress(LLVM, "LLVMIsAZExtInst"),
IsAExtractValueInst = apiGetFunctionAddress(LLVM, "LLVMIsAExtractValueInst"),
IsALoadInst = apiGetFunctionAddress(LLVM, "LLVMIsALoadInst"),
IsAVAArgInst = apiGetFunctionAddress(LLVM, "LLVMIsAVAArgInst"),
IsAMDNode = apiGetFunctionAddress(LLVM, "LLVMIsAMDNode"),
IsAMDString = apiGetFunctionAddress(LLVM, "LLVMIsAMDString"),
GetValueName = apiGetFunctionAddress(LLVM, "LLVMGetValueName"),
SetValueName = apiGetFunctionAddress(LLVM, "LLVMSetValueName"),
GetFirstUse = apiGetFunctionAddress(LLVM, "LLVMGetFirstUse"),
GetNextUse = apiGetFunctionAddress(LLVM, "LLVMGetNextUse"),
GetUser = apiGetFunctionAddress(LLVM, "LLVMGetUser"),
GetUsedValue = apiGetFunctionAddress(LLVM, "LLVMGetUsedValue"),
GetOperand = apiGetFunctionAddress(LLVM, "LLVMGetOperand"),
GetOperandUse = apiGetFunctionAddress(LLVM, "LLVMGetOperandUse"),
SetOperand = apiGetFunctionAddress(LLVM, "LLVMSetOperand"),
GetNumOperands = apiGetFunctionAddress(LLVM, "LLVMGetNumOperands"),
ConstNull = apiGetFunctionAddress(LLVM, "LLVMConstNull"),
ConstAllOnes = apiGetFunctionAddress(LLVM, "LLVMConstAllOnes"),
GetUndef = apiGetFunctionAddress(LLVM, "LLVMGetUndef"),
IsNull = apiGetFunctionAddress(LLVM, "LLVMIsNull"),
ConstPointerNull = apiGetFunctionAddress(LLVM, "LLVMConstPointerNull"),
ConstInt = apiGetFunctionAddress(LLVM, "LLVMConstInt"),
ConstIntOfArbitraryPrecision = apiGetFunctionAddress(LLVM, "LLVMConstIntOfArbitraryPrecision"),
ConstIntOfString = apiGetFunctionAddress(LLVM, "LLVMConstIntOfString"),
ConstIntOfStringAndSize = apiGetFunctionAddress(LLVM, "LLVMConstIntOfStringAndSize"),
ConstReal = apiGetFunctionAddress(LLVM, "LLVMConstReal"),
ConstRealOfString = apiGetFunctionAddress(LLVM, "LLVMConstRealOfString"),
ConstRealOfStringAndSize = apiGetFunctionAddress(LLVM, "LLVMConstRealOfStringAndSize"),
ConstIntGetZExtValue = apiGetFunctionAddress(LLVM, "LLVMConstIntGetZExtValue"),
ConstIntGetSExtValue = apiGetFunctionAddress(LLVM, "LLVMConstIntGetSExtValue"),
ConstRealGetDouble = apiGetFunctionAddress(LLVM, "LLVMConstRealGetDouble"),
ConstStringInContext = apiGetFunctionAddress(LLVM, "LLVMConstStringInContext"),
ConstString = apiGetFunctionAddress(LLVM, "LLVMConstString"),
IsConstantString = apiGetFunctionAddress(LLVM, "LLVMIsConstantString"),
GetAsString = apiGetFunctionAddress(LLVM, "LLVMGetAsString"),
ConstStructInContext = apiGetFunctionAddress(LLVM, "LLVMConstStructInContext"),
ConstStruct = apiGetFunctionAddress(LLVM, "LLVMConstStruct"),
ConstArray = apiGetFunctionAddress(LLVM, "LLVMConstArray"),
ConstNamedStruct = apiGetFunctionAddress(LLVM, "LLVMConstNamedStruct"),
GetElementAsConstant = apiGetFunctionAddress(LLVM, "LLVMGetElementAsConstant"),
ConstVector = apiGetFunctionAddress(LLVM, "LLVMConstVector"),
GetConstOpcode = apiGetFunctionAddress(LLVM, "LLVMGetConstOpcode"),
AlignOf = apiGetFunctionAddress(LLVM, "LLVMAlignOf"),
SizeOf = apiGetFunctionAddress(LLVM, "LLVMSizeOf"),
ConstNeg = apiGetFunctionAddress(LLVM, "LLVMConstNeg"),
ConstNSWNeg = apiGetFunctionAddress(LLVM, "LLVMConstNSWNeg"),
ConstNUWNeg = apiGetFunctionAddress(LLVM, "LLVMConstNUWNeg"),
ConstFNeg = apiGetFunctionAddress(LLVM, "LLVMConstFNeg"),
ConstNot = apiGetFunctionAddress(LLVM, "LLVMConstNot"),
ConstAdd = apiGetFunctionAddress(LLVM, "LLVMConstAdd"),
ConstNSWAdd = apiGetFunctionAddress(LLVM, "LLVMConstNSWAdd"),
ConstNUWAdd = apiGetFunctionAddress(LLVM, "LLVMConstNUWAdd"),
ConstFAdd = apiGetFunctionAddress(LLVM, "LLVMConstFAdd"),
ConstSub = apiGetFunctionAddress(LLVM, "LLVMConstSub"),
ConstNSWSub = apiGetFunctionAddress(LLVM, "LLVMConstNSWSub"),
ConstNUWSub = apiGetFunctionAddress(LLVM, "LLVMConstNUWSub"),
ConstFSub = apiGetFunctionAddress(LLVM, "LLVMConstFSub"),
ConstMul = apiGetFunctionAddress(LLVM, "LLVMConstMul"),
ConstNSWMul = apiGetFunctionAddress(LLVM, "LLVMConstNSWMul"),
ConstNUWMul = apiGetFunctionAddress(LLVM, "LLVMConstNUWMul"),
ConstFMul = apiGetFunctionAddress(LLVM, "LLVMConstFMul"),
ConstUDiv = apiGetFunctionAddress(LLVM, "LLVMConstUDiv"),
ConstExactUDiv = apiGetFunctionAddress(LLVM, "LLVMConstExactUDiv"),
ConstSDiv = apiGetFunctionAddress(LLVM, "LLVMConstSDiv"),
ConstExactSDiv = apiGetFunctionAddress(LLVM, "LLVMConstExactSDiv"),
ConstFDiv = apiGetFunctionAddress(LLVM, "LLVMConstFDiv"),
ConstURem = apiGetFunctionAddress(LLVM, "LLVMConstURem"),
ConstSRem = apiGetFunctionAddress(LLVM, "LLVMConstSRem"),
ConstFRem = apiGetFunctionAddress(LLVM, "LLVMConstFRem"),
ConstAnd = apiGetFunctionAddress(LLVM, "LLVMConstAnd"),
ConstOr = apiGetFunctionAddress(LLVM, "LLVMConstOr"),
ConstXor = apiGetFunctionAddress(LLVM, "LLVMConstXor"),
ConstICmp = apiGetFunctionAddress(LLVM, "LLVMConstICmp"),
ConstFCmp = apiGetFunctionAddress(LLVM, "LLVMConstFCmp"),
ConstShl = apiGetFunctionAddress(LLVM, "LLVMConstShl"),
ConstLShr = apiGetFunctionAddress(LLVM, "LLVMConstLShr"),
ConstAShr = apiGetFunctionAddress(LLVM, "LLVMConstAShr"),
ConstGEP = apiGetFunctionAddress(LLVM, "LLVMConstGEP"),
ConstGEP2 = LLVM.getFunctionAddress("LLVMConstGEP2"),
ConstInBoundsGEP = apiGetFunctionAddress(LLVM, "LLVMConstInBoundsGEP"),
ConstInBoundsGEP2 = LLVM.getFunctionAddress("LLVMConstInBoundsGEP2"),
ConstTrunc = apiGetFunctionAddress(LLVM, "LLVMConstTrunc"),
ConstSExt = apiGetFunctionAddress(LLVM, "LLVMConstSExt"),
ConstZExt = apiGetFunctionAddress(LLVM, "LLVMConstZExt"),
ConstFPTrunc = apiGetFunctionAddress(LLVM, "LLVMConstFPTrunc"),
ConstFPExt = apiGetFunctionAddress(LLVM, "LLVMConstFPExt"),
ConstUIToFP = apiGetFunctionAddress(LLVM, "LLVMConstUIToFP"),
ConstSIToFP = apiGetFunctionAddress(LLVM, "LLVMConstSIToFP"),
ConstFPToUI = apiGetFunctionAddress(LLVM, "LLVMConstFPToUI"),
ConstFPToSI = apiGetFunctionAddress(LLVM, "LLVMConstFPToSI"),
ConstPtrToInt = apiGetFunctionAddress(LLVM, "LLVMConstPtrToInt"),
ConstIntToPtr = apiGetFunctionAddress(LLVM, "LLVMConstIntToPtr"),
ConstBitCast = apiGetFunctionAddress(LLVM, "LLVMConstBitCast"),
ConstAddrSpaceCast = apiGetFunctionAddress(LLVM, "LLVMConstAddrSpaceCast"),
ConstZExtOrBitCast = apiGetFunctionAddress(LLVM, "LLVMConstZExtOrBitCast"),
ConstSExtOrBitCast = apiGetFunctionAddress(LLVM, "LLVMConstSExtOrBitCast"),
ConstTruncOrBitCast = apiGetFunctionAddress(LLVM, "LLVMConstTruncOrBitCast"),
ConstPointerCast = apiGetFunctionAddress(LLVM, "LLVMConstPointerCast"),
ConstIntCast = apiGetFunctionAddress(LLVM, "LLVMConstIntCast"),
ConstFPCast = apiGetFunctionAddress(LLVM, "LLVMConstFPCast"),
ConstSelect = apiGetFunctionAddress(LLVM, "LLVMConstSelect"),
ConstExtractElement = apiGetFunctionAddress(LLVM, "LLVMConstExtractElement"),
ConstInsertElement = apiGetFunctionAddress(LLVM, "LLVMConstInsertElement"),
ConstShuffleVector = apiGetFunctionAddress(LLVM, "LLVMConstShuffleVector"),
ConstExtractValue = apiGetFunctionAddress(LLVM, "LLVMConstExtractValue"),
ConstInsertValue = apiGetFunctionAddress(LLVM, "LLVMConstInsertValue"),
BlockAddress = LLVM.getFunctionAddress("LLVMBlockAddress"),
ConstInlineAsm = apiGetFunctionAddress(LLVM, "LLVMConstInlineAsm"),
GetGlobalParent = apiGetFunctionAddress(LLVM, "LLVMGetGlobalParent"),
IsDeclaration = apiGetFunctionAddress(LLVM, "LLVMIsDeclaration"),
GetLinkage = apiGetFunctionAddress(LLVM, "LLVMGetLinkage"),
SetLinkage = apiGetFunctionAddress(LLVM, "LLVMSetLinkage"),
GetSection = apiGetFunctionAddress(LLVM, "LLVMGetSection"),
SetSection = apiGetFunctionAddress(LLVM, "LLVMSetSection"),
GetVisibility = apiGetFunctionAddress(LLVM, "LLVMGetVisibility"),
SetVisibility = apiGetFunctionAddress(LLVM, "LLVMSetVisibility"),
GetDLLStorageClass = apiGetFunctionAddress(LLVM, "LLVMGetDLLStorageClass"),
SetDLLStorageClass = apiGetFunctionAddress(LLVM, "LLVMSetDLLStorageClass"),
GetUnnamedAddress = LLVM.getFunctionAddress("LLVMGetUnnamedAddress"),
SetUnnamedAddress = LLVM.getFunctionAddress("LLVMSetUnnamedAddress"),
GlobalGetValueType = LLVM.getFunctionAddress("LLVMGlobalGetValueType"),
HasUnnamedAddr = apiGetFunctionAddress(LLVM, "LLVMHasUnnamedAddr"),
SetUnnamedAddr = apiGetFunctionAddress(LLVM, "LLVMSetUnnamedAddr"),
GetAlignment = apiGetFunctionAddress(LLVM, "LLVMGetAlignment"),
SetAlignment = apiGetFunctionAddress(LLVM, "LLVMSetAlignment"),
GlobalSetMetadata = LLVM.getFunctionAddress("LLVMGlobalSetMetadata"),
GlobalEraseMetadata = LLVM.getFunctionAddress("LLVMGlobalEraseMetadata"),
GlobalClearMetadata = LLVM.getFunctionAddress("LLVMGlobalClearMetadata"),
GlobalCopyAllMetadata = LLVM.getFunctionAddress("LLVMGlobalCopyAllMetadata"),
DisposeValueMetadataEntries = LLVM.getFunctionAddress("LLVMDisposeValueMetadataEntries"),
ValueMetadataEntriesGetKind = LLVM.getFunctionAddress("LLVMValueMetadataEntriesGetKind"),
ValueMetadataEntriesGetMetadata = LLVM.getFunctionAddress("LLVMValueMetadataEntriesGetMetadata"),
AddGlobal = apiGetFunctionAddress(LLVM, "LLVMAddGlobal"),
AddGlobalInAddressSpace = apiGetFunctionAddress(LLVM, "LLVMAddGlobalInAddressSpace"),
GetNamedGlobal = apiGetFunctionAddress(LLVM, "LLVMGetNamedGlobal"),
GetFirstGlobal = apiGetFunctionAddress(LLVM, "LLVMGetFirstGlobal"),
GetLastGlobal = apiGetFunctionAddress(LLVM, "LLVMGetLastGlobal"),
GetNextGlobal = apiGetFunctionAddress(LLVM, "LLVMGetNextGlobal"),
GetPreviousGlobal = apiGetFunctionAddress(LLVM, "LLVMGetPreviousGlobal"),
DeleteGlobal = apiGetFunctionAddress(LLVM, "LLVMDeleteGlobal"),
GetInitializer = apiGetFunctionAddress(LLVM, "LLVMGetInitializer"),
SetInitializer = apiGetFunctionAddress(LLVM, "LLVMSetInitializer"),
IsThreadLocal = apiGetFunctionAddress(LLVM, "LLVMIsThreadLocal"),
SetThreadLocal = apiGetFunctionAddress(LLVM, "LLVMSetThreadLocal"),
IsGlobalConstant = apiGetFunctionAddress(LLVM, "LLVMIsGlobalConstant"),
SetGlobalConstant = apiGetFunctionAddress(LLVM, "LLVMSetGlobalConstant"),
GetThreadLocalMode = apiGetFunctionAddress(LLVM, "LLVMGetThreadLocalMode"),
SetThreadLocalMode = apiGetFunctionAddress(LLVM, "LLVMSetThreadLocalMode"),
IsExternallyInitialized = apiGetFunctionAddress(LLVM, "LLVMIsExternallyInitialized"),
SetExternallyInitialized = apiGetFunctionAddress(LLVM, "LLVMSetExternallyInitialized"),
AddAlias = apiGetFunctionAddress(LLVM, "LLVMAddAlias"),
GetNamedGlobalAlias = LLVM.getFunctionAddress("LLVMGetNamedGlobalAlias"),
GetFirstGlobalAlias = LLVM.getFunctionAddress("LLVMGetFirstGlobalAlias"),
GetLastGlobalAlias = LLVM.getFunctionAddress("LLVMGetLastGlobalAlias"),
GetNextGlobalAlias = LLVM.getFunctionAddress("LLVMGetNextGlobalAlias"),
GetPreviousGlobalAlias = LLVM.getFunctionAddress("LLVMGetPreviousGlobalAlias"),
AliasGetAliasee = LLVM.getFunctionAddress("LLVMAliasGetAliasee"),
AliasSetAliasee = LLVM.getFunctionAddress("LLVMAliasSetAliasee"),
DeleteFunction = apiGetFunctionAddress(LLVM, "LLVMDeleteFunction"),
HasPersonalityFn = apiGetFunctionAddress(LLVM, "LLVMHasPersonalityFn"),
GetPersonalityFn = apiGetFunctionAddress(LLVM, "LLVMGetPersonalityFn"),
SetPersonalityFn = apiGetFunctionAddress(LLVM, "LLVMSetPersonalityFn"),
GetIntrinsicID = apiGetFunctionAddress(LLVM, "LLVMGetIntrinsicID"),
GetIntrinsicDeclaration = LLVM.getFunctionAddress("LLVMGetIntrinsicDeclaration"),
IntrinsicGetType = LLVM.getFunctionAddress("LLVMIntrinsicGetType"),
IntrinsicGetName = LLVM.getFunctionAddress("LLVMIntrinsicGetName"),
IntrinsicCopyOverloadedName = LLVM.getFunctionAddress("LLVMIntrinsicCopyOverloadedName"),
IntrinsicIsOverloaded = LLVM.getFunctionAddress("LLVMIntrinsicIsOverloaded"),
GetFunctionCallConv = apiGetFunctionAddress(LLVM, "LLVMGetFunctionCallConv"),
SetFunctionCallConv = apiGetFunctionAddress(LLVM, "LLVMSetFunctionCallConv"),
GetGC = apiGetFunctionAddress(LLVM, "LLVMGetGC"),
SetGC = apiGetFunctionAddress(LLVM, "LLVMSetGC"),
AddAttributeAtIndex = apiGetFunctionAddress(LLVM, "LLVMAddAttributeAtIndex"),
GetAttributeCountAtIndex = apiGetFunctionAddress(LLVM, "LLVMGetAttributeCountAtIndex"),
GetAttributesAtIndex = apiGetFunctionAddress(LLVM, "LLVMGetAttributesAtIndex"),
GetEnumAttributeAtIndex = apiGetFunctionAddress(LLVM, "LLVMGetEnumAttributeAtIndex"),
GetStringAttributeAtIndex = apiGetFunctionAddress(LLVM, "LLVMGetStringAttributeAtIndex"),
RemoveEnumAttributeAtIndex = apiGetFunctionAddress(LLVM, "LLVMRemoveEnumAttributeAtIndex"),
RemoveStringAttributeAtIndex = apiGetFunctionAddress(LLVM, "LLVMRemoveStringAttributeAtIndex"),
AddTargetDependentFunctionAttr = apiGetFunctionAddress(LLVM, "LLVMAddTargetDependentFunctionAttr"),
CountParams = apiGetFunctionAddress(LLVM, "LLVMCountParams"),
GetParams = apiGetFunctionAddress(LLVM, "LLVMGetParams"),
GetParam = apiGetFunctionAddress(LLVM, "LLVMGetParam"),
GetParamParent = apiGetFunctionAddress(LLVM, "LLVMGetParamParent"),
GetFirstParam = apiGetFunctionAddress(LLVM, "LLVMGetFirstParam"),
GetLastParam = apiGetFunctionAddress(LLVM, "LLVMGetLastParam"),
GetNextParam = apiGetFunctionAddress(LLVM, "LLVMGetNextParam"),
GetPreviousParam = apiGetFunctionAddress(LLVM, "LLVMGetPreviousParam"),
SetParamAlignment = apiGetFunctionAddress(LLVM, "LLVMSetParamAlignment"),
MDStringInContext = apiGetFunctionAddress(LLVM, "LLVMMDStringInContext"),
MDString = apiGetFunctionAddress(LLVM, "LLVMMDString"),
MDNodeInContext = apiGetFunctionAddress(LLVM, "LLVMMDNodeInContext"),
MDNode = apiGetFunctionAddress(LLVM, "LLVMMDNode"),
MetadataAsValue = apiGetFunctionAddress(LLVM, "LLVMMetadataAsValue"),
ValueAsMetadata = apiGetFunctionAddress(LLVM, "LLVMValueAsMetadata"),
GetMDString = apiGetFunctionAddress(LLVM, "LLVMGetMDString"),
GetMDNodeNumOperands = apiGetFunctionAddress(LLVM, "LLVMGetMDNodeNumOperands"),
GetMDNodeOperands = apiGetFunctionAddress(LLVM, "LLVMGetMDNodeOperands"),
BasicBlockAsValue = apiGetFunctionAddress(LLVM, "LLVMBasicBlockAsValue"),
ValueIsBasicBlock = apiGetFunctionAddress(LLVM, "LLVMValueIsBasicBlock"),
ValueAsBasicBlock = apiGetFunctionAddress(LLVM, "LLVMValueAsBasicBlock"),
GetBasicBlockName = apiGetFunctionAddress(LLVM, "LLVMGetBasicBlockName"),
GetBasicBlockParent = apiGetFunctionAddress(LLVM, "LLVMGetBasicBlockParent"),
GetBasicBlockTerminator = apiGetFunctionAddress(LLVM, "LLVMGetBasicBlockTerminator"),
CountBasicBlocks = apiGetFunctionAddress(LLVM, "LLVMCountBasicBlocks"),
GetBasicBlocks = apiGetFunctionAddress(LLVM, "LLVMGetBasicBlocks"),
GetFirstBasicBlock = apiGetFunctionAddress(LLVM, "LLVMGetFirstBasicBlock"),
GetLastBasicBlock = apiGetFunctionAddress(LLVM, "LLVMGetLastBasicBlock"),
GetNextBasicBlock = apiGetFunctionAddress(LLVM, "LLVMGetNextBasicBlock"),
GetPreviousBasicBlock = apiGetFunctionAddress(LLVM, "LLVMGetPreviousBasicBlock"),
GetEntryBasicBlock = apiGetFunctionAddress(LLVM, "LLVMGetEntryBasicBlock"),
CreateBasicBlockInContext = LLVM.getFunctionAddress("LLVMCreateBasicBlockInContext"),
AppendBasicBlockInContext = apiGetFunctionAddress(LLVM, "LLVMAppendBasicBlockInContext"),
AppendBasicBlock = apiGetFunctionAddress(LLVM, "LLVMAppendBasicBlock"),
InsertBasicBlockInContext = apiGetFunctionAddress(LLVM, "LLVMInsertBasicBlockInContext"),
InsertBasicBlock = apiGetFunctionAddress(LLVM, "LLVMInsertBasicBlock"),
DeleteBasicBlock = apiGetFunctionAddress(LLVM, "LLVMDeleteBasicBlock"),
RemoveBasicBlockFromParent = apiGetFunctionAddress(LLVM, "LLVMRemoveBasicBlockFromParent"),
MoveBasicBlockBefore = apiGetFunctionAddress(LLVM, "LLVMMoveBasicBlockBefore"),
MoveBasicBlockAfter = apiGetFunctionAddress(LLVM, "LLVMMoveBasicBlockAfter"),
GetFirstInstruction = apiGetFunctionAddress(LLVM, "LLVMGetFirstInstruction"),
GetLastInstruction = apiGetFunctionAddress(LLVM, "LLVMGetLastInstruction"),
HasMetadata = apiGetFunctionAddress(LLVM, "LLVMHasMetadata"),
GetMetadata = apiGetFunctionAddress(LLVM, "LLVMGetMetadata"),
SetMetadata = apiGetFunctionAddress(LLVM, "LLVMSetMetadata"),
InstructionGetAllMetadataOtherThanDebugLoc = LLVM.getFunctionAddress("LLVMInstructionGetAllMetadataOtherThanDebugLoc"),
GetInstructionParent = apiGetFunctionAddress(LLVM, "LLVMGetInstructionParent"),
GetNextInstruction = apiGetFunctionAddress(LLVM, "LLVMGetNextInstruction"),
GetPreviousInstruction = apiGetFunctionAddress(LLVM, "LLVMGetPreviousInstruction"),
InstructionRemoveFromParent = apiGetFunctionAddress(LLVM, "LLVMInstructionRemoveFromParent"),
InstructionEraseFromParent = apiGetFunctionAddress(LLVM, "LLVMInstructionEraseFromParent"),
GetInstructionOpcode = apiGetFunctionAddress(LLVM, "LLVMGetInstructionOpcode"),
GetICmpPredicate = apiGetFunctionAddress(LLVM, "LLVMGetICmpPredicate"),
GetFCmpPredicate = apiGetFunctionAddress(LLVM, "LLVMGetFCmpPredicate"),
InstructionClone = apiGetFunctionAddress(LLVM, "LLVMInstructionClone"),
IsATerminatorInst = apiGetFunctionAddress(LLVM, "LLVMIsATerminatorInst"),
GetNumArgOperands = apiGetFunctionAddress(LLVM, "LLVMGetNumArgOperands"),
SetInstructionCallConv = apiGetFunctionAddress(LLVM, "LLVMSetInstructionCallConv"),
GetInstructionCallConv = apiGetFunctionAddress(LLVM, "LLVMGetInstructionCallConv"),
SetInstrParamAlignment = apiGetFunctionAddress(LLVM, "LLVMSetInstrParamAlignment"),
AddCallSiteAttribute = apiGetFunctionAddress(LLVM, "LLVMAddCallSiteAttribute"),
GetCallSiteAttributeCount = apiGetFunctionAddress(LLVM, "LLVMGetCallSiteAttributeCount"),
GetCallSiteAttributes = apiGetFunctionAddress(LLVM, "LLVMGetCallSiteAttributes"),
GetCallSiteEnumAttribute = apiGetFunctionAddress(LLVM, "LLVMGetCallSiteEnumAttribute"),
GetCallSiteStringAttribute = apiGetFunctionAddress(LLVM, "LLVMGetCallSiteStringAttribute"),
RemoveCallSiteEnumAttribute = apiGetFunctionAddress(LLVM, "LLVMRemoveCallSiteEnumAttribute"),
RemoveCallSiteStringAttribute = apiGetFunctionAddress(LLVM, "LLVMRemoveCallSiteStringAttribute"),
GetCalledFunctionType = LLVM.getFunctionAddress("LLVMGetCalledFunctionType"),
GetCalledValue = apiGetFunctionAddress(LLVM, "LLVMGetCalledValue"),
IsTailCall = apiGetFunctionAddress(LLVM, "LLVMIsTailCall"),
SetTailCall = apiGetFunctionAddress(LLVM, "LLVMSetTailCall"),
GetNormalDest = apiGetFunctionAddress(LLVM, "LLVMGetNormalDest"),
GetUnwindDest = apiGetFunctionAddress(LLVM, "LLVMGetUnwindDest"),
SetNormalDest = apiGetFunctionAddress(LLVM, "LLVMSetNormalDest"),
SetUnwindDest = apiGetFunctionAddress(LLVM, "LLVMSetUnwindDest"),
GetNumSuccessors = apiGetFunctionAddress(LLVM, "LLVMGetNumSuccessors"),
GetSuccessor = apiGetFunctionAddress(LLVM, "LLVMGetSuccessor"),
SetSuccessor = apiGetFunctionAddress(LLVM, "LLVMSetSuccessor"),
IsConditional = apiGetFunctionAddress(LLVM, "LLVMIsConditional"),
GetCondition = apiGetFunctionAddress(LLVM, "LLVMGetCondition"),
SetCondition = apiGetFunctionAddress(LLVM, "LLVMSetCondition"),
GetSwitchDefaultDest = apiGetFunctionAddress(LLVM, "LLVMGetSwitchDefaultDest"),
GetAllocatedType = apiGetFunctionAddress(LLVM, "LLVMGetAllocatedType"),
IsInBounds = apiGetFunctionAddress(LLVM, "LLVMIsInBounds"),
SetIsInBounds = apiGetFunctionAddress(LLVM, "LLVMSetIsInBounds"),
AddIncoming = apiGetFunctionAddress(LLVM, "LLVMAddIncoming"),
CountIncoming = apiGetFunctionAddress(LLVM, "LLVMCountIncoming"),
GetIncomingValue = apiGetFunctionAddress(LLVM, "LLVMGetIncomingValue"),
GetIncomingBlock = apiGetFunctionAddress(LLVM, "LLVMGetIncomingBlock"),
GetNumIndices = apiGetFunctionAddress(LLVM, "LLVMGetNumIndices"),
GetIndices = apiGetFunctionAddress(LLVM, "LLVMGetIndices"),
CreateBuilderInContext = apiGetFunctionAddress(LLVM, "LLVMCreateBuilderInContext"),
CreateBuilder = apiGetFunctionAddress(LLVM, "LLVMCreateBuilder"),
PositionBuilder = apiGetFunctionAddress(LLVM, "LLVMPositionBuilder"),
PositionBuilderBefore = apiGetFunctionAddress(LLVM, "LLVMPositionBuilderBefore"),
PositionBuilderAtEnd = apiGetFunctionAddress(LLVM, "LLVMPositionBuilderAtEnd"),
GetInsertBlock = apiGetFunctionAddress(LLVM, "LLVMGetInsertBlock"),
ClearInsertionPosition = apiGetFunctionAddress(LLVM, "LLVMClearInsertionPosition"),
InsertIntoBuilder = apiGetFunctionAddress(LLVM, "LLVMInsertIntoBuilder"),
InsertIntoBuilderWithName = apiGetFunctionAddress(LLVM, "LLVMInsertIntoBuilderWithName"),
DisposeBuilder = apiGetFunctionAddress(LLVM, "LLVMDisposeBuilder"),
SetCurrentDebugLocation = apiGetFunctionAddress(LLVM, "LLVMSetCurrentDebugLocation"),
GetCurrentDebugLocation = apiGetFunctionAddress(LLVM, "LLVMGetCurrentDebugLocation"),
SetInstDebugLocation = apiGetFunctionAddress(LLVM, "LLVMSetInstDebugLocation"),
BuildRetVoid = apiGetFunctionAddress(LLVM, "LLVMBuildRetVoid"),
BuildRet = apiGetFunctionAddress(LLVM, "LLVMBuildRet"),
BuildAggregateRet = apiGetFunctionAddress(LLVM, "LLVMBuildAggregateRet"),
BuildBr = apiGetFunctionAddress(LLVM, "LLVMBuildBr"),
BuildCondBr = apiGetFunctionAddress(LLVM, "LLVMBuildCondBr"),
BuildSwitch = apiGetFunctionAddress(LLVM, "LLVMBuildSwitch"),
BuildIndirectBr = apiGetFunctionAddress(LLVM, "LLVMBuildIndirectBr"),
BuildInvoke = apiGetFunctionAddress(LLVM, "LLVMBuildInvoke"),
BuildInvoke2 = LLVM.getFunctionAddress("LLVMBuildInvoke2"),
BuildUnreachable = apiGetFunctionAddress(LLVM, "LLVMBuildUnreachable"),
BuildResume = apiGetFunctionAddress(LLVM, "LLVMBuildResume"),
BuildLandingPad = apiGetFunctionAddress(LLVM, "LLVMBuildLandingPad"),
BuildCleanupRet = LLVM.getFunctionAddress("LLVMBuildCleanupRet"),
BuildCatchRet = LLVM.getFunctionAddress("LLVMBuildCatchRet"),
BuildCatchPad = LLVM.getFunctionAddress("LLVMBuildCatchPad"),
BuildCleanupPad = LLVM.getFunctionAddress("LLVMBuildCleanupPad"),
BuildCatchSwitch = LLVM.getFunctionAddress("LLVMBuildCatchSwitch"),
AddCase = apiGetFunctionAddress(LLVM, "LLVMAddCase"),
AddDestination = apiGetFunctionAddress(LLVM, "LLVMAddDestination"),
GetNumClauses = apiGetFunctionAddress(LLVM, "LLVMGetNumClauses"),
GetClause = apiGetFunctionAddress(LLVM, "LLVMGetClause"),
AddClause = apiGetFunctionAddress(LLVM, "LLVMAddClause"),
IsCleanup = apiGetFunctionAddress(LLVM, "LLVMIsCleanup"),
SetCleanup = apiGetFunctionAddress(LLVM, "LLVMSetCleanup"),
AddHandler = LLVM.getFunctionAddress("LLVMAddHandler"),
GetNumHandlers = LLVM.getFunctionAddress("LLVMGetNumHandlers"),
GetHandlers = LLVM.getFunctionAddress("LLVMGetHandlers"),
GetArgOperand = LLVM.getFunctionAddress("LLVMGetArgOperand"),
SetArgOperand = LLVM.getFunctionAddress("LLVMSetArgOperand"),
GetParentCatchSwitch = LLVM.getFunctionAddress("LLVMGetParentCatchSwitch"),
SetParentCatchSwitch = LLVM.getFunctionAddress("LLVMSetParentCatchSwitch"),
BuildAdd = apiGetFunctionAddress(LLVM, "LLVMBuildAdd"),
BuildNSWAdd = apiGetFunctionAddress(LLVM, "LLVMBuildNSWAdd"),
BuildNUWAdd = apiGetFunctionAddress(LLVM, "LLVMBuildNUWAdd"),
BuildFAdd = apiGetFunctionAddress(LLVM, "LLVMBuildFAdd"),
BuildSub = apiGetFunctionAddress(LLVM, "LLVMBuildSub"),
BuildNSWSub = apiGetFunctionAddress(LLVM, "LLVMBuildNSWSub"),
BuildNUWSub = apiGetFunctionAddress(LLVM, "LLVMBuildNUWSub"),
BuildFSub = apiGetFunctionAddress(LLVM, "LLVMBuildFSub"),
BuildMul = apiGetFunctionAddress(LLVM, "LLVMBuildMul"),
BuildNSWMul = apiGetFunctionAddress(LLVM, "LLVMBuildNSWMul"),
BuildNUWMul = apiGetFunctionAddress(LLVM, "LLVMBuildNUWMul"),
BuildFMul = apiGetFunctionAddress(LLVM, "LLVMBuildFMul"),
BuildUDiv = apiGetFunctionAddress(LLVM, "LLVMBuildUDiv"),
BuildExactUDiv = apiGetFunctionAddress(LLVM, "LLVMBuildExactUDiv"),
BuildSDiv = apiGetFunctionAddress(LLVM, "LLVMBuildSDiv"),
BuildExactSDiv = apiGetFunctionAddress(LLVM, "LLVMBuildExactSDiv"),
BuildFDiv = apiGetFunctionAddress(LLVM, "LLVMBuildFDiv"),
BuildURem = apiGetFunctionAddress(LLVM, "LLVMBuildURem"),
BuildSRem = apiGetFunctionAddress(LLVM, "LLVMBuildSRem"),
BuildFRem = apiGetFunctionAddress(LLVM, "LLVMBuildFRem"),
BuildShl = apiGetFunctionAddress(LLVM, "LLVMBuildShl"),
BuildLShr = apiGetFunctionAddress(LLVM, "LLVMBuildLShr"),
BuildAShr = apiGetFunctionAddress(LLVM, "LLVMBuildAShr"),
BuildAnd = apiGetFunctionAddress(LLVM, "LLVMBuildAnd"),
BuildOr = apiGetFunctionAddress(LLVM, "LLVMBuildOr"),
BuildXor = apiGetFunctionAddress(LLVM, "LLVMBuildXor"),
BuildBinOp = apiGetFunctionAddress(LLVM, "LLVMBuildBinOp"),
BuildNeg = apiGetFunctionAddress(LLVM, "LLVMBuildNeg"),
BuildNSWNeg = apiGetFunctionAddress(LLVM, "LLVMBuildNSWNeg"),
BuildNUWNeg = apiGetFunctionAddress(LLVM, "LLVMBuildNUWNeg"),
BuildFNeg = apiGetFunctionAddress(LLVM, "LLVMBuildFNeg"),
BuildNot = apiGetFunctionAddress(LLVM, "LLVMBuildNot"),
BuildMalloc = apiGetFunctionAddress(LLVM, "LLVMBuildMalloc"),
BuildArrayMalloc = apiGetFunctionAddress(LLVM, "LLVMBuildArrayMalloc"),
BuildMemSet = LLVM.getFunctionAddress("LLVMBuildMemSet"),
BuildMemCpy = LLVM.getFunctionAddress("LLVMBuildMemCpy"),
BuildMemMove = LLVM.getFunctionAddress("LLVMBuildMemMove"),
BuildAlloca = apiGetFunctionAddress(LLVM, "LLVMBuildAlloca"),
BuildArrayAlloca = apiGetFunctionAddress(LLVM, "LLVMBuildArrayAlloca"),
BuildFree = apiGetFunctionAddress(LLVM, "LLVMBuildFree"),
BuildLoad = apiGetFunctionAddress(LLVM, "LLVMBuildLoad"),
BuildLoad2 = LLVM.getFunctionAddress("LLVMBuildLoad2"),
BuildStore = apiGetFunctionAddress(LLVM, "LLVMBuildStore"),
BuildGEP = apiGetFunctionAddress(LLVM, "LLVMBuildGEP"),
BuildInBoundsGEP = apiGetFunctionAddress(LLVM, "LLVMBuildInBoundsGEP"),
BuildStructGEP = apiGetFunctionAddress(LLVM, "LLVMBuildStructGEP"),
BuildGEP2 = LLVM.getFunctionAddress("LLVMBuildGEP2"),
BuildInBoundsGEP2 = LLVM.getFunctionAddress("LLVMBuildInBoundsGEP2"),
BuildStructGEP2 = LLVM.getFunctionAddress("LLVMBuildStructGEP2"),
BuildGlobalString = apiGetFunctionAddress(LLVM, "LLVMBuildGlobalString"),
BuildGlobalStringPtr = apiGetFunctionAddress(LLVM, "LLVMBuildGlobalStringPtr"),
GetVolatile = apiGetFunctionAddress(LLVM, "LLVMGetVolatile"),
SetVolatile = apiGetFunctionAddress(LLVM, "LLVMSetVolatile"),
GetOrdering = apiGetFunctionAddress(LLVM, "LLVMGetOrdering"),
SetOrdering = apiGetFunctionAddress(LLVM, "LLVMSetOrdering"),
BuildTrunc = apiGetFunctionAddress(LLVM, "LLVMBuildTrunc"),
BuildZExt = apiGetFunctionAddress(LLVM, "LLVMBuildZExt"),
BuildSExt = apiGetFunctionAddress(LLVM, "LLVMBuildSExt"),
BuildFPToUI = apiGetFunctionAddress(LLVM, "LLVMBuildFPToUI"),
BuildFPToSI = apiGetFunctionAddress(LLVM, "LLVMBuildFPToSI"),
BuildUIToFP = apiGetFunctionAddress(LLVM, "LLVMBuildUIToFP"),
BuildSIToFP = apiGetFunctionAddress(LLVM, "LLVMBuildSIToFP"),
BuildFPTrunc = apiGetFunctionAddress(LLVM, "LLVMBuildFPTrunc"),
BuildFPExt = apiGetFunctionAddress(LLVM, "LLVMBuildFPExt"),
BuildPtrToInt = apiGetFunctionAddress(LLVM, "LLVMBuildPtrToInt"),
BuildIntToPtr = apiGetFunctionAddress(LLVM, "LLVMBuildIntToPtr"),
BuildBitCast = apiGetFunctionAddress(LLVM, "LLVMBuildBitCast"),
BuildAddrSpaceCast = apiGetFunctionAddress(LLVM, "LLVMBuildAddrSpaceCast"),
BuildZExtOrBitCast = apiGetFunctionAddress(LLVM, "LLVMBuildZExtOrBitCast"),
BuildSExtOrBitCast = apiGetFunctionAddress(LLVM, "LLVMBuildSExtOrBitCast"),
BuildTruncOrBitCast = apiGetFunctionAddress(LLVM, "LLVMBuildTruncOrBitCast"),
BuildCast = apiGetFunctionAddress(LLVM, "LLVMBuildCast"),
BuildPointerCast = apiGetFunctionAddress(LLVM, "LLVMBuildPointerCast"),
BuildPointerCast2 = LLVM.getFunctionAddress("LLVMBuildPointerCast2"),
BuildIntCast = apiGetFunctionAddress(LLVM, "LLVMBuildIntCast"),
BuildFPCast = apiGetFunctionAddress(LLVM, "LLVMBuildFPCast"),
BuildICmp = apiGetFunctionAddress(LLVM, "LLVMBuildICmp"),
BuildFCmp = apiGetFunctionAddress(LLVM, "LLVMBuildFCmp"),
BuildPhi = apiGetFunctionAddress(LLVM, "LLVMBuildPhi"),
BuildCall = apiGetFunctionAddress(LLVM, "LLVMBuildCall"),
BuildCall2 = LLVM.getFunctionAddress("LLVMBuildCall2"),
BuildSelect = apiGetFunctionAddress(LLVM, "LLVMBuildSelect"),
BuildVAArg = apiGetFunctionAddress(LLVM, "LLVMBuildVAArg"),
BuildExtractElement = apiGetFunctionAddress(LLVM, "LLVMBuildExtractElement"),
BuildInsertElement = apiGetFunctionAddress(LLVM, "LLVMBuildInsertElement"),
BuildShuffleVector = apiGetFunctionAddress(LLVM, "LLVMBuildShuffleVector"),
BuildExtractValue = apiGetFunctionAddress(LLVM, "LLVMBuildExtractValue"),
BuildInsertValue = apiGetFunctionAddress(LLVM, "LLVMBuildInsertValue"),
BuildIsNull = apiGetFunctionAddress(LLVM, "LLVMBuildIsNull"),
BuildIsNotNull = apiGetFunctionAddress(LLVM, "LLVMBuildIsNotNull"),
BuildPtrDiff = apiGetFunctionAddress(LLVM, "LLVMBuildPtrDiff"),
BuildFence = apiGetFunctionAddress(LLVM, "LLVMBuildFence"),
BuildAtomicRMW = apiGetFunctionAddress(LLVM, "LLVMBuildAtomicRMW"),
BuildAtomicCmpXchg = apiGetFunctionAddress(LLVM, "LLVMBuildAtomicCmpXchg"),
IsAtomicSingleThread = apiGetFunctionAddress(LLVM, "LLVMIsAtomicSingleThread"),
SetAtomicSingleThread = apiGetFunctionAddress(LLVM, "LLVMSetAtomicSingleThread"),
GetCmpXchgSuccessOrdering = apiGetFunctionAddress(LLVM, "LLVMGetCmpXchgSuccessOrdering"),
SetCmpXchgSuccessOrdering = apiGetFunctionAddress(LLVM, "LLVMSetCmpXchgSuccessOrdering"),
GetCmpXchgFailureOrdering = apiGetFunctionAddress(LLVM, "LLVMGetCmpXchgFailureOrdering"),
SetCmpXchgFailureOrdering = apiGetFunctionAddress(LLVM, "LLVMSetCmpXchgFailureOrdering"),
CreateModuleProviderForExistingModule = apiGetFunctionAddress(LLVM, "LLVMCreateModuleProviderForExistingModule"),
DisposeModuleProvider = apiGetFunctionAddress(LLVM, "LLVMDisposeModuleProvider"),
CreateMemoryBufferWithContentsOfFile = apiGetFunctionAddress(LLVM, "LLVMCreateMemoryBufferWithContentsOfFile"),
CreateMemoryBufferWithSTDIN = apiGetFunctionAddress(LLVM, "LLVMCreateMemoryBufferWithSTDIN"),
CreateMemoryBufferWithMemoryRange = apiGetFunctionAddress(LLVM, "LLVMCreateMemoryBufferWithMemoryRange"),
CreateMemoryBufferWithMemoryRangeCopy = apiGetFunctionAddress(LLVM, "LLVMCreateMemoryBufferWithMemoryRangeCopy"),
GetBufferStart = apiGetFunctionAddress(LLVM, "LLVMGetBufferStart"),
GetBufferSize = apiGetFunctionAddress(LLVM, "LLVMGetBufferSize"),
DisposeMemoryBuffer = apiGetFunctionAddress(LLVM, "LLVMDisposeMemoryBuffer"),
GetGlobalPassRegistry = apiGetFunctionAddress(LLVM, "LLVMGetGlobalPassRegistry"),
CreatePassManager = apiGetFunctionAddress(LLVM, "LLVMCreatePassManager"),
CreateFunctionPassManagerForModule = apiGetFunctionAddress(LLVM, "LLVMCreateFunctionPassManagerForModule"),
CreateFunctionPassManager = apiGetFunctionAddress(LLVM, "LLVMCreateFunctionPassManager"),
RunPassManager = apiGetFunctionAddress(LLVM, "LLVMRunPassManager"),
InitializeFunctionPassManager = apiGetFunctionAddress(LLVM, "LLVMInitializeFunctionPassManager"),
RunFunctionPassManager = apiGetFunctionAddress(LLVM, "LLVMRunFunctionPassManager"),
FinalizeFunctionPassManager = apiGetFunctionAddress(LLVM, "LLVMFinalizeFunctionPassManager"),
DisposePassManager = apiGetFunctionAddress(LLVM, "LLVMDisposePassManager"),
StartMultithreaded = apiGetFunctionAddress(LLVM, "LLVMStartMultithreaded"),
StopMultithreaded = apiGetFunctionAddress(LLVM, "LLVMStopMultithreaded"),
IsMultithreaded = apiGetFunctionAddress(LLVM, "LLVMIsMultithreaded");
}
/** Returns the LLVM {@link SharedLibrary}. */
public static SharedLibrary getLibrary() {
return LLVM;
}
// --- [ LLVMInitializeCore ] ---
public static void LLVMInitializeCore(@NativeType("LLVMPassRegistryRef") long R) {
long __functionAddress = Functions.InitializeCore;
if (CHECKS) {
check(R);
}
invokePV(R, __functionAddress);
}
// --- [ LLVMShutdown ] ---
/** Deallocate and destroy all {@code ManagedStatic} variables. */
public static void LLVMShutdown() {
long __functionAddress = Functions.Shutdown;
invokeV(__functionAddress);
}
// --- [ LLVMCreateMessage ] ---
public static long nLLVMCreateMessage(long Message) {
long __functionAddress = Functions.CreateMessage;
return invokePP(Message, __functionAddress);
}
@NativeType("char *")
public static String LLVMCreateMessage(@NativeType("char const *") ByteBuffer Message) {
if (CHECKS) {
checkNT1(Message);
}
long __result = nLLVMCreateMessage(memAddress(Message));
return memUTF8(__result);
}
@NativeType("char *")
public static String LLVMCreateMessage(@NativeType("char const *") CharSequence Message) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Message, true);
long MessageEncoded = stack.getPointerAddress();
long __result = nLLVMCreateMessage(MessageEncoded);
return memUTF8(__result);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMDisposeMessage ] ---
public static void nLLVMDisposeMessage(long Message) {
long __functionAddress = Functions.DisposeMessage;
invokePV(Message, __functionAddress);
}
public static void LLVMDisposeMessage(@NativeType("char *") ByteBuffer Message) {
if (CHECKS) {
checkNT1(Message);
}
nLLVMDisposeMessage(memAddress(Message));
}
// --- [ LLVMContextCreate ] ---
/**
* Create a new context.
*
* Every call to this function should be paired with a call to {@link #LLVMContextDispose ContextDispose} or the context will leak memory.
*/
@NativeType("LLVMContextRef")
public static long LLVMContextCreate() {
long __functionAddress = Functions.ContextCreate;
return invokeP(__functionAddress);
}
// --- [ LLVMGetGlobalContext ] ---
/** Obtain the global context instance. */
@NativeType("LLVMContextRef")
public static long LLVMGetGlobalContext() {
long __functionAddress = Functions.GetGlobalContext;
return invokeP(__functionAddress);
}
// --- [ LLVMContextSetDiagnosticHandler ] ---
/** Unsafe version of: {@link #LLVMContextSetDiagnosticHandler ContextSetDiagnosticHandler} */
public static void nLLVMContextSetDiagnosticHandler(long C, long Handler, long DiagnosticContext) {
long __functionAddress = Functions.ContextSetDiagnosticHandler;
if (CHECKS) {
check(C);
}
invokePPPV(C, Handler, DiagnosticContext, __functionAddress);
}
/** Set the diagnostic handler for this context. */
public static void LLVMContextSetDiagnosticHandler(@NativeType("LLVMContextRef") long C, @Nullable @NativeType("void (*) (LLVMDiagnosticInfoRef, void *)") LLVMDiagnosticHandlerI Handler, @NativeType("void *") long DiagnosticContext) {
nLLVMContextSetDiagnosticHandler(C, memAddressSafe(Handler), DiagnosticContext);
}
// --- [ LLVMContextGetDiagnosticHandler ] ---
/** Unsafe version of: {@link #LLVMContextGetDiagnosticHandler ContextGetDiagnosticHandler} */
public static long nLLVMContextGetDiagnosticHandler(long C) {
long __functionAddress = Functions.ContextGetDiagnosticHandler;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
/** Get the diagnostic handler of this context. */
@Nullable
@NativeType("void (*) (LLVMDiagnosticInfoRef, void *)")
public static LLVMDiagnosticHandler LLVMContextGetDiagnosticHandler(@NativeType("LLVMContextRef") long C) {
return LLVMDiagnosticHandler.createSafe(nLLVMContextGetDiagnosticHandler(C));
}
// --- [ LLVMContextGetDiagnosticContext ] ---
/** Get the diagnostic context of this context. */
@NativeType("void *")
public static long LLVMContextGetDiagnosticContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.ContextGetDiagnosticContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMContextSetYieldCallback ] ---
/** Unsafe version of: {@link #LLVMContextSetYieldCallback ContextSetYieldCallback} */
public static void nLLVMContextSetYieldCallback(long C, long Callback, long OpaqueHandle) {
long __functionAddress = Functions.ContextSetYieldCallback;
if (CHECKS) {
check(C);
}
invokePPPV(C, Callback, OpaqueHandle, __functionAddress);
}
/** Set the yield callback function for this context. */
public static void LLVMContextSetYieldCallback(@NativeType("LLVMContextRef") long C, @Nullable @NativeType("void (*) (LLVMContextRef, void *)") LLVMYieldCallbackI Callback, @NativeType("void *") long OpaqueHandle) {
nLLVMContextSetYieldCallback(C, memAddressSafe(Callback), OpaqueHandle);
}
// --- [ LLVMContextShouldDiscardValueNames ] ---
/**
* Retrieve whether the given context is set to discard all value names.
*
* @since 8.0
*/
@NativeType("LLVMBool")
public static boolean LLVMContextShouldDiscardValueNames(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.ContextShouldDiscardValueNames;
if (CHECKS) {
check(__functionAddress);
check(C);
}
return invokePI(C, __functionAddress) != 0;
}
// --- [ LLVMContextSetDiscardValueNames ] ---
/**
* Set whether the given context discards all value names.
*
* If true, only the names of {@code GlobalValue} objects will be available in the IR. This can be used to save memory and runtime, especially in release
* mode.
*
* @since 8.0
*/
public static void LLVMContextSetDiscardValueNames(@NativeType("LLVMContextRef") long C, @NativeType("LLVMBool") boolean Discard) {
long __functionAddress = Functions.ContextSetDiscardValueNames;
if (CHECKS) {
check(__functionAddress);
check(C);
}
invokePV(C, Discard ? 1 : 0, __functionAddress);
}
// --- [ LLVMContextDispose ] ---
/**
* Destroy a context instance.
*
* This should be called for every call to {@link #LLVMContextCreate ContextCreate} or memory will be leaked.
*/
public static void LLVMContextDispose(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.ContextDispose;
if (CHECKS) {
check(C);
}
invokePV(C, __functionAddress);
}
// --- [ LLVMGetDiagInfoDescription ] ---
/** Unsafe version of: {@link #LLVMGetDiagInfoDescription GetDiagInfoDescription} */
public static long nLLVMGetDiagInfoDescription(long DI) {
long __functionAddress = Functions.GetDiagInfoDescription;
if (CHECKS) {
check(DI);
}
return invokePP(DI, __functionAddress);
}
/** Return a string representation of the {@code DiagnosticInfo}. Use {@link #LLVMDisposeMessage DisposeMessage} to free the string. */
@NativeType("char *")
public static String LLVMGetDiagInfoDescription(@NativeType("LLVMDiagnosticInfoRef") long DI) {
long __result = nLLVMGetDiagInfoDescription(DI);
return memUTF8(__result);
}
// --- [ LLVMGetDiagInfoSeverity ] ---
/** Return an {@code enum LLVMDiagnosticSeverity}. */
@NativeType("LLVMDiagnosticSeverity")
public static int LLVMGetDiagInfoSeverity(@NativeType("LLVMDiagnosticInfoRef") long DI) {
long __functionAddress = Functions.GetDiagInfoSeverity;
if (CHECKS) {
check(DI);
}
return invokePI(DI, __functionAddress);
}
// --- [ LLVMGetMDKindIDInContext ] ---
public static int nLLVMGetMDKindIDInContext(long C, long Name, int SLen) {
long __functionAddress = Functions.GetMDKindIDInContext;
if (CHECKS) {
check(C);
}
return invokePPI(C, Name, SLen, __functionAddress);
}
@NativeType("unsigned int")
public static int LLVMGetMDKindIDInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") ByteBuffer Name) {
return nLLVMGetMDKindIDInContext(C, memAddress(Name), Name.remaining());
}
@NativeType("unsigned int")
public static int LLVMGetMDKindIDInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetMDKindIDInContext(C, NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetMDKindID ] ---
public static int nLLVMGetMDKindID(long Name, int SLen) {
long __functionAddress = Functions.GetMDKindID;
return invokePI(Name, SLen, __functionAddress);
}
@NativeType("unsigned int")
public static int LLVMGetMDKindID(@NativeType("char const *") ByteBuffer Name) {
return nLLVMGetMDKindID(memAddress(Name), Name.remaining());
}
@NativeType("unsigned int")
public static int LLVMGetMDKindID(@NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetMDKindID(NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetEnumAttributeKindForName ] ---
/** Unsafe version of: {@link #LLVMGetEnumAttributeKindForName GetEnumAttributeKindForName} */
public static int nLLVMGetEnumAttributeKindForName(long Name, long SLen) {
long __functionAddress = Functions.GetEnumAttributeKindForName;
return invokePPI(Name, SLen, __functionAddress);
}
/**
* Return an unique id given the name of a enum attribute, or 0 if no attribute by that name exists.
*
* See http://llvm.org/docs/LangRef.html#parameter-attributes and http://llvm.org/docs/LangRef.html#function-attributes for the
* list of available attributes.
*
* NB: Attribute names and/or id are subject to change without going through the C API deprecation cycle.
*/
@NativeType("unsigned int")
public static int LLVMGetEnumAttributeKindForName(@NativeType("char const *") ByteBuffer Name) {
return nLLVMGetEnumAttributeKindForName(memAddress(Name), Name.remaining());
}
/**
* Return an unique id given the name of a enum attribute, or 0 if no attribute by that name exists.
*
* See http://llvm.org/docs/LangRef.html#parameter-attributes and http://llvm.org/docs/LangRef.html#function-attributes for the
* list of available attributes.
*
* NB: Attribute names and/or id are subject to change without going through the C API deprecation cycle.
*/
@NativeType("unsigned int")
public static int LLVMGetEnumAttributeKindForName(@NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetEnumAttributeKindForName(NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetLastEnumAttributeKind ] ---
@NativeType("unsigned int")
public static int LLVMGetLastEnumAttributeKind() {
long __functionAddress = Functions.GetLastEnumAttributeKind;
return invokeI(__functionAddress);
}
// --- [ LLVMCreateEnumAttribute ] ---
/** Create an enum attribute. */
@NativeType("LLVMAttributeRef")
public static long LLVMCreateEnumAttribute(@NativeType("LLVMContextRef") long C, @NativeType("unsigned int") int KindID, @NativeType("uint64_t") long Val) {
long __functionAddress = Functions.CreateEnumAttribute;
if (CHECKS) {
check(C);
}
return invokePJP(C, KindID, Val, __functionAddress);
}
// --- [ LLVMGetEnumAttributeKind ] ---
/** Get the unique id corresponding to the enum attribute passed as argument. */
@NativeType("unsigned int")
public static int LLVMGetEnumAttributeKind(@NativeType("LLVMAttributeRef") long A) {
long __functionAddress = Functions.GetEnumAttributeKind;
if (CHECKS) {
check(A);
}
return invokePI(A, __functionAddress);
}
// --- [ LLVMGetEnumAttributeValue ] ---
/** Get the enum attribute's value. 0 is returned if none exists. */
@NativeType("uint64_t")
public static long LLVMGetEnumAttributeValue(@NativeType("LLVMAttributeRef") long A) {
long __functionAddress = Functions.GetEnumAttributeValue;
if (CHECKS) {
check(A);
}
return invokePJ(A, __functionAddress);
}
// --- [ LLVMCreateStringAttribute ] ---
/** Unsafe version of: {@link #LLVMCreateStringAttribute CreateStringAttribute} */
public static long nLLVMCreateStringAttribute(long C, long K, int KLength, long V, int VLength) {
long __functionAddress = Functions.CreateStringAttribute;
if (CHECKS) {
check(C);
}
return invokePPPP(C, K, KLength, V, VLength, __functionAddress);
}
/** Create a string attribute. */
@NativeType("LLVMAttributeRef")
public static long LLVMCreateStringAttribute(@NativeType("LLVMContextRef") long C, @NativeType("char const *") ByteBuffer K, @NativeType("char const *") ByteBuffer V) {
return nLLVMCreateStringAttribute(C, memAddress(K), K.remaining(), memAddress(V), V.remaining());
}
/** Create a string attribute. */
@NativeType("LLVMAttributeRef")
public static long LLVMCreateStringAttribute(@NativeType("LLVMContextRef") long C, @NativeType("char const *") CharSequence K, @NativeType("char const *") CharSequence V) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int KEncodedLength = stack.nUTF8(K, false);
long KEncoded = stack.getPointerAddress();
int VEncodedLength = stack.nUTF8(V, false);
long VEncoded = stack.getPointerAddress();
return nLLVMCreateStringAttribute(C, KEncoded, KEncodedLength, VEncoded, VEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetStringAttributeKind ] ---
/** Unsafe version of: {@link #LLVMGetStringAttributeKind GetStringAttributeKind} */
public static long nLLVMGetStringAttributeKind(long A, long Length) {
long __functionAddress = Functions.GetStringAttributeKind;
if (CHECKS) {
check(A);
}
return invokePPP(A, Length, __functionAddress);
}
/** Get the string attribute's kind. */
@NativeType("char const *")
public static String LLVMGetStringAttributeKind(@NativeType("LLVMAttributeRef") long A) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
IntBuffer Length = stack.callocInt(1);
long __result = nLLVMGetStringAttributeKind(A, memAddress(Length));
return memUTF8(__result, Length.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetStringAttributeValue ] ---
/** Unsafe version of: {@link #LLVMGetStringAttributeValue GetStringAttributeValue} */
public static long nLLVMGetStringAttributeValue(long A, long Length) {
long __functionAddress = Functions.GetStringAttributeValue;
if (CHECKS) {
check(A);
}
return invokePPP(A, Length, __functionAddress);
}
/** Get the string attribute's value. */
@NativeType("char const *")
public static String LLVMGetStringAttributeValue(@NativeType("LLVMAttributeRef") long A) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
IntBuffer Length = stack.callocInt(1);
long __result = nLLVMGetStringAttributeValue(A, memAddress(Length));
return memUTF8(__result, Length.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMIsEnumAttribute ] ---
@NativeType("LLVMBool")
public static boolean LLVMIsEnumAttribute(@NativeType("LLVMAttributeRef") long A) {
long __functionAddress = Functions.IsEnumAttribute;
if (CHECKS) {
check(A);
}
return invokePI(A, __functionAddress) != 0;
}
// --- [ LLVMIsStringAttribute ] ---
@NativeType("LLVMBool")
public static boolean LLVMIsStringAttribute(@NativeType("LLVMAttributeRef") long A) {
long __functionAddress = Functions.IsStringAttribute;
if (CHECKS) {
check(A);
}
return invokePI(A, __functionAddress) != 0;
}
// --- [ LLVMModuleCreateWithName ] ---
/** Unsafe version of: {@link #LLVMModuleCreateWithName ModuleCreateWithName} */
public static long nLLVMModuleCreateWithName(long ModuleID) {
long __functionAddress = Functions.ModuleCreateWithName;
return invokePP(ModuleID, __functionAddress);
}
/**
* Create a new, empty module in the global context.
*
* This is equivalent to calling {@link #LLVMModuleCreateWithNameInContext ModuleCreateWithNameInContext} with {@link #LLVMGetGlobalContext GetGlobalContext} as the context parameter.
*
* Every invocation should be paired with {@link #LLVMDisposeModule DisposeModule} or memory will be leaked.
*/
@NativeType("LLVMModuleRef")
public static long LLVMModuleCreateWithName(@NativeType("char const *") ByteBuffer ModuleID) {
if (CHECKS) {
checkNT1(ModuleID);
}
return nLLVMModuleCreateWithName(memAddress(ModuleID));
}
/**
* Create a new, empty module in the global context.
*
* This is equivalent to calling {@link #LLVMModuleCreateWithNameInContext ModuleCreateWithNameInContext} with {@link #LLVMGetGlobalContext GetGlobalContext} as the context parameter.
*
* Every invocation should be paired with {@link #LLVMDisposeModule DisposeModule} or memory will be leaked.
*/
@NativeType("LLVMModuleRef")
public static long LLVMModuleCreateWithName(@NativeType("char const *") CharSequence ModuleID) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(ModuleID, true);
long ModuleIDEncoded = stack.getPointerAddress();
return nLLVMModuleCreateWithName(ModuleIDEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMModuleCreateWithNameInContext ] ---
/** Unsafe version of: {@link #LLVMModuleCreateWithNameInContext ModuleCreateWithNameInContext} */
public static long nLLVMModuleCreateWithNameInContext(long ModuleID, long C) {
long __functionAddress = Functions.ModuleCreateWithNameInContext;
if (CHECKS) {
check(C);
}
return invokePPP(ModuleID, C, __functionAddress);
}
/**
* Create a new, empty module in a specific context.
*
* Every invocation should be paired with {@link #LLVMDisposeModule DisposeModule} or memory will be leaked.
*/
@NativeType("LLVMModuleRef")
public static long LLVMModuleCreateWithNameInContext(@NativeType("char const *") ByteBuffer ModuleID, @NativeType("LLVMContextRef") long C) {
if (CHECKS) {
checkNT1(ModuleID);
}
return nLLVMModuleCreateWithNameInContext(memAddress(ModuleID), C);
}
/**
* Create a new, empty module in a specific context.
*
* Every invocation should be paired with {@link #LLVMDisposeModule DisposeModule} or memory will be leaked.
*/
@NativeType("LLVMModuleRef")
public static long LLVMModuleCreateWithNameInContext(@NativeType("char const *") CharSequence ModuleID, @NativeType("LLVMContextRef") long C) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(ModuleID, true);
long ModuleIDEncoded = stack.getPointerAddress();
return nLLVMModuleCreateWithNameInContext(ModuleIDEncoded, C);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMCloneModule ] ---
/** Return an exact copy of the specified module. */
@NativeType("LLVMModuleRef")
public static long LLVMCloneModule(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.CloneModule;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMDisposeModule ] ---
/**
* Destroy a module instance.
*
* This must be called for every created module or memory will be leaked.
*/
public static void LLVMDisposeModule(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.DisposeModule;
if (CHECKS) {
check(M);
}
invokePV(M, __functionAddress);
}
// --- [ LLVMGetModuleIdentifier ] ---
/**
* Unsafe version of: {@link #LLVMGetModuleIdentifier GetModuleIdentifier}
*
* @param Len out parameter which holds the length of the returned string
*/
public static long nLLVMGetModuleIdentifier(long M, long Len) {
long __functionAddress = Functions.GetModuleIdentifier;
if (CHECKS) {
check(M);
}
return invokePPP(M, Len, __functionAddress);
}
/**
* Obtain the identifier of a module.
*
* @param M module to obtain identifier of
*
* @return the identifier of {@code M}
*/
@NativeType("char const *")
public static String LLVMGetModuleIdentifier(@NativeType("LLVMModuleRef") long M) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer Len = stack.callocPointer(1);
long __result = nLLVMGetModuleIdentifier(M, memAddress(Len));
return memUTF8(__result, (int)Len.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMSetModuleIdentifier ] ---
/**
* Unsafe version of: {@link #LLVMSetModuleIdentifier SetModuleIdentifier}
*
* @param Len length of {@code Ident}
*/
public static void nLLVMSetModuleIdentifier(long M, long Ident, long Len) {
long __functionAddress = Functions.SetModuleIdentifier;
if (CHECKS) {
check(M);
}
invokePPPV(M, Ident, Len, __functionAddress);
}
/**
* Set the identifier of a module to a string {@code Ident} with length {@code Len}.
*
* @param M the module to set identifier
* @param Ident the string to set {@code M}'s identifier to
*/
public static void LLVMSetModuleIdentifier(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Ident) {
nLLVMSetModuleIdentifier(M, memAddress(Ident), Ident.remaining());
}
/**
* Set the identifier of a module to a string {@code Ident} with length {@code Len}.
*
* @param M the module to set identifier
* @param Ident the string to set {@code M}'s identifier to
*/
public static void LLVMSetModuleIdentifier(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Ident) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int IdentEncodedLength = stack.nUTF8(Ident, false);
long IdentEncoded = stack.getPointerAddress();
nLLVMSetModuleIdentifier(M, IdentEncoded, IdentEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetSourceFileName ] ---
/**
* Unsafe version of: {@link #LLVMGetSourceFileName GetSourceFileName}
*
* @param Len out parameter which holds the length of the returned string
*/
public static long nLLVMGetSourceFileName(long M, long Len) {
long __functionAddress = Functions.GetSourceFileName;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePPP(M, Len, __functionAddress);
}
/**
* Obtain the module's original source file name.
*
* @param M module to obtain the name of
*
* @return the original source file name of {@code M}
*/
@NativeType("char const *")
public static String LLVMGetSourceFileName(@NativeType("LLVMModuleRef") long M) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer Len = stack.callocPointer(1);
long __result = nLLVMGetSourceFileName(M, memAddress(Len));
return memUTF8(__result, (int)Len.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMSetSourceFileName ] ---
/**
* Unsafe version of: {@link #LLVMSetSourceFileName SetSourceFileName}
*
* @param Len length of {@code Name}
*/
public static void nLLVMSetSourceFileName(long M, long Name, long Len) {
long __functionAddress = Functions.SetSourceFileName;
if (CHECKS) {
check(__functionAddress);
check(M);
}
invokePPPV(M, Name, Len, __functionAddress);
}
/**
* Set the original source file name of a module to a string {@code Name} with length {@code Len}.
*
* @param M the module to set the source file name of
* @param Name the string to set {@code M}'s source file name to
*/
public static void LLVMSetSourceFileName(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
nLLVMSetSourceFileName(M, memAddress(Name), Name.remaining());
}
/**
* Set the original source file name of a module to a string {@code Name} with length {@code Len}.
*
* @param M the module to set the source file name of
* @param Name the string to set {@code M}'s source file name to
*/
public static void LLVMSetSourceFileName(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
nLLVMSetSourceFileName(M, NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetDataLayoutStr ] ---
/** Unsafe version of: {@link #LLVMGetDataLayoutStr GetDataLayoutStr} */
public static long nLLVMGetDataLayoutStr(long M) {
long __functionAddress = Functions.GetDataLayoutStr;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
/**
* Obtain the data layout for a module.
*
* {@link #LLVMGetDataLayout GetDataLayout} is DEPRECATED, as the name is not only incorrect, but match the name of another method on the module. Prefer the use of
* {@code LLVMGetDataLayoutStr}, which is not ambiguous.
*/
@NativeType("char const *")
public static String LLVMGetDataLayoutStr(@NativeType("LLVMModuleRef") long M) {
long __result = nLLVMGetDataLayoutStr(M);
return memUTF8(__result);
}
// --- [ LLVMGetDataLayout ] ---
public static long nLLVMGetDataLayout(long M) {
long __functionAddress = Functions.GetDataLayout;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
@NativeType("char const *")
public static String LLVMGetDataLayout(@NativeType("LLVMModuleRef") long M) {
long __result = nLLVMGetDataLayout(M);
return memUTF8(__result);
}
// --- [ LLVMSetDataLayout ] ---
/** Unsafe version of: {@link #LLVMSetDataLayout SetDataLayout} */
public static void nLLVMSetDataLayout(long M, long DataLayoutStr) {
long __functionAddress = Functions.SetDataLayout;
if (CHECKS) {
check(M);
}
invokePPV(M, DataLayoutStr, __functionAddress);
}
/** Set the data layout for a module. */
public static void LLVMSetDataLayout(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer DataLayoutStr) {
if (CHECKS) {
checkNT1(DataLayoutStr);
}
nLLVMSetDataLayout(M, memAddress(DataLayoutStr));
}
/** Set the data layout for a module. */
public static void LLVMSetDataLayout(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence DataLayoutStr) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(DataLayoutStr, true);
long DataLayoutStrEncoded = stack.getPointerAddress();
nLLVMSetDataLayout(M, DataLayoutStrEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetTarget ] ---
/** Unsafe version of: {@link #LLVMGetTarget GetTarget} */
public static long nLLVMGetTarget(long M) {
long __functionAddress = Functions.GetTarget;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
/** Obtain the target triple for a module. */
@NativeType("char const *")
public static String LLVMGetTarget(@NativeType("LLVMModuleRef") long M) {
long __result = nLLVMGetTarget(M);
return memUTF8(__result);
}
// --- [ LLVMSetTarget ] ---
/** Unsafe version of: {@link #LLVMSetTarget SetTarget} */
public static void nLLVMSetTarget(long M, long Triple) {
long __functionAddress = Functions.SetTarget;
if (CHECKS) {
check(M);
}
invokePPV(M, Triple, __functionAddress);
}
/** Set the target triple for a module. */
public static void LLVMSetTarget(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Triple) {
if (CHECKS) {
checkNT1(Triple);
}
nLLVMSetTarget(M, memAddress(Triple));
}
/** Set the target triple for a module. */
public static void LLVMSetTarget(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Triple) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Triple, true);
long TripleEncoded = stack.getPointerAddress();
nLLVMSetTarget(M, TripleEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMCopyModuleFlagsMetadata ] ---
/** Unsafe version of: {@link #LLVMCopyModuleFlagsMetadata CopyModuleFlagsMetadata} */
public static long nLLVMCopyModuleFlagsMetadata(long M, long Len) {
long __functionAddress = Functions.CopyModuleFlagsMetadata;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePPP(M, Len, __functionAddress);
}
/**
* Returns the module flags as an array of flag-key-value triples. The caller is responsible for freeing this array by calling {@code
* {@link #LLVMDisposeModuleFlagsMetadata DisposeModuleFlagsMetadata}}.
*/
@NativeType("LLVMModuleFlagEntry *")
public static long LLVMCopyModuleFlagsMetadata(@NativeType("LLVMModuleRef") long M, @NativeType("size_t *") PointerBuffer Len) {
if (CHECKS) {
check(Len, 1);
}
return nLLVMCopyModuleFlagsMetadata(M, memAddress(Len));
}
// --- [ LLVMDisposeModuleFlagsMetadata ] ---
/** Destroys module flags metadata entries. */
public static void LLVMDisposeModuleFlagsMetadata(@NativeType("LLVMModuleFlagEntry *") long Entries) {
long __functionAddress = Functions.DisposeModuleFlagsMetadata;
if (CHECKS) {
check(__functionAddress);
check(Entries);
}
invokePV(Entries, __functionAddress);
}
// --- [ LLVMModuleFlagEntriesGetFlagBehavior ] ---
/** Returns the flag behavior for a module flag entry at a specific index. */
@NativeType("LLVMModuleFlagBehavior")
public static int LLVMModuleFlagEntriesGetFlagBehavior(@NativeType("LLVMModuleFlagEntry *") long Entries, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.ModuleFlagEntriesGetFlagBehavior;
if (CHECKS) {
check(__functionAddress);
check(Entries);
}
return invokePI(Entries, Index, __functionAddress);
}
// --- [ LLVMModuleFlagEntriesGetKey ] ---
/** Unsafe version of: {@link #LLVMModuleFlagEntriesGetKey ModuleFlagEntriesGetKey} */
public static long nLLVMModuleFlagEntriesGetKey(long Entries, int Index, long Len) {
long __functionAddress = Functions.ModuleFlagEntriesGetKey;
if (CHECKS) {
check(__functionAddress);
check(Entries);
}
return invokePPP(Entries, Index, Len, __functionAddress);
}
/** Returns the key for a module flag entry at a specific index. */
@NativeType("char const *")
public static String LLVMModuleFlagEntriesGetKey(@NativeType("LLVMModuleFlagEntry *") long Entries, @NativeType("unsigned int") int Index) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer Len = stack.callocPointer(1);
long __result = nLLVMModuleFlagEntriesGetKey(Entries, Index, memAddress(Len));
return memUTF8(__result, (int)Len.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMModuleFlagEntriesGetMetadata ] ---
/** Returns the metadata for a module flag entry at a specific index. */
@NativeType("LLVMMetadataRef")
public static long LLVMModuleFlagEntriesGetMetadata(@NativeType("LLVMModuleFlagEntry *") long Entries, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.ModuleFlagEntriesGetMetadata;
if (CHECKS) {
check(__functionAddress);
check(Entries);
}
return invokePP(Entries, Index, __functionAddress);
}
// --- [ LLVMGetModuleFlag ] ---
/** Unsafe version of: {@link #LLVMGetModuleFlag GetModuleFlag} */
public static long nLLVMGetModuleFlag(long M, long Key, long KeyLen) {
long __functionAddress = Functions.GetModuleFlag;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePPPP(M, Key, KeyLen, __functionAddress);
}
/** Add a module-level flag to the module-level flags metadata if it doesn't already exist. */
@NativeType("LLVMMetadataRef")
public static long LLVMGetModuleFlag(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Key) {
return nLLVMGetModuleFlag(M, memAddress(Key), Key.remaining());
}
/** Add a module-level flag to the module-level flags metadata if it doesn't already exist. */
@NativeType("LLVMMetadataRef")
public static long LLVMGetModuleFlag(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Key) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int KeyEncodedLength = stack.nUTF8(Key, false);
long KeyEncoded = stack.getPointerAddress();
return nLLVMGetModuleFlag(M, KeyEncoded, KeyEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAddModuleFlag ] ---
/** Unsafe version of: {@link #LLVMAddModuleFlag AddModuleFlag} */
public static void nLLVMAddModuleFlag(long M, int Behavior, long Key, long KeyLen, long Val) {
long __functionAddress = Functions.AddModuleFlag;
if (CHECKS) {
check(__functionAddress);
check(M);
check(Val);
}
invokePPPPV(M, Behavior, Key, KeyLen, Val, __functionAddress);
}
/** Add a module-level flag to the module-level flags metadata if it doesn't already exist. */
public static void LLVMAddModuleFlag(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMModuleFlagBehavior") int Behavior, @NativeType("char const *") ByteBuffer Key, @NativeType("LLVMMetadataRef") long Val) {
nLLVMAddModuleFlag(M, Behavior, memAddress(Key), Key.remaining(), Val);
}
/** Add a module-level flag to the module-level flags metadata if it doesn't already exist. */
public static void LLVMAddModuleFlag(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMModuleFlagBehavior") int Behavior, @NativeType("char const *") CharSequence Key, @NativeType("LLVMMetadataRef") long Val) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int KeyEncodedLength = stack.nUTF8(Key, false);
long KeyEncoded = stack.getPointerAddress();
nLLVMAddModuleFlag(M, Behavior, KeyEncoded, KeyEncodedLength, Val);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMDumpModule ] ---
/** Dump a representation of a module to {@code stderr}. */
public static void LLVMDumpModule(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.DumpModule;
if (CHECKS) {
check(M);
}
invokePV(M, __functionAddress);
}
// --- [ LLVMPrintModuleToFile ] ---
/** Unsafe version of: {@link #LLVMPrintModuleToFile PrintModuleToFile} */
public static int nLLVMPrintModuleToFile(long M, long Filename, long ErrorMessage) {
long __functionAddress = Functions.PrintModuleToFile;
if (CHECKS) {
check(M);
}
return invokePPPI(M, Filename, ErrorMessage, __functionAddress);
}
/**
* Print a representation of a module to a file. The {@code ErrorMessage} needs to be disposed with {@link #LLVMDisposeMessage DisposeMessage}.
*
* @return 0 on success, 1 otherwise
*/
@NativeType("LLVMBool")
public static boolean LLVMPrintModuleToFile(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Filename, @NativeType("char **") PointerBuffer ErrorMessage) {
if (CHECKS) {
checkNT1(Filename);
check(ErrorMessage, 1);
}
return nLLVMPrintModuleToFile(M, memAddress(Filename), memAddress(ErrorMessage)) != 0;
}
/**
* Print a representation of a module to a file. The {@code ErrorMessage} needs to be disposed with {@link #LLVMDisposeMessage DisposeMessage}.
*
* @return 0 on success, 1 otherwise
*/
@NativeType("LLVMBool")
public static boolean LLVMPrintModuleToFile(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Filename, @NativeType("char **") PointerBuffer ErrorMessage) {
if (CHECKS) {
check(ErrorMessage, 1);
}
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Filename, true);
long FilenameEncoded = stack.getPointerAddress();
return nLLVMPrintModuleToFile(M, FilenameEncoded, memAddress(ErrorMessage)) != 0;
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMPrintModuleToString ] ---
/** Unsafe version of: {@link #LLVMPrintModuleToString PrintModuleToString} */
public static long nLLVMPrintModuleToString(long M) {
long __functionAddress = Functions.PrintModuleToString;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
/** Return a string representation of the module. Use {@link #LLVMDisposeMessage DisposeMessage} to free the string. */
@NativeType("char *")
public static String LLVMPrintModuleToString(@NativeType("LLVMModuleRef") long M) {
long __result = nLLVMPrintModuleToString(M);
return memUTF8(__result);
}
// --- [ LLVMGetModuleInlineAsm ] ---
/** Unsafe version of: {@link #LLVMGetModuleInlineAsm GetModuleInlineAsm} */
public static long nLLVMGetModuleInlineAsm(long M, long Len) {
long __functionAddress = Functions.GetModuleInlineAsm;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePPP(M, Len, __functionAddress);
}
/** Get inline assembly for a module. */
@NativeType("char const *")
public static String LLVMGetModuleInlineAsm(@NativeType("LLVMModuleRef") long M) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer Len = stack.callocPointer(1);
long __result = nLLVMGetModuleInlineAsm(M, memAddress(Len));
return memUTF8(__result, (int)Len.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMSetModuleInlineAsm2 ] ---
/** Unsafe version of: {@link #LLVMSetModuleInlineAsm2 SetModuleInlineAsm2} */
public static void nLLVMSetModuleInlineAsm2(long M, long Asm, long Len) {
long __functionAddress = Functions.SetModuleInlineAsm2;
if (CHECKS) {
check(__functionAddress);
check(M);
}
invokePPPV(M, Asm, Len, __functionAddress);
}
/** Set inline assembly for a module. */
public static void LLVMSetModuleInlineAsm2(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Asm) {
nLLVMSetModuleInlineAsm2(M, memAddress(Asm), Asm.remaining());
}
/** Set inline assembly for a module. */
public static void LLVMSetModuleInlineAsm2(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Asm) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int AsmEncodedLength = stack.nUTF8(Asm, false);
long AsmEncoded = stack.getPointerAddress();
nLLVMSetModuleInlineAsm2(M, AsmEncoded, AsmEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAppendModuleInlineAsm ] ---
/** Unsafe version of: {@link #LLVMAppendModuleInlineAsm AppendModuleInlineAsm} */
public static void nLLVMAppendModuleInlineAsm(long M, long Asm, long Len) {
long __functionAddress = Functions.AppendModuleInlineAsm;
if (CHECKS) {
check(__functionAddress);
check(M);
}
invokePPPV(M, Asm, Len, __functionAddress);
}
/** Append inline assembly to a module. */
public static void LLVMAppendModuleInlineAsm(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Asm) {
nLLVMAppendModuleInlineAsm(M, memAddress(Asm), Asm.remaining());
}
/** Append inline assembly to a module. */
public static void LLVMAppendModuleInlineAsm(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Asm) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int AsmEncodedLength = stack.nUTF8(Asm, false);
long AsmEncoded = stack.getPointerAddress();
nLLVMAppendModuleInlineAsm(M, AsmEncoded, AsmEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetInlineAsm ] ---
/** Unsafe version of: {@link #LLVMGetInlineAsm GetInlineAsm} */
public static long nLLVMGetInlineAsm(long Ty, long AsmString, long AsmStringSize, long Constraints, long ConstraintsSize, int HasSideEffects, int IsAlignStack, int Dialect) {
long __functionAddress = Functions.GetInlineAsm;
if (CHECKS) {
check(__functionAddress);
check(Ty);
}
return invokePPPPPP(Ty, AsmString, AsmStringSize, Constraints, ConstraintsSize, HasSideEffects, IsAlignStack, Dialect, __functionAddress);
}
/** Create the specified uniqued inline asm string. */
@NativeType("LLVMValueRef")
public static long LLVMGetInlineAsm(@NativeType("LLVMTypeRef") long Ty, @NativeType("char *") ByteBuffer AsmString, @NativeType("char *") ByteBuffer Constraints, @NativeType("LLVMBool") boolean HasSideEffects, @NativeType("LLVMBool") boolean IsAlignStack, @NativeType("LLVMInlineAsmDialect") int Dialect) {
return nLLVMGetInlineAsm(Ty, memAddress(AsmString), AsmString.remaining(), memAddress(Constraints), Constraints.remaining(), HasSideEffects ? 1 : 0, IsAlignStack ? 1 : 0, Dialect);
}
// --- [ LLVMGetModuleContext ] ---
/** Obtain the context to which this module is associated. */
@NativeType("LLVMContextRef")
public static long LLVMGetModuleContext(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetModuleContext;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetTypeByName ] ---
/** Unsafe version of: {@link #LLVMGetTypeByName GetTypeByName} */
public static long nLLVMGetTypeByName(long M, long Name) {
long __functionAddress = Functions.GetTypeByName;
if (CHECKS) {
check(M);
}
return invokePPP(M, Name, __functionAddress);
}
/** Obtain a Type from a module by its registered name. */
@NativeType("LLVMTypeRef")
public static long LLVMGetTypeByName(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMGetTypeByName(M, memAddress(Name));
}
/** Obtain a Type from a module by its registered name. */
@NativeType("LLVMTypeRef")
public static long LLVMGetTypeByName(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetTypeByName(M, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetFirstNamedMetadata ] ---
/** Obtain an iterator to the first {@code NamedMDNode} in a {@code Module}. */
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetFirstNamedMetadata(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetFirstNamedMetadata;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetLastNamedMetadata ] ---
/** Obtain an iterator to the last {@code NamedMDNode} in a {@code Module}. */
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetLastNamedMetadata(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetLastNamedMetadata;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetNextNamedMetadata ] ---
/**
* Advance a {@code NamedMDNode} iterator to the next {@code NamedMDNode}.
*
* Returns {@code NULL} if the iterator was already at the end and there are no more named metadata nodes.
*/
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetNextNamedMetadata(@NativeType("LLVMNamedMDNodeRef") long NamedMDNode) {
long __functionAddress = Functions.GetNextNamedMetadata;
if (CHECKS) {
check(__functionAddress);
check(NamedMDNode);
}
return invokePP(NamedMDNode, __functionAddress);
}
// --- [ LLVMGetPreviousNamedMetadata ] ---
/**
* Decrement a {@code NamedMDNode} iterator to the previous {@code NamedMDNode}.
*
* Returns {@code NULL} if the iterator was already at the beginning and there are no previous named metadata nodes.
*/
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetPreviousNamedMetadata(@NativeType("LLVMNamedMDNodeRef") long NamedMDNode) {
long __functionAddress = Functions.GetPreviousNamedMetadata;
if (CHECKS) {
check(__functionAddress);
check(NamedMDNode);
}
return invokePP(NamedMDNode, __functionAddress);
}
// --- [ LLVMGetNamedMetadata ] ---
/** Unsafe version of: {@link #LLVMGetNamedMetadata GetNamedMetadata} */
public static long nLLVMGetNamedMetadata(long M, long Name, long NameLen) {
long __functionAddress = Functions.GetNamedMetadata;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePPPP(M, Name, NameLen, __functionAddress);
}
/** Retrieve a {@code NamedMDNode} with the given name, returning {@code NULL} if no such node exists. */
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetNamedMetadata(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
return nLLVMGetNamedMetadata(M, memAddress(Name), Name.remaining());
}
/** Retrieve a {@code NamedMDNode} with the given name, returning {@code NULL} if no such node exists. */
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetNamedMetadata(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetNamedMetadata(M, NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetOrInsertNamedMetadata ] ---
/** Unsafe version of: {@link #LLVMGetOrInsertNamedMetadata GetOrInsertNamedMetadata} */
public static long nLLVMGetOrInsertNamedMetadata(long M, long Name, long NameLen) {
long __functionAddress = Functions.GetOrInsertNamedMetadata;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePPPP(M, Name, NameLen, __functionAddress);
}
/** Retrieve a {@code NamedMDNode} with the given name, creating a new node if no such node exists. */
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetOrInsertNamedMetadata(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
return nLLVMGetOrInsertNamedMetadata(M, memAddress(Name), Name.remaining());
}
/** Retrieve a {@code NamedMDNode} with the given name, creating a new node if no such node exists. */
@NativeType("LLVMNamedMDNodeRef")
public static long LLVMGetOrInsertNamedMetadata(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetOrInsertNamedMetadata(M, NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetNamedMetadataName ] ---
/** Unsafe version of: {@link #LLVMGetNamedMetadataName GetNamedMetadataName} */
public static long nLLVMGetNamedMetadataName(long NamedMD, long NameLen) {
long __functionAddress = Functions.GetNamedMetadataName;
if (CHECKS) {
check(__functionAddress);
check(NamedMD);
}
return invokePPP(NamedMD, NameLen, __functionAddress);
}
/** Retrieve the name of a {@code NamedMDNode}. */
@NativeType("char const *")
public static String LLVMGetNamedMetadataName(@NativeType("LLVMNamedMDNodeRef") long NamedMD) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer NameLen = stack.callocPointer(1);
long __result = nLLVMGetNamedMetadataName(NamedMD, memAddress(NameLen));
return memUTF8(__result, (int)NameLen.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetNamedMetadataNumOperands ] ---
/** Unsafe version of: {@link #LLVMGetNamedMetadataNumOperands GetNamedMetadataNumOperands} */
public static int nLLVMGetNamedMetadataNumOperands(long M, long Name) {
long __functionAddress = Functions.GetNamedMetadataNumOperands;
if (CHECKS) {
check(M);
}
return invokePPI(M, Name, __functionAddress);
}
/** Obtain the number of operands for named metadata in a module. */
@NativeType("unsigned int")
public static int LLVMGetNamedMetadataNumOperands(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMGetNamedMetadataNumOperands(M, memAddress(Name));
}
/** Obtain the number of operands for named metadata in a module. */
@NativeType("unsigned int")
public static int LLVMGetNamedMetadataNumOperands(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetNamedMetadataNumOperands(M, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetNamedMetadataOperands ] ---
/** Unsafe version of: {@link #LLVMGetNamedMetadataOperands GetNamedMetadataOperands} */
public static void nLLVMGetNamedMetadataOperands(long M, long Name, long Dest) {
long __functionAddress = Functions.GetNamedMetadataOperands;
if (CHECKS) {
check(M);
}
invokePPPV(M, Name, Dest, __functionAddress);
}
/**
* Obtain the named metadata operands for a module.
*
* The passed {@code LLVMValueRef} pointer should refer to an array of {@code LLVMValueRef} at least {@link #LLVMGetNamedMetadataNumOperands GetNamedMetadataNumOperands} long. This array will
* be populated with the {@code LLVMValueRef} instances. Each instance corresponds to a {@code llvm::MDNode}.
*/
public static void LLVMGetNamedMetadataOperands(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name, @NativeType("LLVMValueRef *") PointerBuffer Dest) {
if (CHECKS) {
checkNT1(Name);
if (DEBUG) {
check(Dest, LLVMGetNamedMetadataNumOperands(M, Name));
}
}
nLLVMGetNamedMetadataOperands(M, memAddress(Name), memAddress(Dest));
}
/**
* Obtain the named metadata operands for a module.
*
* The passed {@code LLVMValueRef} pointer should refer to an array of {@code LLVMValueRef} at least {@link #LLVMGetNamedMetadataNumOperands GetNamedMetadataNumOperands} long. This array will
* be populated with the {@code LLVMValueRef} instances. Each instance corresponds to a {@code llvm::MDNode}.
*/
public static void LLVMGetNamedMetadataOperands(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name, @NativeType("LLVMValueRef *") PointerBuffer Dest) {
if (CHECKS) {
if (DEBUG) {
check(Dest, LLVMGetNamedMetadataNumOperands(M, Name));
}
}
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
nLLVMGetNamedMetadataOperands(M, NameEncoded, memAddress(Dest));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAddNamedMetadataOperand ] ---
/** Unsafe version of: {@link #LLVMAddNamedMetadataOperand AddNamedMetadataOperand} */
public static void nLLVMAddNamedMetadataOperand(long M, long Name, long Val) {
long __functionAddress = Functions.AddNamedMetadataOperand;
if (CHECKS) {
check(M);
check(Val);
}
invokePPPV(M, Name, Val, __functionAddress);
}
/** Add an operand to named metadata. */
public static void LLVMAddNamedMetadataOperand(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name, @NativeType("LLVMValueRef") long Val) {
if (CHECKS) {
checkNT1(Name);
}
nLLVMAddNamedMetadataOperand(M, memAddress(Name), Val);
}
/** Add an operand to named metadata. */
public static void LLVMAddNamedMetadataOperand(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name, @NativeType("LLVMValueRef") long Val) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
nLLVMAddNamedMetadataOperand(M, NameEncoded, Val);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetDebugLocDirectory ] ---
/** Unsafe version of: {@link #LLVMGetDebugLocDirectory GetDebugLocDirectory} */
public static long nLLVMGetDebugLocDirectory(long Val, long Length) {
long __functionAddress = Functions.GetDebugLocDirectory;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePPP(Val, Length, __functionAddress);
}
/**
* Return the directory of the debug location for this value, which must be an {@code llvm::Instruction}, {@code llvm::GlobalVariable}, or
* {@code llvm::Function}.
*/
@Nullable
@NativeType("char const *")
public static String LLVMGetDebugLocDirectory(@NativeType("LLVMValueRef") long Val) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
IntBuffer Length = stack.callocInt(1);
long __result = nLLVMGetDebugLocDirectory(Val, memAddress(Length));
return memUTF8Safe(__result, Length.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetDebugLocFilename ] ---
/** Unsafe version of: {@link #LLVMGetDebugLocFilename GetDebugLocFilename} */
public static long nLLVMGetDebugLocFilename(long Val, long Length) {
long __functionAddress = Functions.GetDebugLocFilename;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePPP(Val, Length, __functionAddress);
}
/**
* Return the filename of the debug location for this value, which must be an {@code llvm::Instruction}, {@code llvm::GlobalVariable}, or
* {@code llvm::Function}.
*/
@Nullable
@NativeType("char const *")
public static String LLVMGetDebugLocFilename(@NativeType("LLVMValueRef") long Val) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
IntBuffer Length = stack.callocInt(1);
long __result = nLLVMGetDebugLocFilename(Val, memAddress(Length));
return memUTF8Safe(__result, Length.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetDebugLocLine ] ---
/**
* Return the line number of the debug location for this value, which must be an {@code llvm::Instruction}, {@code llvm::GlobalVariable}, or
* {@code llvm::Function}.
*/
@NativeType("unsigned int")
public static int LLVMGetDebugLocLine(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.GetDebugLocLine;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePI(Val, __functionAddress);
}
// --- [ LLVMGetDebugLocColumn ] ---
/** Return the column number of the debug location for this value, which must be an {@code llvm::Instruction}. */
@NativeType("unsigned int")
public static int LLVMGetDebugLocColumn(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.GetDebugLocColumn;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePI(Val, __functionAddress);
}
// --- [ LLVMAddFunction ] ---
/** Unsafe version of: {@link #LLVMAddFunction AddFunction} */
public static long nLLVMAddFunction(long M, long Name, long FunctionTy) {
long __functionAddress = Functions.AddFunction;
if (CHECKS) {
check(M);
check(FunctionTy);
}
return invokePPPP(M, Name, FunctionTy, __functionAddress);
}
/** Add a function to a module under a specified name. */
@NativeType("LLVMValueRef")
public static long LLVMAddFunction(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name, @NativeType("LLVMTypeRef") long FunctionTy) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMAddFunction(M, memAddress(Name), FunctionTy);
}
/** Add a function to a module under a specified name. */
@NativeType("LLVMValueRef")
public static long LLVMAddFunction(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name, @NativeType("LLVMTypeRef") long FunctionTy) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMAddFunction(M, NameEncoded, FunctionTy);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetNamedFunction ] ---
/** Unsafe version of: {@link #LLVMGetNamedFunction GetNamedFunction} */
public static long nLLVMGetNamedFunction(long M, long Name) {
long __functionAddress = Functions.GetNamedFunction;
if (CHECKS) {
check(M);
}
return invokePPP(M, Name, __functionAddress);
}
/**
* Obtain a {@code Function} value from a {@code Module} by its name.
*
* The returned value corresponds to a {@code llvm::Function} value.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNamedFunction(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMGetNamedFunction(M, memAddress(Name));
}
/**
* Obtain a {@code Function} value from a {@code Module} by its name.
*
* The returned value corresponds to a {@code llvm::Function} value.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNamedFunction(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetNamedFunction(M, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetFirstFunction ] ---
/** Obtain an iterator to the first {@code Function} in a {@code Module}. */
@NativeType("LLVMValueRef")
public static long LLVMGetFirstFunction(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetFirstFunction;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetLastFunction ] ---
/** Obtain an iterator to the last {@code Function} in a {@code Module}. */
@NativeType("LLVMValueRef")
public static long LLVMGetLastFunction(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetLastFunction;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetNextFunction ] ---
/**
* Advance a {@code Function} iterator to the next {@code Function}.
*
* Returns {@code NULL} if the iterator was already at the end and there are no more functions.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNextFunction(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetNextFunction;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMGetPreviousFunction ] ---
/**
* Decrement a {@code Function} iterator to the previous {@code Function}.
*
* Returns {@code NULL} if the iterator was already at the beginning and there are no previous functions.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetPreviousFunction(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetPreviousFunction;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMSetModuleInlineAsm ] ---
/** Unsafe version of: {@link #LLVMSetModuleInlineAsm SetModuleInlineAsm} */
public static void nLLVMSetModuleInlineAsm(long M, long Asm) {
long __functionAddress = Functions.SetModuleInlineAsm;
if (CHECKS) {
check(__functionAddress);
check(M);
}
invokePPV(M, Asm, __functionAddress);
}
/** Deprecated: Use {@link #LLVMSetModuleInlineAsm2 SetModuleInlineAsm2} instead. */
public static void LLVMSetModuleInlineAsm(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Asm) {
if (CHECKS) {
checkNT1(Asm);
}
nLLVMSetModuleInlineAsm(M, memAddress(Asm));
}
/** Deprecated: Use {@link #LLVMSetModuleInlineAsm2 SetModuleInlineAsm2} instead. */
public static void LLVMSetModuleInlineAsm(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Asm) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Asm, true);
long AsmEncoded = stack.getPointerAddress();
nLLVMSetModuleInlineAsm(M, AsmEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetTypeKind ] ---
/** Obtain the enumerated type of a {@code Type} instance. */
@NativeType("LLVMTypeKind")
public static int LLVMGetTypeKind(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.GetTypeKind;
if (CHECKS) {
check(Ty);
}
return invokePI(Ty, __functionAddress);
}
// --- [ LLVMTypeIsSized ] ---
/**
* Whether the type has a known size.
*
* Things that don't have a size are abstract types, labels, and void.
*/
@NativeType("LLVMBool")
public static boolean LLVMTypeIsSized(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.TypeIsSized;
if (CHECKS) {
check(Ty);
}
return invokePI(Ty, __functionAddress) != 0;
}
// --- [ LLVMGetTypeContext ] ---
/** Obtain the context to which this type instance is associated. */
@NativeType("LLVMContextRef")
public static long LLVMGetTypeContext(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.GetTypeContext;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMDumpType ] ---
/** Dump a representation of a type to {@code stderr}. */
public static void LLVMDumpType(@NativeType("LLVMTypeRef") long Val) {
long __functionAddress = Functions.DumpType;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
invokePV(Val, __functionAddress);
}
// --- [ LLVMPrintTypeToString ] ---
/** Unsafe version of: {@link #LLVMPrintTypeToString PrintTypeToString} */
public static long nLLVMPrintTypeToString(long Val) {
long __functionAddress = Functions.PrintTypeToString;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
/** Return a string representation of the type. Use {@link #LLVMDisposeMessage DisposeMessage} to free the string. */
@NativeType("char *")
public static String LLVMPrintTypeToString(@NativeType("LLVMTypeRef") long Val) {
long __result = nLLVMPrintTypeToString(Val);
return memUTF8(__result);
}
// --- [ LLVMInt1TypeInContext ] ---
/** Obtain an integer type from a context with specified bit width. */
@NativeType("LLVMTypeRef")
public static long LLVMInt1TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.Int1TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMInt8TypeInContext ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt8TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.Int8TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMInt16TypeInContext ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt16TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.Int16TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMInt32TypeInContext ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt32TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.Int32TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMInt64TypeInContext ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt64TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.Int64TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMInt128TypeInContext ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt128TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.Int128TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMIntTypeInContext ] ---
@NativeType("LLVMTypeRef")
public static long LLVMIntTypeInContext(@NativeType("LLVMContextRef") long C, @NativeType("unsigned int") int NumBits) {
long __functionAddress = Functions.IntTypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, NumBits, __functionAddress);
}
// --- [ LLVMInt1Type ] ---
/** Obtain an integer type from the global context with a specified bit width. */
@NativeType("LLVMTypeRef")
public static long LLVMInt1Type() {
long __functionAddress = Functions.Int1Type;
return invokeP(__functionAddress);
}
// --- [ LLVMInt8Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt8Type() {
long __functionAddress = Functions.Int8Type;
return invokeP(__functionAddress);
}
// --- [ LLVMInt16Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt16Type() {
long __functionAddress = Functions.Int16Type;
return invokeP(__functionAddress);
}
// --- [ LLVMInt32Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt32Type() {
long __functionAddress = Functions.Int32Type;
return invokeP(__functionAddress);
}
// --- [ LLVMInt64Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt64Type() {
long __functionAddress = Functions.Int64Type;
return invokeP(__functionAddress);
}
// --- [ LLVMInt128Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMInt128Type() {
long __functionAddress = Functions.Int128Type;
return invokeP(__functionAddress);
}
// --- [ LLVMIntType ] ---
@NativeType("LLVMTypeRef")
public static long LLVMIntType(@NativeType("unsigned int") int NumBits) {
long __functionAddress = Functions.IntType;
return invokeP(NumBits, __functionAddress);
}
// --- [ LLVMGetIntTypeWidth ] ---
@NativeType("unsigned int")
public static int LLVMGetIntTypeWidth(@NativeType("LLVMTypeRef") long IntegerTy) {
long __functionAddress = Functions.GetIntTypeWidth;
if (CHECKS) {
check(IntegerTy);
}
return invokePI(IntegerTy, __functionAddress);
}
// --- [ LLVMHalfTypeInContext ] ---
/** Obtain a 16-bit floating point type from a context. */
@NativeType("LLVMTypeRef")
public static long LLVMHalfTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.HalfTypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMFloatTypeInContext ] ---
/** Obtain a 32-bit floating point type from a context. */
@NativeType("LLVMTypeRef")
public static long LLVMFloatTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.FloatTypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMDoubleTypeInContext ] ---
/** Obtain a 64-bit floating point type from a context. */
@NativeType("LLVMTypeRef")
public static long LLVMDoubleTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.DoubleTypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMX86FP80TypeInContext ] ---
/** Obtain a 80-bit floating point type (X87) from a context. */
@NativeType("LLVMTypeRef")
public static long LLVMX86FP80TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.X86FP80TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMFP128TypeInContext ] ---
/** Obtain a 128-bit floating point type (112-bit mantissa) from a context. */
@NativeType("LLVMTypeRef")
public static long LLVMFP128TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.FP128TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMPPCFP128TypeInContext ] ---
/** Obtain a 128-bit floating point type (two 64-bits) from a context. */
@NativeType("LLVMTypeRef")
public static long LLVMPPCFP128TypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.PPCFP128TypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMHalfType ] ---
/**
* Obtain a floating point type from the global context.
*
* These map to the functions in this group of the same name.
*/
@NativeType("LLVMTypeRef")
public static long LLVMHalfType() {
long __functionAddress = Functions.HalfType;
return invokeP(__functionAddress);
}
// --- [ LLVMFloatType ] ---
@NativeType("LLVMTypeRef")
public static long LLVMFloatType() {
long __functionAddress = Functions.FloatType;
return invokeP(__functionAddress);
}
// --- [ LLVMDoubleType ] ---
@NativeType("LLVMTypeRef")
public static long LLVMDoubleType() {
long __functionAddress = Functions.DoubleType;
return invokeP(__functionAddress);
}
// --- [ LLVMX86FP80Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMX86FP80Type() {
long __functionAddress = Functions.X86FP80Type;
return invokeP(__functionAddress);
}
// --- [ LLVMFP128Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMFP128Type() {
long __functionAddress = Functions.FP128Type;
return invokeP(__functionAddress);
}
// --- [ LLVMPPCFP128Type ] ---
@NativeType("LLVMTypeRef")
public static long LLVMPPCFP128Type() {
long __functionAddress = Functions.PPCFP128Type;
return invokeP(__functionAddress);
}
// --- [ LLVMFunctionType ] ---
/** Unsafe version of: {@link #LLVMFunctionType FunctionType} */
public static long nLLVMFunctionType(long ReturnType, long ParamTypes, int ParamCount, int IsVarArg) {
long __functionAddress = Functions.FunctionType;
if (CHECKS) {
check(ReturnType);
}
return invokePPP(ReturnType, ParamTypes, ParamCount, IsVarArg, __functionAddress);
}
/**
* Obtain a function type consisting of a specified signature.
*
* The function is defined as a tuple of a return {@code Type}, a list of parameter types, and whether the function is variadic.
*/
@NativeType("LLVMTypeRef")
public static long LLVMFunctionType(@NativeType("LLVMTypeRef") long ReturnType, @NativeType("LLVMTypeRef *") PointerBuffer ParamTypes, @NativeType("LLVMBool") boolean IsVarArg) {
return nLLVMFunctionType(ReturnType, memAddress(ParamTypes), ParamTypes.remaining(), IsVarArg ? 1 : 0);
}
// --- [ LLVMIsFunctionVarArg ] ---
/** Returns whether a function type is variadic. */
@NativeType("LLVMBool")
public static boolean LLVMIsFunctionVarArg(@NativeType("LLVMTypeRef") long FunctionTy) {
long __functionAddress = Functions.IsFunctionVarArg;
if (CHECKS) {
check(FunctionTy);
}
return invokePI(FunctionTy, __functionAddress) != 0;
}
// --- [ LLVMGetReturnType ] ---
/** Obtain the Type this function Type returns. */
@NativeType("LLVMTypeRef")
public static long LLVMGetReturnType(@NativeType("LLVMTypeRef") long FunctionTy) {
long __functionAddress = Functions.GetReturnType;
if (CHECKS) {
check(FunctionTy);
}
return invokePP(FunctionTy, __functionAddress);
}
// --- [ LLVMCountParamTypes ] ---
/** Obtain the number of parameters this function accepts. */
@NativeType("unsigned int")
public static int LLVMCountParamTypes(@NativeType("LLVMTypeRef") long FunctionTy) {
long __functionAddress = Functions.CountParamTypes;
if (CHECKS) {
check(FunctionTy);
}
return invokePI(FunctionTy, __functionAddress);
}
// --- [ LLVMGetParamTypes ] ---
/** Unsafe version of: {@link #LLVMGetParamTypes GetParamTypes} */
public static void nLLVMGetParamTypes(long FunctionTy, long Dest) {
long __functionAddress = Functions.GetParamTypes;
if (CHECKS) {
check(FunctionTy);
}
invokePPV(FunctionTy, Dest, __functionAddress);
}
/**
* Obtain the types of a function's parameters.
*
* The {@code Dest} parameter should point to a pre-allocated array of {@code LLVMTypeRef} at least {@link #LLVMCountParamTypes CountParamTypes} large. On return, the first
* {@code LLVMCountParamTypes()} entries in the array will be populated with {@code LLVMTypeRef} instances.
*
* @param FunctionTy the function type to operate on
* @param Dest memory address of an array to be filled with result
*/
public static void LLVMGetParamTypes(@NativeType("LLVMTypeRef") long FunctionTy, @NativeType("LLVMTypeRef *") PointerBuffer Dest) {
if (CHECKS) {
if (DEBUG) {
check(Dest, LLVMCountParamTypes(FunctionTy));
}
}
nLLVMGetParamTypes(FunctionTy, memAddress(Dest));
}
// --- [ LLVMStructTypeInContext ] ---
/** Unsafe version of: {@link #LLVMStructTypeInContext StructTypeInContext} */
public static long nLLVMStructTypeInContext(long C, long ElementTypes, int ElementCount, int Packed) {
long __functionAddress = Functions.StructTypeInContext;
if (CHECKS) {
check(C);
}
return invokePPP(C, ElementTypes, ElementCount, Packed, __functionAddress);
}
/**
* Create a new structure type in a context.
*
* A structure is specified by a list of inner elements/types and whether these can be packed together.
*/
@NativeType("LLVMTypeRef")
public static long LLVMStructTypeInContext(@NativeType("LLVMContextRef") long C, @NativeType("LLVMTypeRef *") PointerBuffer ElementTypes, @NativeType("LLVMBool") boolean Packed) {
return nLLVMStructTypeInContext(C, memAddress(ElementTypes), ElementTypes.remaining(), Packed ? 1 : 0);
}
// --- [ LLVMStructType ] ---
/** Unsafe version of: {@link #LLVMStructType StructType} */
public static long nLLVMStructType(long ElementTypes, int ElementCount, int Packed) {
long __functionAddress = Functions.StructType;
return invokePP(ElementTypes, ElementCount, Packed, __functionAddress);
}
/** Create a new structure type in the global context. */
@NativeType("LLVMTypeRef")
public static long LLVMStructType(@NativeType("LLVMTypeRef *") PointerBuffer ElementTypes, @NativeType("LLVMBool") boolean Packed) {
return nLLVMStructType(memAddress(ElementTypes), ElementTypes.remaining(), Packed ? 1 : 0);
}
// --- [ LLVMStructCreateNamed ] ---
/** Unsafe version of: {@link #LLVMStructCreateNamed StructCreateNamed} */
public static long nLLVMStructCreateNamed(long C, long Name) {
long __functionAddress = Functions.StructCreateNamed;
if (CHECKS) {
check(C);
}
return invokePPP(C, Name, __functionAddress);
}
/** Create an empty structure in a context having a specified name. */
@NativeType("LLVMTypeRef")
public static long LLVMStructCreateNamed(@NativeType("LLVMContextRef") long C, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMStructCreateNamed(C, memAddress(Name));
}
/** Create an empty structure in a context having a specified name. */
@NativeType("LLVMTypeRef")
public static long LLVMStructCreateNamed(@NativeType("LLVMContextRef") long C, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMStructCreateNamed(C, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetStructName ] ---
/** Unsafe version of: {@link #LLVMGetStructName GetStructName} */
public static long nLLVMGetStructName(long Ty) {
long __functionAddress = Functions.GetStructName;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
/** Obtain the name of a structure. */
@Nullable
@NativeType("char const *")
public static String LLVMGetStructName(@NativeType("LLVMTypeRef") long Ty) {
long __result = nLLVMGetStructName(Ty);
return memUTF8Safe(__result);
}
// --- [ LLVMStructSetBody ] ---
/** Unsafe version of: {@link #LLVMStructSetBody StructSetBody} */
public static void nLLVMStructSetBody(long StructTy, long ElementTypes, int ElementCount, int Packed) {
long __functionAddress = Functions.StructSetBody;
if (CHECKS) {
check(StructTy);
}
invokePPV(StructTy, ElementTypes, ElementCount, Packed, __functionAddress);
}
/** Set the contents of a structure type. */
public static void LLVMStructSetBody(@NativeType("LLVMTypeRef") long StructTy, @NativeType("LLVMTypeRef *") PointerBuffer ElementTypes, @NativeType("LLVMBool") boolean Packed) {
nLLVMStructSetBody(StructTy, memAddress(ElementTypes), ElementTypes.remaining(), Packed ? 1 : 0);
}
// --- [ LLVMCountStructElementTypes ] ---
/** Get the number of elements defined inside the structure. */
@NativeType("unsigned int")
public static int LLVMCountStructElementTypes(@NativeType("LLVMTypeRef") long StructTy) {
long __functionAddress = Functions.CountStructElementTypes;
if (CHECKS) {
check(StructTy);
}
return invokePI(StructTy, __functionAddress);
}
// --- [ LLVMGetStructElementTypes ] ---
/** Unsafe version of: {@link #LLVMGetStructElementTypes GetStructElementTypes} */
public static void nLLVMGetStructElementTypes(long StructTy, long Dest) {
long __functionAddress = Functions.GetStructElementTypes;
if (CHECKS) {
check(StructTy);
}
invokePPV(StructTy, Dest, __functionAddress);
}
/**
* Get the elements within a structure.
*
* The function is passed the address of a pre-allocated array of {@code LLVMTypeRef} at least {@link #LLVMCountStructElementTypes CountStructElementTypes} long. After invocation, this
* array will be populated with the structure's elements. The objects in the destination array will have a lifetime of the structure type itself, which is
* the lifetime of the context it is contained in.
*/
public static void LLVMGetStructElementTypes(@NativeType("LLVMTypeRef") long StructTy, @NativeType("LLVMTypeRef *") PointerBuffer Dest) {
if (CHECKS) {
if (DEBUG) {
check(Dest, LLVMCountStructElementTypes(StructTy));
}
}
nLLVMGetStructElementTypes(StructTy, memAddress(Dest));
}
// --- [ LLVMStructGetTypeAtIndex ] ---
/** Get the type of the element at a given index in the structure. */
@NativeType("LLVMTypeRef")
public static long LLVMStructGetTypeAtIndex(@NativeType("LLVMTypeRef") long StructTy, @NativeType("unsigned int") int i) {
long __functionAddress = Functions.StructGetTypeAtIndex;
if (CHECKS) {
check(StructTy);
}
return invokePP(StructTy, i, __functionAddress);
}
// --- [ LLVMIsPackedStruct ] ---
/** Determine whether a structure is packed. */
@NativeType("LLVMBool")
public static boolean LLVMIsPackedStruct(@NativeType("LLVMTypeRef") long StructTy) {
long __functionAddress = Functions.IsPackedStruct;
if (CHECKS) {
check(StructTy);
}
return invokePI(StructTy, __functionAddress) != 0;
}
// --- [ LLVMIsOpaqueStruct ] ---
/** Determine whether a structure is opaque. */
@NativeType("LLVMBool")
public static boolean LLVMIsOpaqueStruct(@NativeType("LLVMTypeRef") long StructTy) {
long __functionAddress = Functions.IsOpaqueStruct;
if (CHECKS) {
check(StructTy);
}
return invokePI(StructTy, __functionAddress) != 0;
}
// --- [ LLVMIsLiteralStruct ] ---
/** Determine whether a structure is literal. */
@NativeType("LLVMBool")
public static boolean LLVMIsLiteralStruct(@NativeType("LLVMTypeRef") long StructTy) {
long __functionAddress = Functions.IsLiteralStruct;
if (CHECKS) {
check(__functionAddress);
check(StructTy);
}
return invokePI(StructTy, __functionAddress) != 0;
}
// --- [ LLVMGetElementType ] ---
/**
* Obtain the type of elements within a sequential type.
*
* This works on array, vector, and pointer types.
*/
@NativeType("LLVMTypeRef")
public static long LLVMGetElementType(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.GetElementType;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMGetSubtypes ] ---
/** Unsafe version of: {@link #LLVMGetSubtypes GetSubtypes} */
public static void nLLVMGetSubtypes(long Tp, long Arr) {
long __functionAddress = Functions.GetSubtypes;
if (CHECKS) {
check(Tp);
}
invokePPV(Tp, Arr, __functionAddress);
}
/** Returns type's subtypes */
public static void LLVMGetSubtypes(@NativeType("LLVMTypeRef") long Tp, @NativeType("LLVMTypeRef *") PointerBuffer Arr) {
nLLVMGetSubtypes(Tp, memAddress(Arr));
}
// --- [ LLVMGetNumContainedTypes ] ---
/** Return the number of types in the derived type. */
@NativeType("unsigned int")
public static int LLVMGetNumContainedTypes(@NativeType("LLVMTypeRef") long Tp) {
long __functionAddress = Functions.GetNumContainedTypes;
if (CHECKS) {
check(Tp);
}
return invokePI(Tp, __functionAddress);
}
// --- [ LLVMArrayType ] ---
/**
* Create a fixed size array type that refers to a specific type.
*
* The created type will exist in the context that its element type exists in.
*/
@NativeType("LLVMTypeRef")
public static long LLVMArrayType(@NativeType("LLVMTypeRef") long ElementType, @NativeType("unsigned int") int ElementCount) {
long __functionAddress = Functions.ArrayType;
if (CHECKS) {
check(ElementType);
}
return invokePP(ElementType, ElementCount, __functionAddress);
}
// --- [ LLVMGetArrayLength ] ---
/**
* Obtain the length of an array type.
*
* This only works on types that represent arrays.
*/
@NativeType("unsigned int")
public static int LLVMGetArrayLength(@NativeType("LLVMTypeRef") long ArrayTy) {
long __functionAddress = Functions.GetArrayLength;
if (CHECKS) {
check(ArrayTy);
}
return invokePI(ArrayTy, __functionAddress);
}
// --- [ LLVMPointerType ] ---
/**
* Create a pointer type that points to a defined type.
*
* The created type will exist in the context that its pointee type exists in.
*/
@NativeType("LLVMTypeRef")
public static long LLVMPointerType(@NativeType("LLVMTypeRef") long ElementType, @NativeType("unsigned int") int AddressSpace) {
long __functionAddress = Functions.PointerType;
if (CHECKS) {
check(ElementType);
}
return invokePP(ElementType, AddressSpace, __functionAddress);
}
// --- [ LLVMGetPointerAddressSpace ] ---
/**
* Obtain the address space of a pointer type.
*
* This only works on types that represent pointers.
*/
@NativeType("unsigned int")
public static int LLVMGetPointerAddressSpace(@NativeType("LLVMTypeRef") long PointerTy) {
long __functionAddress = Functions.GetPointerAddressSpace;
if (CHECKS) {
check(PointerTy);
}
return invokePI(PointerTy, __functionAddress);
}
// --- [ LLVMVectorType ] ---
/**
* Create a vector type that contains a defined type and has a specific number of elements.
*
* The created type will exist in the context thats its element type exists in.
*/
@NativeType("LLVMTypeRef")
public static long LLVMVectorType(@NativeType("LLVMTypeRef") long ElementType, @NativeType("unsigned int") int ElementCount) {
long __functionAddress = Functions.VectorType;
if (CHECKS) {
check(ElementType);
}
return invokePP(ElementType, ElementCount, __functionAddress);
}
// --- [ LLVMGetVectorSize ] ---
/**
* Obtain the number of elements in a vector type.
*
* This only works on types that represent vectors.
*/
@NativeType("unsigned int")
public static int LLVMGetVectorSize(@NativeType("LLVMTypeRef") long VectorTy) {
long __functionAddress = Functions.GetVectorSize;
if (CHECKS) {
check(VectorTy);
}
return invokePI(VectorTy, __functionAddress);
}
// --- [ LLVMVoidTypeInContext ] ---
/** Create a void type in a context. */
@NativeType("LLVMTypeRef")
public static long LLVMVoidTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.VoidTypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMLabelTypeInContext ] ---
/** Create a label type in a context. */
@NativeType("LLVMTypeRef")
public static long LLVMLabelTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.LabelTypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMX86MMXTypeInContext ] ---
/** Create a X86 MMX type in a context. */
@NativeType("LLVMTypeRef")
public static long LLVMX86MMXTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.X86MMXTypeInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMTokenTypeInContext ] ---
/** Create a token type in a context. */
@NativeType("LLVMTypeRef")
public static long LLVMTokenTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.TokenTypeInContext;
if (CHECKS) {
check(__functionAddress);
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMMetadataTypeInContext ] ---
/** Create a metadata type in a context. */
@NativeType("LLVMTypeRef")
public static long LLVMMetadataTypeInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.MetadataTypeInContext;
if (CHECKS) {
check(__functionAddress);
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMVoidType ] ---
/** These are similar to the above functions except they operate on the global context. */
@NativeType("LLVMTypeRef")
public static long LLVMVoidType() {
long __functionAddress = Functions.VoidType;
return invokeP(__functionAddress);
}
// --- [ LLVMLabelType ] ---
@NativeType("LLVMTypeRef")
public static long LLVMLabelType() {
long __functionAddress = Functions.LabelType;
return invokeP(__functionAddress);
}
// --- [ LLVMX86MMXType ] ---
@NativeType("LLVMTypeRef")
public static long LLVMX86MMXType() {
long __functionAddress = Functions.X86MMXType;
return invokeP(__functionAddress);
}
// --- [ LLVMTypeOf ] ---
/** Obtain the type of a value. */
@NativeType("LLVMTypeRef")
public static long LLVMTypeOf(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.TypeOf;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMGetValueKind ] ---
/** Obtain the enumerated type of a Value instance. */
@NativeType("LLVMValueKind")
public static int LLVMGetValueKind(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.GetValueKind;
if (CHECKS) {
check(Val);
}
return invokePI(Val, __functionAddress);
}
// --- [ LLVMGetValueName2 ] ---
/** Unsafe version of: {@link #LLVMGetValueName2 GetValueName2} */
public static long nLLVMGetValueName2(long Val, long Length) {
long __functionAddress = Functions.GetValueName2;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePPP(Val, Length, __functionAddress);
}
/** Obtain the string name of a value. */
@NativeType("char const *")
public static String LLVMGetValueName2(@NativeType("LLVMValueRef") long Val) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer Length = stack.callocPointer(1);
long __result = nLLVMGetValueName2(Val, memAddress(Length));
return memUTF8(__result, (int)Length.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMSetValueName2 ] ---
/** Unsafe version of: {@link #LLVMSetValueName2 SetValueName2} */
public static void nLLVMSetValueName2(long Val, long Name, long NameLen) {
long __functionAddress = Functions.SetValueName2;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
invokePPPV(Val, Name, NameLen, __functionAddress);
}
/** Set the string name of a value. */
public static void LLVMSetValueName2(@NativeType("LLVMValueRef") long Val, @NativeType("char const *") ByteBuffer Name) {
nLLVMSetValueName2(Val, memAddress(Name), Name.remaining());
}
/** Set the string name of a value. */
public static void LLVMSetValueName2(@NativeType("LLVMValueRef") long Val, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
nLLVMSetValueName2(Val, NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMDumpValue ] ---
/** Dump a representation of a value to stderr. */
public static void LLVMDumpValue(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.DumpValue;
if (CHECKS) {
check(Val);
}
invokePV(Val, __functionAddress);
}
// --- [ LLVMPrintValueToString ] ---
/** Unsafe version of: {@link #LLVMPrintValueToString PrintValueToString} */
public static long nLLVMPrintValueToString(long Val) {
long __functionAddress = Functions.PrintValueToString;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
/** Return a string representation of the value. Use {@link #LLVMDisposeMessage DisposeMessage} to free the string. */
@NativeType("char *")
public static String LLVMPrintValueToString(@NativeType("LLVMValueRef") long Val) {
long __result = nLLVMPrintValueToString(Val);
return memUTF8(__result);
}
// --- [ LLVMReplaceAllUsesWith ] ---
/** Replace all uses of a value with another one. */
public static void LLVMReplaceAllUsesWith(@NativeType("LLVMValueRef") long OldVal, @NativeType("LLVMValueRef") long NewVal) {
long __functionAddress = Functions.ReplaceAllUsesWith;
if (CHECKS) {
check(OldVal);
check(NewVal);
}
invokePPV(OldVal, NewVal, __functionAddress);
}
// --- [ LLVMIsConstant ] ---
/** Determine whether the specified value instance is constant. */
@NativeType("LLVMBool")
public static boolean LLVMIsConstant(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsConstant;
if (CHECKS) {
check(Val);
}
return invokePI(Val, __functionAddress) != 0;
}
// --- [ LLVMIsUndef ] ---
/** Determine whether a value instance is undefined. */
@NativeType("LLVMBool")
public static boolean LLVMIsUndef(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsUndef;
if (CHECKS) {
check(Val);
}
return invokePI(Val, __functionAddress) != 0;
}
// --- [ LLVMIsAArgument ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAArgument(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAArgument;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsABasicBlock ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsABasicBlock(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsABasicBlock;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAInlineAsm ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAInlineAsm(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAInlineAsm;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAUser ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAUser(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAUser;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstant ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstant(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstant;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsABlockAddress ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsABlockAddress(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsABlockAddress;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantAggregateZero ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantAggregateZero(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantAggregateZero;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantArray ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantArray(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantArray;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantDataSequential ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantDataSequential(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantDataSequential;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantDataArray ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantDataArray(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantDataArray;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantDataVector ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantDataVector(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantDataVector;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantExpr ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantExpr(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantExpr;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantFP ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantFP(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantFP;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantInt ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantInt(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantInt;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantPointerNull ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantPointerNull(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantPointerNull;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantStruct ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantStruct(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantStruct;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantTokenNone ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantTokenNone(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantTokenNone;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAConstantVector ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAConstantVector(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAConstantVector;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAGlobalValue ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAGlobalValue(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAGlobalValue;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAGlobalAlias ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAGlobalAlias(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAGlobalAlias;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAGlobalIFunc ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAGlobalIFunc(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAGlobalIFunc;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAGlobalObject ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAGlobalObject(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAGlobalObject;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAFunction ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAFunction(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAFunction;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAGlobalVariable ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAGlobalVariable(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAGlobalVariable;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAUndefValue ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAUndefValue(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAUndefValue;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAInstruction ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAInstruction(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAInstruction;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsABinaryOperator ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsABinaryOperator(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsABinaryOperator;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsACallInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsACallInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsACallInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAIntrinsicInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAIntrinsicInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAIntrinsicInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsADbgInfoIntrinsic ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsADbgInfoIntrinsic(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsADbgInfoIntrinsic;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsADbgVariableIntrinsic ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsADbgVariableIntrinsic(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsADbgVariableIntrinsic;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsADbgDeclareInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsADbgDeclareInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsADbgDeclareInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsADbgLabelInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsADbgLabelInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsADbgLabelInst;
if (CHECKS) {
check(__functionAddress);
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAMemIntrinsic ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAMemIntrinsic(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAMemIntrinsic;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAMemCpyInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAMemCpyInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAMemCpyInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAMemMoveInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAMemMoveInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAMemMoveInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAMemSetInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAMemSetInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAMemSetInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsACmpInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsACmpInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsACmpInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAFCmpInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAFCmpInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAFCmpInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAICmpInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAICmpInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAICmpInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAExtractElementInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAExtractElementInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAExtractElementInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAGetElementPtrInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAGetElementPtrInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAGetElementPtrInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAInsertElementInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAInsertElementInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAInsertElementInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAInsertValueInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAInsertValueInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAInsertValueInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsALandingPadInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsALandingPadInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsALandingPadInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAPHINode ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAPHINode(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAPHINode;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsASelectInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsASelectInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsASelectInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAShuffleVectorInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAShuffleVectorInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAShuffleVectorInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAStoreInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAStoreInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAStoreInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsABranchInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsABranchInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsABranchInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAIndirectBrInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAIndirectBrInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAIndirectBrInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAInvokeInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAInvokeInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAInvokeInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAReturnInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAReturnInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAReturnInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsASwitchInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsASwitchInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsASwitchInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAUnreachableInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAUnreachableInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAUnreachableInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAResumeInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAResumeInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAResumeInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsACleanupReturnInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsACleanupReturnInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsACleanupReturnInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsACatchReturnInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsACatchReturnInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsACatchReturnInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAFuncletPadInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAFuncletPadInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAFuncletPadInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsACatchPadInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsACatchPadInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsACatchPadInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsACleanupPadInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsACleanupPadInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsACleanupPadInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAUnaryInstruction ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAUnaryInstruction(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAUnaryInstruction;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAAllocaInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAAllocaInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAAllocaInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsACastInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsACastInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsACastInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAAddrSpaceCastInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAAddrSpaceCastInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAAddrSpaceCastInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsABitCastInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsABitCastInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsABitCastInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAFPExtInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAFPExtInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAFPExtInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAFPToSIInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAFPToSIInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAFPToSIInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAFPToUIInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAFPToUIInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAFPToUIInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAFPTruncInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAFPTruncInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAFPTruncInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAIntToPtrInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAIntToPtrInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAIntToPtrInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAPtrToIntInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAPtrToIntInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAPtrToIntInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsASExtInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsASExtInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsASExtInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsASIToFPInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsASIToFPInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsASIToFPInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsATruncInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsATruncInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsATruncInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAUIToFPInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAUIToFPInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAUIToFPInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAZExtInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAZExtInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAZExtInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAExtractValueInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAExtractValueInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAExtractValueInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsALoadInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsALoadInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsALoadInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAVAArgInst ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAVAArgInst(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAVAArgInst;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAMDNode ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAMDNode(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAMDNode;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMIsAMDString ] ---
@NativeType("LLVMValueRef")
public static long LLVMIsAMDString(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsAMDString;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMGetValueName ] ---
/** Unsafe version of: {@link #LLVMGetValueName GetValueName} */
public static long nLLVMGetValueName(long Val) {
long __functionAddress = Functions.GetValueName;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
/** Deprecated: Use {@link #LLVMGetValueName2 GetValueName2} instead. */
@NativeType("char const *")
public static String LLVMGetValueName(@NativeType("LLVMValueRef") long Val) {
long __result = nLLVMGetValueName(Val);
return memUTF8(__result);
}
// --- [ LLVMSetValueName ] ---
/** Unsafe version of: {@link #LLVMSetValueName SetValueName} */
public static void nLLVMSetValueName(long Val, long Name) {
long __functionAddress = Functions.SetValueName;
if (CHECKS) {
check(Val);
}
invokePPV(Val, Name, __functionAddress);
}
/** Deprecated: Use {@link #LLVMSetValueName2 SetValueName2} instead. */
public static void LLVMSetValueName(@NativeType("LLVMValueRef") long Val, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
nLLVMSetValueName(Val, memAddress(Name));
}
/** Deprecated: Use {@link #LLVMSetValueName2 SetValueName2} instead. */
public static void LLVMSetValueName(@NativeType("LLVMValueRef") long Val, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
nLLVMSetValueName(Val, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetFirstUse ] ---
/**
* Obtain the first use of a value.
*
* Uses are obtained in an iterator fashion. First, call this function to obtain a reference to the first use. Then, call {@link #LLVMGetNextUse GetNextUse} on that instance
* and all subsequently obtained instances until {@link #LLVMGetNextUse GetNextUse} returns {@code NULL}.
*/
@NativeType("LLVMUseRef")
public static long LLVMGetFirstUse(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.GetFirstUse;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMGetNextUse ] ---
/**
* Obtain the next use of a value.
*
* This effectively advances the iterator. It returns {@code NULL} if you are on the final use and no more are available.
*/
@NativeType("LLVMUseRef")
public static long LLVMGetNextUse(@NativeType("LLVMUseRef") long U) {
long __functionAddress = Functions.GetNextUse;
if (CHECKS) {
check(U);
}
return invokePP(U, __functionAddress);
}
// --- [ LLVMGetUser ] ---
/**
* Obtain the user value for a user.
*
* The returned value corresponds to a {@code llvm::User} type.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetUser(@NativeType("LLVMUseRef") long U) {
long __functionAddress = Functions.GetUser;
if (CHECKS) {
check(U);
}
return invokePP(U, __functionAddress);
}
// --- [ LLVMGetUsedValue ] ---
/** Obtain the value this use corresponds to. */
@NativeType("LLVMValueRef")
public static long LLVMGetUsedValue(@NativeType("LLVMUseRef") long U) {
long __functionAddress = Functions.GetUsedValue;
if (CHECKS) {
check(U);
}
return invokePP(U, __functionAddress);
}
// --- [ LLVMGetOperand ] ---
/** Obtain an operand at a specific index in a {@code llvm::User} value. */
@NativeType("LLVMValueRef")
public static long LLVMGetOperand(@NativeType("LLVMValueRef") long Val, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.GetOperand;
if (CHECKS) {
check(Val);
}
return invokePP(Val, Index, __functionAddress);
}
// --- [ LLVMGetOperandUse ] ---
/** Obtain the use of an operand at a specific index in a {@code llvm::User} value. */
@NativeType("LLVMUseRef")
public static long LLVMGetOperandUse(@NativeType("LLVMValueRef") long Val, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.GetOperandUse;
if (CHECKS) {
check(Val);
}
return invokePP(Val, Index, __functionAddress);
}
// --- [ LLVMSetOperand ] ---
/** Set an operand at a specific index in a {@code llvm::User} value. */
public static void LLVMSetOperand(@NativeType("LLVMValueRef") long User, @NativeType("unsigned int") int Index, @NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.SetOperand;
if (CHECKS) {
check(User);
check(Val);
}
invokePPV(User, Index, Val, __functionAddress);
}
// --- [ LLVMGetNumOperands ] ---
/** Obtain the number of operands in a {@code llvm::User} value. */
public static int LLVMGetNumOperands(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.GetNumOperands;
if (CHECKS) {
check(Val);
}
return invokePI(Val, __functionAddress);
}
// --- [ LLVMConstNull ] ---
/** Obtain a constant value referring to the null instance of a type. */
@NativeType("LLVMValueRef")
public static long LLVMConstNull(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.ConstNull;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMConstAllOnes ] ---
/**
* Obtain a constant value referring to the instance of a type consisting of all ones.
*
* This is only valid for integer types.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstAllOnes(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.ConstAllOnes;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMGetUndef ] ---
/** Obtain a constant value referring to an undefined value of a type. */
@NativeType("LLVMValueRef")
public static long LLVMGetUndef(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.GetUndef;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMIsNull ] ---
/** Determine whether a value instance is null. */
@NativeType("LLVMBool")
public static boolean LLVMIsNull(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.IsNull;
if (CHECKS) {
check(Val);
}
return invokePI(Val, __functionAddress) != 0;
}
// --- [ LLVMConstPointerNull ] ---
/** Obtain a constant that is a constant pointer pointing to NULL for a specified type. */
@NativeType("LLVMValueRef")
public static long LLVMConstPointerNull(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.ConstPointerNull;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMConstInt ] ---
/**
* Obtain a constant value for an integer type.
*
* The returned value corresponds to a {@code llvm::ConstantInt}.
*
* @param IntTy integer type to obtain value of
* @param N the value the returned instance should refer to
* @param SignExtend whether to sign extend the produced value
*/
@NativeType("LLVMValueRef")
public static long LLVMConstInt(@NativeType("LLVMTypeRef") long IntTy, @NativeType("unsigned long long") long N, @NativeType("LLVMBool") boolean SignExtend) {
long __functionAddress = Functions.ConstInt;
if (CHECKS) {
check(IntTy);
}
return invokePJP(IntTy, N, SignExtend ? 1 : 0, __functionAddress);
}
// --- [ LLVMConstIntOfArbitraryPrecision ] ---
/** Unsafe version of: {@link #LLVMConstIntOfArbitraryPrecision ConstIntOfArbitraryPrecision} */
public static long nLLVMConstIntOfArbitraryPrecision(long IntTy, int NumWords, long Words) {
long __functionAddress = Functions.ConstIntOfArbitraryPrecision;
if (CHECKS) {
check(IntTy);
}
return invokePPP(IntTy, NumWords, Words, __functionAddress);
}
/** Obtain a constant value for an integer of arbitrary precision. */
@NativeType("LLVMValueRef")
public static long LLVMConstIntOfArbitraryPrecision(@NativeType("LLVMTypeRef") long IntTy, @NativeType("uint64_t const *") LongBuffer Words) {
return nLLVMConstIntOfArbitraryPrecision(IntTy, Words.remaining(), memAddress(Words));
}
// --- [ LLVMConstIntOfString ] ---
/** Unsafe version of: {@link #LLVMConstIntOfString ConstIntOfString} */
public static long nLLVMConstIntOfString(long IntTy, long Text, byte Radix) {
long __functionAddress = Functions.ConstIntOfString;
if (CHECKS) {
check(IntTy);
}
return invokePPP(IntTy, Text, Radix, __functionAddress);
}
/**
* Obtain a constant value for an integer parsed from a string.
*
* A similar API, {@link #LLVMConstIntOfStringAndSize ConstIntOfStringAndSize} is also available. If the string's length is available, it is preferred to call that function instead.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstIntOfString(@NativeType("LLVMTypeRef") long IntTy, @NativeType("char const *") ByteBuffer Text, @NativeType("uint8_t") byte Radix) {
if (CHECKS) {
checkNT1(Text);
}
return nLLVMConstIntOfString(IntTy, memAddress(Text), Radix);
}
/**
* Obtain a constant value for an integer parsed from a string.
*
* A similar API, {@link #LLVMConstIntOfStringAndSize ConstIntOfStringAndSize} is also available. If the string's length is available, it is preferred to call that function instead.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstIntOfString(@NativeType("LLVMTypeRef") long IntTy, @NativeType("char const *") CharSequence Text, @NativeType("uint8_t") byte Radix) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Text, true);
long TextEncoded = stack.getPointerAddress();
return nLLVMConstIntOfString(IntTy, TextEncoded, Radix);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMConstIntOfStringAndSize ] ---
/** Unsafe version of: {@link #LLVMConstIntOfStringAndSize ConstIntOfStringAndSize} */
public static long nLLVMConstIntOfStringAndSize(long IntTy, long Text, int SLen, byte Radix) {
long __functionAddress = Functions.ConstIntOfStringAndSize;
if (CHECKS) {
check(IntTy);
}
return invokePPP(IntTy, Text, SLen, Radix, __functionAddress);
}
/** Obtain a constant value for an integer parsed from a string with specified length. */
@NativeType("LLVMValueRef")
public static long LLVMConstIntOfStringAndSize(@NativeType("LLVMTypeRef") long IntTy, @NativeType("char const *") ByteBuffer Text, @NativeType("uint8_t") byte Radix) {
return nLLVMConstIntOfStringAndSize(IntTy, memAddress(Text), Text.remaining(), Radix);
}
/** Obtain a constant value for an integer parsed from a string with specified length. */
@NativeType("LLVMValueRef")
public static long LLVMConstIntOfStringAndSize(@NativeType("LLVMTypeRef") long IntTy, @NativeType("char const *") CharSequence Text, @NativeType("uint8_t") byte Radix) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int TextEncodedLength = stack.nUTF8(Text, false);
long TextEncoded = stack.getPointerAddress();
return nLLVMConstIntOfStringAndSize(IntTy, TextEncoded, TextEncodedLength, Radix);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMConstReal ] ---
/** Obtain a constant value referring to a double floating point value. */
@NativeType("LLVMValueRef")
public static long LLVMConstReal(@NativeType("LLVMTypeRef") long RealTy, double N) {
long __functionAddress = Functions.ConstReal;
if (CHECKS) {
check(RealTy);
}
return invokePP(RealTy, N, __functionAddress);
}
// --- [ LLVMConstRealOfString ] ---
/** Unsafe version of: {@link #LLVMConstRealOfString ConstRealOfString} */
public static long nLLVMConstRealOfString(long RealTy, long Text) {
long __functionAddress = Functions.ConstRealOfString;
if (CHECKS) {
check(RealTy);
}
return invokePPP(RealTy, Text, __functionAddress);
}
/**
* Obtain a constant for a floating point value parsed from a string.
*
* A similar API, {@link #LLVMConstRealOfStringAndSize ConstRealOfStringAndSize} is also available. It should be used if the input string's length is known.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstRealOfString(@NativeType("LLVMTypeRef") long RealTy, @NativeType("char const *") ByteBuffer Text) {
if (CHECKS) {
checkNT1(Text);
}
return nLLVMConstRealOfString(RealTy, memAddress(Text));
}
/**
* Obtain a constant for a floating point value parsed from a string.
*
* A similar API, {@link #LLVMConstRealOfStringAndSize ConstRealOfStringAndSize} is also available. It should be used if the input string's length is known.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstRealOfString(@NativeType("LLVMTypeRef") long RealTy, @NativeType("char const *") CharSequence Text) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Text, true);
long TextEncoded = stack.getPointerAddress();
return nLLVMConstRealOfString(RealTy, TextEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMConstRealOfStringAndSize ] ---
/** Unsafe version of: {@link #LLVMConstRealOfStringAndSize ConstRealOfStringAndSize} */
public static long nLLVMConstRealOfStringAndSize(long RealTy, long Text, int SLen) {
long __functionAddress = Functions.ConstRealOfStringAndSize;
if (CHECKS) {
check(RealTy);
}
return invokePPP(RealTy, Text, SLen, __functionAddress);
}
/** Obtain a constant for a floating point value parsed from a string. */
@NativeType("LLVMValueRef")
public static long LLVMConstRealOfStringAndSize(@NativeType("LLVMTypeRef") long RealTy, @NativeType("char const *") ByteBuffer Text) {
return nLLVMConstRealOfStringAndSize(RealTy, memAddress(Text), Text.remaining());
}
/** Obtain a constant for a floating point value parsed from a string. */
@NativeType("LLVMValueRef")
public static long LLVMConstRealOfStringAndSize(@NativeType("LLVMTypeRef") long RealTy, @NativeType("char const *") CharSequence Text) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int TextEncodedLength = stack.nUTF8(Text, false);
long TextEncoded = stack.getPointerAddress();
return nLLVMConstRealOfStringAndSize(RealTy, TextEncoded, TextEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMConstIntGetZExtValue ] ---
/** Obtain the zero extended value for an integer constant value. */
@NativeType("unsigned long long")
public static long LLVMConstIntGetZExtValue(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.ConstIntGetZExtValue;
if (CHECKS) {
check(ConstantVal);
}
return invokePJ(ConstantVal, __functionAddress);
}
// --- [ LLVMConstIntGetSExtValue ] ---
/** Obtain the sign extended value for an integer constant value. */
@NativeType("long long")
public static long LLVMConstIntGetSExtValue(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.ConstIntGetSExtValue;
if (CHECKS) {
check(ConstantVal);
}
return invokePJ(ConstantVal, __functionAddress);
}
// --- [ LLVMConstRealGetDouble ] ---
/** Unsafe version of: {@link #LLVMConstRealGetDouble ConstRealGetDouble} */
public static double nLLVMConstRealGetDouble(long ConstantVal, long losesInfo) {
long __functionAddress = Functions.ConstRealGetDouble;
if (CHECKS) {
check(ConstantVal);
}
return invokePPD(ConstantVal, losesInfo, __functionAddress);
}
/** Obtain the double value for an floating point constant value. {@code losesInfo} indicates if some precision was lost in the conversion. */
public static double LLVMConstRealGetDouble(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMBool *") IntBuffer losesInfo) {
if (CHECKS) {
check(losesInfo, 1);
}
return nLLVMConstRealGetDouble(ConstantVal, memAddress(losesInfo));
}
// --- [ LLVMConstStringInContext ] ---
/** Unsafe version of: {@link #LLVMConstStringInContext ConstStringInContext} */
public static long nLLVMConstStringInContext(long C, long Str, int Length, int DontNullTerminate) {
long __functionAddress = Functions.ConstStringInContext;
if (CHECKS) {
check(C);
}
return invokePPP(C, Str, Length, DontNullTerminate, __functionAddress);
}
/** Create a {@code ConstantDataSequential} and initialize it with a string. */
@NativeType("LLVMValueRef")
public static long LLVMConstStringInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") ByteBuffer Str, @NativeType("LLVMBool") boolean DontNullTerminate) {
return nLLVMConstStringInContext(C, memAddress(Str), Str.remaining(), DontNullTerminate ? 1 : 0);
}
/** Create a {@code ConstantDataSequential} and initialize it with a string. */
@NativeType("LLVMValueRef")
public static long LLVMConstStringInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") CharSequence Str, @NativeType("LLVMBool") boolean DontNullTerminate) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int StrEncodedLength = stack.nUTF8(Str, false);
long StrEncoded = stack.getPointerAddress();
return nLLVMConstStringInContext(C, StrEncoded, StrEncodedLength, DontNullTerminate ? 1 : 0);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMConstString ] ---
/** Unsafe version of: {@link #LLVMConstString ConstString} */
public static long nLLVMConstString(long Str, int Length, int DontNullTerminate) {
long __functionAddress = Functions.ConstString;
return invokePP(Str, Length, DontNullTerminate, __functionAddress);
}
/**
* Create a {@code ConstantDataSequential} with string content in the global context.
*
* This is the same as {@link #LLVMConstStringInContext ConstStringInContext} except it operates on the global context.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstString(@NativeType("char const *") ByteBuffer Str, @NativeType("LLVMBool") boolean DontNullTerminate) {
return nLLVMConstString(memAddress(Str), Str.remaining(), DontNullTerminate ? 1 : 0);
}
/**
* Create a {@code ConstantDataSequential} with string content in the global context.
*
* This is the same as {@link #LLVMConstStringInContext ConstStringInContext} except it operates on the global context.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstString(@NativeType("char const *") CharSequence Str, @NativeType("LLVMBool") boolean DontNullTerminate) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int StrEncodedLength = stack.nUTF8(Str, false);
long StrEncoded = stack.getPointerAddress();
return nLLVMConstString(StrEncoded, StrEncodedLength, DontNullTerminate ? 1 : 0);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMIsConstantString ] ---
/** Returns true if the specified constant is an array of {@code i8}. */
@NativeType("LLVMBool")
public static boolean LLVMIsConstantString(@NativeType("LLVMValueRef") long c) {
long __functionAddress = Functions.IsConstantString;
if (CHECKS) {
check(c);
}
return invokePI(c, __functionAddress) != 0;
}
// --- [ LLVMGetAsString ] ---
/** Unsafe version of: {@link #LLVMGetAsString GetAsString} */
public static long nLLVMGetAsString(long c, long Length) {
long __functionAddress = Functions.GetAsString;
if (CHECKS) {
check(c);
}
return invokePPP(c, Length, __functionAddress);
}
/** Get the given constant data sequential as a string. */
@NativeType("char const *")
public static String LLVMGetAsString(@NativeType("LLVMValueRef") long c) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer Length = stack.callocPointer(1);
long __result = nLLVMGetAsString(c, memAddress(Length));
return memUTF8(__result, (int)Length.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMConstStructInContext ] ---
/** Unsafe version of: {@link #LLVMConstStructInContext ConstStructInContext} */
public static long nLLVMConstStructInContext(long C, long ConstantVals, int Count, int Packed) {
long __functionAddress = Functions.ConstStructInContext;
if (CHECKS) {
check(C);
}
return invokePPP(C, ConstantVals, Count, Packed, __functionAddress);
}
/** Create an anonymous {@code ConstantStruct} with the specified values. */
@NativeType("LLVMValueRef")
public static long LLVMConstStructInContext(@NativeType("LLVMContextRef") long C, @NativeType("LLVMValueRef *") PointerBuffer ConstantVals, @NativeType("LLVMBool") boolean Packed) {
return nLLVMConstStructInContext(C, memAddress(ConstantVals), ConstantVals.remaining(), Packed ? 1 : 0);
}
// --- [ LLVMConstStruct ] ---
/** Unsafe version of: {@link #LLVMConstStruct ConstStruct} */
public static long nLLVMConstStruct(long ConstantVals, int Count, int Packed) {
long __functionAddress = Functions.ConstStruct;
return invokePP(ConstantVals, Count, Packed, __functionAddress);
}
/**
* Create a {@code ConstantStruct} in the global Context.
*
* This is the same as {@link #LLVMConstStructInContext ConstStructInContext} except it operates on the global Context.
*/
@NativeType("LLVMValueRef")
public static long LLVMConstStruct(@NativeType("LLVMValueRef *") PointerBuffer ConstantVals, @NativeType("LLVMBool") boolean Packed) {
return nLLVMConstStruct(memAddress(ConstantVals), ConstantVals.remaining(), Packed ? 1 : 0);
}
// --- [ LLVMConstArray ] ---
/** Unsafe version of: {@link #LLVMConstArray ConstArray} */
public static long nLLVMConstArray(long ElementTy, long ConstantVals, int Length) {
long __functionAddress = Functions.ConstArray;
if (CHECKS) {
check(ElementTy);
}
return invokePPP(ElementTy, ConstantVals, Length, __functionAddress);
}
/** Create a {@code ConstantArray} from values. */
@NativeType("LLVMValueRef")
public static long LLVMConstArray(@NativeType("LLVMTypeRef") long ElementTy, @NativeType("LLVMValueRef *") PointerBuffer ConstantVals) {
return nLLVMConstArray(ElementTy, memAddress(ConstantVals), ConstantVals.remaining());
}
// --- [ LLVMConstNamedStruct ] ---
/** Unsafe version of: {@link #LLVMConstNamedStruct ConstNamedStruct} */
public static long nLLVMConstNamedStruct(long StructTy, long ConstantVals, int Count) {
long __functionAddress = Functions.ConstNamedStruct;
if (CHECKS) {
check(StructTy);
}
return invokePPP(StructTy, ConstantVals, Count, __functionAddress);
}
/** Create a non-anonymous {@code ConstantStruct} from values. */
@NativeType("LLVMValueRef")
public static long LLVMConstNamedStruct(@NativeType("LLVMTypeRef") long StructTy, @NativeType("LLVMValueRef *") PointerBuffer ConstantVals) {
return nLLVMConstNamedStruct(StructTy, memAddress(ConstantVals), ConstantVals.remaining());
}
// --- [ LLVMGetElementAsConstant ] ---
/** Get an element at specified index as a constant. */
@NativeType("LLVMValueRef")
public static long LLVMGetElementAsConstant(@NativeType("LLVMValueRef") long C, @NativeType("unsigned int") int idx) {
long __functionAddress = Functions.GetElementAsConstant;
if (CHECKS) {
check(C);
}
return invokePP(C, idx, __functionAddress);
}
// --- [ LLVMConstVector ] ---
/** Unsafe version of: {@link #LLVMConstVector ConstVector} */
public static long nLLVMConstVector(long ScalarConstantVals, int Size) {
long __functionAddress = Functions.ConstVector;
return invokePP(ScalarConstantVals, Size, __functionAddress);
}
/** Create a {@code ConstantVector} from values. */
@NativeType("LLVMValueRef")
public static long LLVMConstVector(@NativeType("LLVMValueRef *") PointerBuffer ScalarConstantVals) {
return nLLVMConstVector(memAddress(ScalarConstantVals), ScalarConstantVals.remaining());
}
// --- [ LLVMGetConstOpcode ] ---
@NativeType("LLVMOpcode")
public static int LLVMGetConstOpcode(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.GetConstOpcode;
if (CHECKS) {
check(ConstantVal);
}
return invokePI(ConstantVal, __functionAddress);
}
// --- [ LLVMAlignOf ] ---
@NativeType("LLVMValueRef")
public static long LLVMAlignOf(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.AlignOf;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMSizeOf ] ---
@NativeType("LLVMValueRef")
public static long LLVMSizeOf(@NativeType("LLVMTypeRef") long Ty) {
long __functionAddress = Functions.SizeOf;
if (CHECKS) {
check(Ty);
}
return invokePP(Ty, __functionAddress);
}
// --- [ LLVMConstNeg ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNeg(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.ConstNeg;
if (CHECKS) {
check(ConstantVal);
}
return invokePP(ConstantVal, __functionAddress);
}
// --- [ LLVMConstNSWNeg ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNSWNeg(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.ConstNSWNeg;
if (CHECKS) {
check(ConstantVal);
}
return invokePP(ConstantVal, __functionAddress);
}
// --- [ LLVMConstNUWNeg ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNUWNeg(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.ConstNUWNeg;
if (CHECKS) {
check(ConstantVal);
}
return invokePP(ConstantVal, __functionAddress);
}
// --- [ LLVMConstFNeg ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFNeg(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.ConstFNeg;
if (CHECKS) {
check(ConstantVal);
}
return invokePP(ConstantVal, __functionAddress);
}
// --- [ LLVMConstNot ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNot(@NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.ConstNot;
if (CHECKS) {
check(ConstantVal);
}
return invokePP(ConstantVal, __functionAddress);
}
// --- [ LLVMConstAdd ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstAdd(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstAdd;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstNSWAdd ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNSWAdd(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstNSWAdd;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstNUWAdd ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNUWAdd(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstNUWAdd;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstFAdd ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFAdd(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstFAdd;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstSub ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstSub(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstSub;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstNSWSub ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNSWSub(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstNSWSub;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstNUWSub ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNUWSub(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstNUWSub;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstFSub ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFSub(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstFSub;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstMul ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstMul(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstMul;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstNSWMul ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNSWMul(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstNSWMul;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstNUWMul ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstNUWMul(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstNUWMul;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstFMul ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFMul(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstFMul;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstUDiv ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstUDiv(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstUDiv;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstExactUDiv ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstExactUDiv(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstExactUDiv;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstSDiv ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstSDiv(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstSDiv;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstExactSDiv ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstExactSDiv(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstExactSDiv;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstFDiv ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFDiv(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstFDiv;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstURem ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstURem(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstURem;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstSRem ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstSRem(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstSRem;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstFRem ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFRem(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstFRem;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstAnd ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstAnd(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstAnd;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstOr ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstOr(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstOr;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstXor ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstXor(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstXor;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstICmp ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstICmp(@NativeType("LLVMIntPredicate") int Predicate, @NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstICmp;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(Predicate, LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstFCmp ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFCmp(@NativeType("LLVMRealPredicate") int Predicate, @NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstFCmp;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(Predicate, LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstShl ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstShl(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstShl;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstLShr ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstLShr(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstLShr;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstAShr ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstAShr(@NativeType("LLVMValueRef") long LHSConstant, @NativeType("LLVMValueRef") long RHSConstant) {
long __functionAddress = Functions.ConstAShr;
if (CHECKS) {
check(LHSConstant);
check(RHSConstant);
}
return invokePPP(LHSConstant, RHSConstant, __functionAddress);
}
// --- [ LLVMConstGEP ] ---
public static long nLLVMConstGEP(long ConstantVal, long ConstantIndices, int NumIndices) {
long __functionAddress = Functions.ConstGEP;
if (CHECKS) {
check(ConstantVal);
}
return invokePPP(ConstantVal, ConstantIndices, NumIndices, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMConstGEP(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMValueRef *") PointerBuffer ConstantIndices) {
return nLLVMConstGEP(ConstantVal, memAddress(ConstantIndices), ConstantIndices.remaining());
}
// --- [ LLVMConstGEP2 ] ---
/** Unsafe version of: {@link #LLVMConstGEP2 ConstGEP2} */
public static long nLLVMConstGEP2(long Ty, long ConstantVal, long ConstantIndices, int NumIndices) {
long __functionAddress = Functions.ConstGEP2;
if (CHECKS) {
check(__functionAddress);
check(Ty);
check(ConstantVal);
}
return invokePPPP(Ty, ConstantVal, ConstantIndices, NumIndices, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMConstGEP2(@NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMValueRef *") PointerBuffer ConstantIndices) {
return nLLVMConstGEP2(Ty, ConstantVal, memAddress(ConstantIndices), ConstantIndices.remaining());
}
// --- [ LLVMConstInBoundsGEP ] ---
public static long nLLVMConstInBoundsGEP(long ConstantVal, long ConstantIndices, int NumIndices) {
long __functionAddress = Functions.ConstInBoundsGEP;
if (CHECKS) {
check(ConstantVal);
}
return invokePPP(ConstantVal, ConstantIndices, NumIndices, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMConstInBoundsGEP(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMValueRef *") PointerBuffer ConstantIndices) {
return nLLVMConstInBoundsGEP(ConstantVal, memAddress(ConstantIndices), ConstantIndices.remaining());
}
// --- [ LLVMConstInBoundsGEP2 ] ---
/** Unsafe version of: {@link #LLVMConstInBoundsGEP2 ConstInBoundsGEP2} */
public static long nLLVMConstInBoundsGEP2(long Ty, long ConstantVal, long ConstantIndices, int NumIndices) {
long __functionAddress = Functions.ConstInBoundsGEP2;
if (CHECKS) {
check(__functionAddress);
check(Ty);
check(ConstantVal);
}
return invokePPPP(Ty, ConstantVal, ConstantIndices, NumIndices, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMConstInBoundsGEP2(@NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMValueRef *") PointerBuffer ConstantIndices) {
return nLLVMConstInBoundsGEP2(Ty, ConstantVal, memAddress(ConstantIndices), ConstantIndices.remaining());
}
// --- [ LLVMConstTrunc ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstTrunc(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstTrunc;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstSExt ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstSExt(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstSExt;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstZExt ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstZExt(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstZExt;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstFPTrunc ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFPTrunc(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstFPTrunc;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstFPExt ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFPExt(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstFPExt;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstUIToFP ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstUIToFP(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstUIToFP;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstSIToFP ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstSIToFP(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstSIToFP;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstFPToUI ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFPToUI(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstFPToUI;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstFPToSI ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFPToSI(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstFPToSI;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstPtrToInt ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstPtrToInt(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstPtrToInt;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstIntToPtr ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstIntToPtr(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstIntToPtr;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstBitCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstBitCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstBitCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstAddrSpaceCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstAddrSpaceCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstAddrSpaceCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstZExtOrBitCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstZExtOrBitCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstZExtOrBitCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstSExtOrBitCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstSExtOrBitCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstSExtOrBitCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstTruncOrBitCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstTruncOrBitCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstTruncOrBitCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstPointerCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstPointerCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstPointerCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstIntCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstIntCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType, @NativeType("LLVMBool") boolean isSigned) {
long __functionAddress = Functions.ConstIntCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, isSigned ? 1 : 0, __functionAddress);
}
// --- [ LLVMConstFPCast ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstFPCast(@NativeType("LLVMValueRef") long ConstantVal, @NativeType("LLVMTypeRef") long ToType) {
long __functionAddress = Functions.ConstFPCast;
if (CHECKS) {
check(ConstantVal);
check(ToType);
}
return invokePPP(ConstantVal, ToType, __functionAddress);
}
// --- [ LLVMConstSelect ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstSelect(@NativeType("LLVMValueRef") long ConstantCondition, @NativeType("LLVMValueRef") long ConstantIfTrue, @NativeType("LLVMValueRef") long ConstantIfFalse) {
long __functionAddress = Functions.ConstSelect;
if (CHECKS) {
check(ConstantCondition);
check(ConstantIfTrue);
check(ConstantIfFalse);
}
return invokePPPP(ConstantCondition, ConstantIfTrue, ConstantIfFalse, __functionAddress);
}
// --- [ LLVMConstExtractElement ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstExtractElement(@NativeType("LLVMValueRef") long VectorConstant, @NativeType("LLVMValueRef") long IndexConstant) {
long __functionAddress = Functions.ConstExtractElement;
if (CHECKS) {
check(VectorConstant);
check(IndexConstant);
}
return invokePPP(VectorConstant, IndexConstant, __functionAddress);
}
// --- [ LLVMConstInsertElement ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstInsertElement(@NativeType("LLVMValueRef") long VectorConstant, @NativeType("LLVMValueRef") long ElementValueConstant, @NativeType("LLVMValueRef") long IndexConstant) {
long __functionAddress = Functions.ConstInsertElement;
if (CHECKS) {
check(VectorConstant);
check(ElementValueConstant);
check(IndexConstant);
}
return invokePPPP(VectorConstant, ElementValueConstant, IndexConstant, __functionAddress);
}
// --- [ LLVMConstShuffleVector ] ---
@NativeType("LLVMValueRef")
public static long LLVMConstShuffleVector(@NativeType("LLVMValueRef") long VectorAConstant, @NativeType("LLVMValueRef") long VectorBConstant, @NativeType("LLVMValueRef") long MaskConstant) {
long __functionAddress = Functions.ConstShuffleVector;
if (CHECKS) {
check(VectorAConstant);
check(VectorBConstant);
check(MaskConstant);
}
return invokePPPP(VectorAConstant, VectorBConstant, MaskConstant, __functionAddress);
}
// --- [ LLVMConstExtractValue ] ---
public static long nLLVMConstExtractValue(long AggConstant, long IdxList, int NumIdx) {
long __functionAddress = Functions.ConstExtractValue;
if (CHECKS) {
check(AggConstant);
}
return invokePPP(AggConstant, IdxList, NumIdx, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMConstExtractValue(@NativeType("LLVMValueRef") long AggConstant, @NativeType("unsigned int *") IntBuffer IdxList) {
return nLLVMConstExtractValue(AggConstant, memAddress(IdxList), IdxList.remaining());
}
// --- [ LLVMConstInsertValue ] ---
public static long nLLVMConstInsertValue(long AggConstant, long ElementValueConstant, long IdxList, int NumIdx) {
long __functionAddress = Functions.ConstInsertValue;
if (CHECKS) {
check(AggConstant);
check(ElementValueConstant);
}
return invokePPPP(AggConstant, ElementValueConstant, IdxList, NumIdx, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMConstInsertValue(@NativeType("LLVMValueRef") long AggConstant, @NativeType("LLVMValueRef") long ElementValueConstant, @NativeType("unsigned int *") IntBuffer IdxList) {
return nLLVMConstInsertValue(AggConstant, ElementValueConstant, memAddress(IdxList), IdxList.remaining());
}
// --- [ LLVMBlockAddress ] ---
@NativeType("LLVMValueRef")
public static long LLVMBlockAddress(@NativeType("LLVMValueRef") long F, @NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.BlockAddress;
if (CHECKS) {
check(__functionAddress);
check(F);
check(BB);
}
return invokePPP(F, BB, __functionAddress);
}
// --- [ LLVMConstInlineAsm ] ---
/** Unsafe version of: {@link #LLVMConstInlineAsm ConstInlineAsm} */
public static long nLLVMConstInlineAsm(long Ty, long AsmString, long Constraints, int HasSideEffects, int IsAlignStack) {
long __functionAddress = Functions.ConstInlineAsm;
if (CHECKS) {
check(Ty);
}
return invokePPPP(Ty, AsmString, Constraints, HasSideEffects, IsAlignStack, __functionAddress);
}
/** Deprecated: Use {@link #LLVMGetInlineAsm GetInlineAsm} instead. */
@NativeType("LLVMValueRef")
public static long LLVMConstInlineAsm(@NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") ByteBuffer AsmString, @NativeType("char const *") ByteBuffer Constraints, @NativeType("LLVMBool") boolean HasSideEffects, @NativeType("LLVMBool") boolean IsAlignStack) {
if (CHECKS) {
checkNT1(AsmString);
checkNT1(Constraints);
}
return nLLVMConstInlineAsm(Ty, memAddress(AsmString), memAddress(Constraints), HasSideEffects ? 1 : 0, IsAlignStack ? 1 : 0);
}
/** Deprecated: Use {@link #LLVMGetInlineAsm GetInlineAsm} instead. */
@NativeType("LLVMValueRef")
public static long LLVMConstInlineAsm(@NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") CharSequence AsmString, @NativeType("char const *") CharSequence Constraints, @NativeType("LLVMBool") boolean HasSideEffects, @NativeType("LLVMBool") boolean IsAlignStack) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(AsmString, true);
long AsmStringEncoded = stack.getPointerAddress();
stack.nUTF8(Constraints, true);
long ConstraintsEncoded = stack.getPointerAddress();
return nLLVMConstInlineAsm(Ty, AsmStringEncoded, ConstraintsEncoded, HasSideEffects ? 1 : 0, IsAlignStack ? 1 : 0);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetGlobalParent ] ---
@NativeType("LLVMModuleRef")
public static long LLVMGetGlobalParent(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.GetGlobalParent;
if (CHECKS) {
check(Global);
}
return invokePP(Global, __functionAddress);
}
// --- [ LLVMIsDeclaration ] ---
@NativeType("LLVMBool")
public static boolean LLVMIsDeclaration(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.IsDeclaration;
if (CHECKS) {
check(Global);
}
return invokePI(Global, __functionAddress) != 0;
}
// --- [ LLVMGetLinkage ] ---
@NativeType("LLVMLinkage")
public static int LLVMGetLinkage(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.GetLinkage;
if (CHECKS) {
check(Global);
}
return invokePI(Global, __functionAddress);
}
// --- [ LLVMSetLinkage ] ---
public static void LLVMSetLinkage(@NativeType("LLVMValueRef") long Global, @NativeType("LLVMLinkage") int Linkage) {
long __functionAddress = Functions.SetLinkage;
if (CHECKS) {
check(Global);
}
invokePV(Global, Linkage, __functionAddress);
}
// --- [ LLVMGetSection ] ---
public static long nLLVMGetSection(long Global) {
long __functionAddress = Functions.GetSection;
if (CHECKS) {
check(Global);
}
return invokePP(Global, __functionAddress);
}
@NativeType("char const *")
public static String LLVMGetSection(@NativeType("LLVMValueRef") long Global) {
long __result = nLLVMGetSection(Global);
return memUTF8(__result);
}
// --- [ LLVMSetSection ] ---
public static void nLLVMSetSection(long Global, long Section) {
long __functionAddress = Functions.SetSection;
if (CHECKS) {
check(Global);
}
invokePPV(Global, Section, __functionAddress);
}
public static void LLVMSetSection(@NativeType("LLVMValueRef") long Global, @NativeType("char const *") ByteBuffer Section) {
if (CHECKS) {
checkNT1(Section);
}
nLLVMSetSection(Global, memAddress(Section));
}
public static void LLVMSetSection(@NativeType("LLVMValueRef") long Global, @NativeType("char const *") CharSequence Section) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Section, true);
long SectionEncoded = stack.getPointerAddress();
nLLVMSetSection(Global, SectionEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetVisibility ] ---
@NativeType("LLVMVisibility")
public static int LLVMGetVisibility(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.GetVisibility;
if (CHECKS) {
check(Global);
}
return invokePI(Global, __functionAddress);
}
// --- [ LLVMSetVisibility ] ---
public static void LLVMSetVisibility(@NativeType("LLVMValueRef") long Global, @NativeType("LLVMVisibility") int Viz) {
long __functionAddress = Functions.SetVisibility;
if (CHECKS) {
check(Global);
}
invokePV(Global, Viz, __functionAddress);
}
// --- [ LLVMGetDLLStorageClass ] ---
@NativeType("LLVMDLLStorageClass")
public static int LLVMGetDLLStorageClass(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.GetDLLStorageClass;
if (CHECKS) {
check(Global);
}
return invokePI(Global, __functionAddress);
}
// --- [ LLVMSetDLLStorageClass ] ---
public static void LLVMSetDLLStorageClass(@NativeType("LLVMValueRef") long Global, @NativeType("LLVMDLLStorageClass") int Class) {
long __functionAddress = Functions.SetDLLStorageClass;
if (CHECKS) {
check(Global);
}
invokePV(Global, Class, __functionAddress);
}
// --- [ LLVMGetUnnamedAddress ] ---
@NativeType("LLVMUnnamedAddr")
public static int LLVMGetUnnamedAddress(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.GetUnnamedAddress;
if (CHECKS) {
check(__functionAddress);
check(Global);
}
return invokePI(Global, __functionAddress);
}
// --- [ LLVMSetUnnamedAddress ] ---
public static void LLVMSetUnnamedAddress(@NativeType("LLVMValueRef") long Global, @NativeType("LLVMUnnamedAddr") int UnnamedAddr) {
long __functionAddress = Functions.SetUnnamedAddress;
if (CHECKS) {
check(__functionAddress);
check(Global);
}
invokePV(Global, UnnamedAddr, __functionAddress);
}
// --- [ 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. */
@NativeType("LLVMTypeRef")
public static long LLVMGlobalGetValueType(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.GlobalGetValueType;
if (CHECKS) {
check(__functionAddress);
check(Global);
}
return invokePP(Global, __functionAddress);
}
// --- [ LLVMHasUnnamedAddr ] ---
/** Deprecated: Use {@link #LLVMGetUnnamedAddress GetUnnamedAddress} instead. */
@NativeType("LLVMBool")
public static boolean LLVMHasUnnamedAddr(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.HasUnnamedAddr;
if (CHECKS) {
check(Global);
}
return invokePI(Global, __functionAddress) != 0;
}
// --- [ LLVMSetUnnamedAddr ] ---
/** Deprecated: Use {@link #LLVMSetUnnamedAddress SetUnnamedAddress} instead. */
public static void LLVMSetUnnamedAddr(@NativeType("LLVMValueRef") long Global, @NativeType("LLVMBool") boolean HasUnnamedAddr) {
long __functionAddress = Functions.SetUnnamedAddr;
if (CHECKS) {
check(Global);
}
invokePV(Global, HasUnnamedAddr ? 1 : 0, __functionAddress);
}
// --- [ LLVMGetAlignment ] ---
/** Obtain the preferred alignment of the value. */
@NativeType("unsigned int")
public static int LLVMGetAlignment(@NativeType("LLVMValueRef") long V) {
long __functionAddress = Functions.GetAlignment;
if (CHECKS) {
check(V);
}
return invokePI(V, __functionAddress);
}
// --- [ LLVMSetAlignment ] ---
/** Set the preferred alignment of the value. */
public static void LLVMSetAlignment(@NativeType("LLVMValueRef") long V, @NativeType("unsigned int") int Bytes) {
long __functionAddress = Functions.SetAlignment;
if (CHECKS) {
check(V);
}
invokePV(V, Bytes, __functionAddress);
}
// --- [ LLVMGlobalSetMetadata ] ---
/** Sets a metadata attachment, erasing the existing metadata attachment if it already exists for the given kind. */
public static void LLVMGlobalSetMetadata(@NativeType("LLVMValueRef") long Global, @NativeType("unsigned int") int Kind, @NativeType("LLVMMetadataRef") long MD) {
long __functionAddress = Functions.GlobalSetMetadata;
if (CHECKS) {
check(__functionAddress);
check(Global);
check(MD);
}
invokePPV(Global, Kind, MD, __functionAddress);
}
// --- [ LLVMGlobalEraseMetadata ] ---
/** Erases a metadata attachment of the given kind if it exists. */
public static void LLVMGlobalEraseMetadata(@NativeType("LLVMValueRef") long Global, @NativeType("unsigned int") int Kind) {
long __functionAddress = Functions.GlobalEraseMetadata;
if (CHECKS) {
check(__functionAddress);
check(Global);
}
invokePV(Global, Kind, __functionAddress);
}
// --- [ LLVMGlobalClearMetadata ] ---
/** Removes all metadata attachments from this value. */
public static void LLVMGlobalClearMetadata(@NativeType("LLVMValueRef") long Global) {
long __functionAddress = Functions.GlobalClearMetadata;
if (CHECKS) {
check(__functionAddress);
check(Global);
}
invokePV(Global, __functionAddress);
}
// --- [ LLVMGlobalCopyAllMetadata ] ---
/** Unsafe version of: {@link #LLVMGlobalCopyAllMetadata GlobalCopyAllMetadata} */
public static long nLLVMGlobalCopyAllMetadata(long Value, long NumEntries) {
long __functionAddress = Functions.GlobalCopyAllMetadata;
if (CHECKS) {
check(__functionAddress);
check(Value);
}
return invokePPP(Value, NumEntries, __functionAddress);
}
/**
* Retrieves an array of metadata entries representing the metadata attached to this value. The caller is responsible for freeing this array by calling
* {@link #LLVMDisposeValueMetadataEntries DisposeValueMetadataEntries}.
*/
@NativeType("LLVMValueMetadataEntry *")
public static long LLVMGlobalCopyAllMetadata(@NativeType("LLVMValueRef") long Value, @NativeType("size_t *") PointerBuffer NumEntries) {
if (CHECKS) {
check(NumEntries, 1);
}
return nLLVMGlobalCopyAllMetadata(Value, memAddress(NumEntries));
}
// --- [ LLVMDisposeValueMetadataEntries ] ---
/** Destroys value metadata entries. */
public static void LLVMDisposeValueMetadataEntries(@NativeType("LLVMValueMetadataEntry *") long Entries) {
long __functionAddress = Functions.DisposeValueMetadataEntries;
if (CHECKS) {
check(__functionAddress);
check(Entries);
}
invokePV(Entries, __functionAddress);
}
// --- [ LLVMValueMetadataEntriesGetKind ] ---
/** Returns the kind of a value metadata entry at a specific index. */
@NativeType("unsigned int")
public static int LLVMValueMetadataEntriesGetKind(@NativeType("LLVMValueMetadataEntry *") long Entries, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.ValueMetadataEntriesGetKind;
if (CHECKS) {
check(__functionAddress);
check(Entries);
}
return invokePI(Entries, Index, __functionAddress);
}
// --- [ LLVMValueMetadataEntriesGetMetadata ] ---
/** Returns the underlying metadata node of a value metadata entry at a specific index. */
@NativeType("LLVMMetadataRef")
public static long LLVMValueMetadataEntriesGetMetadata(@NativeType("LLVMValueMetadataEntry *") long Entries, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.ValueMetadataEntriesGetMetadata;
if (CHECKS) {
check(__functionAddress);
check(Entries);
}
return invokePP(Entries, Index, __functionAddress);
}
// --- [ LLVMAddGlobal ] ---
public static long nLLVMAddGlobal(long M, long Ty, long Name) {
long __functionAddress = Functions.AddGlobal;
if (CHECKS) {
check(M);
check(Ty);
}
return invokePPPP(M, Ty, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMAddGlobal(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMAddGlobal(M, Ty, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMAddGlobal(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMAddGlobal(M, Ty, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAddGlobalInAddressSpace ] ---
public static long nLLVMAddGlobalInAddressSpace(long M, long Ty, long Name, int AddressSpace) {
long __functionAddress = Functions.AddGlobalInAddressSpace;
if (CHECKS) {
check(M);
check(Ty);
}
return invokePPPP(M, Ty, Name, AddressSpace, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMAddGlobalInAddressSpace(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") ByteBuffer Name, @NativeType("unsigned int") int AddressSpace) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMAddGlobalInAddressSpace(M, Ty, memAddress(Name), AddressSpace);
}
@NativeType("LLVMValueRef")
public static long LLVMAddGlobalInAddressSpace(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") CharSequence Name, @NativeType("unsigned int") int AddressSpace) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMAddGlobalInAddressSpace(M, Ty, NameEncoded, AddressSpace);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetNamedGlobal ] ---
public static long nLLVMGetNamedGlobal(long M, long Name) {
long __functionAddress = Functions.GetNamedGlobal;
if (CHECKS) {
check(M);
}
return invokePPP(M, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMGetNamedGlobal(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMGetNamedGlobal(M, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMGetNamedGlobal(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetNamedGlobal(M, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetFirstGlobal ] ---
@NativeType("LLVMValueRef")
public static long LLVMGetFirstGlobal(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetFirstGlobal;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetLastGlobal ] ---
@NativeType("LLVMValueRef")
public static long LLVMGetLastGlobal(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetLastGlobal;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetNextGlobal ] ---
@NativeType("LLVMValueRef")
public static long LLVMGetNextGlobal(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.GetNextGlobal;
if (CHECKS) {
check(GlobalVar);
}
return invokePP(GlobalVar, __functionAddress);
}
// --- [ LLVMGetPreviousGlobal ] ---
@NativeType("LLVMValueRef")
public static long LLVMGetPreviousGlobal(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.GetPreviousGlobal;
if (CHECKS) {
check(GlobalVar);
}
return invokePP(GlobalVar, __functionAddress);
}
// --- [ LLVMDeleteGlobal ] ---
public static void LLVMDeleteGlobal(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.DeleteGlobal;
if (CHECKS) {
check(GlobalVar);
}
invokePV(GlobalVar, __functionAddress);
}
// --- [ LLVMGetInitializer ] ---
@NativeType("LLVMValueRef")
public static long LLVMGetInitializer(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.GetInitializer;
if (CHECKS) {
check(GlobalVar);
}
return invokePP(GlobalVar, __functionAddress);
}
// --- [ LLVMSetInitializer ] ---
public static void LLVMSetInitializer(@NativeType("LLVMValueRef") long GlobalVar, @NativeType("LLVMValueRef") long ConstantVal) {
long __functionAddress = Functions.SetInitializer;
if (CHECKS) {
check(GlobalVar);
check(ConstantVal);
}
invokePPV(GlobalVar, ConstantVal, __functionAddress);
}
// --- [ LLVMIsThreadLocal ] ---
@NativeType("LLVMBool")
public static boolean LLVMIsThreadLocal(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.IsThreadLocal;
if (CHECKS) {
check(GlobalVar);
}
return invokePI(GlobalVar, __functionAddress) != 0;
}
// --- [ LLVMSetThreadLocal ] ---
public static void LLVMSetThreadLocal(@NativeType("LLVMValueRef") long GlobalVar, @NativeType("LLVMBool") boolean IsThreadLocal) {
long __functionAddress = Functions.SetThreadLocal;
if (CHECKS) {
check(GlobalVar);
}
invokePV(GlobalVar, IsThreadLocal ? 1 : 0, __functionAddress);
}
// --- [ LLVMIsGlobalConstant ] ---
@NativeType("LLVMBool")
public static boolean LLVMIsGlobalConstant(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.IsGlobalConstant;
if (CHECKS) {
check(GlobalVar);
}
return invokePI(GlobalVar, __functionAddress) != 0;
}
// --- [ LLVMSetGlobalConstant ] ---
public static void LLVMSetGlobalConstant(@NativeType("LLVMValueRef") long GlobalVar, @NativeType("LLVMBool") boolean IsConstant) {
long __functionAddress = Functions.SetGlobalConstant;
if (CHECKS) {
check(GlobalVar);
}
invokePV(GlobalVar, IsConstant ? 1 : 0, __functionAddress);
}
// --- [ LLVMGetThreadLocalMode ] ---
@NativeType("LLVMThreadLocalMode")
public static int LLVMGetThreadLocalMode(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.GetThreadLocalMode;
if (CHECKS) {
check(GlobalVar);
}
return invokePI(GlobalVar, __functionAddress);
}
// --- [ LLVMSetThreadLocalMode ] ---
public static void LLVMSetThreadLocalMode(@NativeType("LLVMValueRef") long GlobalVar, @NativeType("LLVMThreadLocalMode") int Mode) {
long __functionAddress = Functions.SetThreadLocalMode;
if (CHECKS) {
check(GlobalVar);
}
invokePV(GlobalVar, Mode, __functionAddress);
}
// --- [ LLVMIsExternallyInitialized ] ---
@NativeType("LLVMBool")
public static boolean LLVMIsExternallyInitialized(@NativeType("LLVMValueRef") long GlobalVar) {
long __functionAddress = Functions.IsExternallyInitialized;
if (CHECKS) {
check(GlobalVar);
}
return invokePI(GlobalVar, __functionAddress) != 0;
}
// --- [ LLVMSetExternallyInitialized ] ---
public static void LLVMSetExternallyInitialized(@NativeType("LLVMValueRef") long GlobalVar, @NativeType("LLVMBool") boolean IsExtInit) {
long __functionAddress = Functions.SetExternallyInitialized;
if (CHECKS) {
check(GlobalVar);
}
invokePV(GlobalVar, IsExtInit ? 1 : 0, __functionAddress);
}
// --- [ LLVMAddAlias ] ---
public static long nLLVMAddAlias(long M, long Ty, long Aliasee, long Name) {
long __functionAddress = Functions.AddAlias;
if (CHECKS) {
check(M);
check(Ty);
check(Aliasee);
}
return invokePPPPP(M, Ty, Aliasee, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMAddAlias(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Aliasee, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMAddAlias(M, Ty, Aliasee, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMAddAlias(@NativeType("LLVMModuleRef") long M, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Aliasee, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMAddAlias(M, Ty, Aliasee, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetNamedGlobalAlias ] ---
/** Unsafe version of: {@link #LLVMGetNamedGlobalAlias GetNamedGlobalAlias} */
public static long nLLVMGetNamedGlobalAlias(long M, long Name, long NameLen) {
long __functionAddress = Functions.GetNamedGlobalAlias;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePPPP(M, Name, NameLen, __functionAddress);
}
/**
* Obtain a GlobalAlias value from a Module by its name.
*
* The returned value corresponds to a {@code llvm::GlobalAlias} value.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNamedGlobalAlias(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") ByteBuffer Name) {
return nLLVMGetNamedGlobalAlias(M, memAddress(Name), Name.remaining());
}
/**
* Obtain a GlobalAlias value from a Module by its name.
*
* The returned value corresponds to a {@code llvm::GlobalAlias} value.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNamedGlobalAlias(@NativeType("LLVMModuleRef") long M, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int NameEncodedLength = stack.nUTF8(Name, false);
long NameEncoded = stack.getPointerAddress();
return nLLVMGetNamedGlobalAlias(M, NameEncoded, NameEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetFirstGlobalAlias ] ---
/** Obtain an iterator to the first GlobalAlias in a Module. */
@NativeType("LLVMValueRef")
public static long LLVMGetFirstGlobalAlias(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetFirstGlobalAlias;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetLastGlobalAlias ] ---
/** Obtain an iterator to the last GlobalAlias in a Module. */
@NativeType("LLVMValueRef")
public static long LLVMGetLastGlobalAlias(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.GetLastGlobalAlias;
if (CHECKS) {
check(__functionAddress);
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMGetNextGlobalAlias ] ---
/**
* Advance a {@code GlobalAlias} iterator to the next {@code GlobalAlias}.
*
* Returns {@code NULL} if the iterator was already at the end and there are no more global aliases.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNextGlobalAlias(@NativeType("LLVMValueRef") long GA) {
long __functionAddress = Functions.GetNextGlobalAlias;
if (CHECKS) {
check(__functionAddress);
check(GA);
}
return invokePP(GA, __functionAddress);
}
// --- [ LLVMGetPreviousGlobalAlias ] ---
/**
* Decrement a {@code GlobalAlias} iterator to the previous {@code GlobalAlias}.
*
* Returns {@code NULL} if the iterator was already at the beginning and there are no previous global aliases.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetPreviousGlobalAlias(@NativeType("LLVMValueRef") long GA) {
long __functionAddress = Functions.GetPreviousGlobalAlias;
if (CHECKS) {
check(__functionAddress);
check(GA);
}
return invokePP(GA, __functionAddress);
}
// --- [ LLVMAliasGetAliasee ] ---
/** Retrieve the target value of an alias. */
@NativeType("LLVMValueRef")
public static long LLVMAliasGetAliasee(@NativeType("LLVMValueRef") long Alias) {
long __functionAddress = Functions.AliasGetAliasee;
if (CHECKS) {
check(__functionAddress);
check(Alias);
}
return invokePP(Alias, __functionAddress);
}
// --- [ LLVMAliasSetAliasee ] ---
/** Set the target value of an alias. */
public static void LLVMAliasSetAliasee(@NativeType("LLVMValueRef") long Alias, @NativeType("LLVMValueRef") long Aliasee) {
long __functionAddress = Functions.AliasSetAliasee;
if (CHECKS) {
check(__functionAddress);
check(Alias);
check(Aliasee);
}
invokePPV(Alias, Aliasee, __functionAddress);
}
// --- [ LLVMDeleteFunction ] ---
/** Remove a function from its containing module and deletes it. */
public static void LLVMDeleteFunction(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.DeleteFunction;
if (CHECKS) {
check(Fn);
}
invokePV(Fn, __functionAddress);
}
// --- [ LLVMHasPersonalityFn ] ---
/** Check whether the given function has a personality function. */
@NativeType("LLVMBool")
public static boolean LLVMHasPersonalityFn(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.HasPersonalityFn;
if (CHECKS) {
check(Fn);
}
return invokePI(Fn, __functionAddress) != 0;
}
// --- [ LLVMGetPersonalityFn ] ---
/** Obtain the personality function attached to the function. */
@NativeType("LLVMValueRef")
public static long LLVMGetPersonalityFn(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetPersonalityFn;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMSetPersonalityFn ] ---
/** Set the personality function attached to the function. */
public static void LLVMSetPersonalityFn(@NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef") long PersonalityFn) {
long __functionAddress = Functions.SetPersonalityFn;
if (CHECKS) {
check(Fn);
check(PersonalityFn);
}
invokePPV(Fn, PersonalityFn, __functionAddress);
}
// --- [ LLVMGetIntrinsicID ] ---
/** Obtain the ID number from a function instance. */
@NativeType("unsigned int")
public static int LLVMGetIntrinsicID(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetIntrinsicID;
if (CHECKS) {
check(Fn);
}
return invokePI(Fn, __functionAddress);
}
// --- [ LLVMGetIntrinsicDeclaration ] ---
/** Unsafe version of: {@link #LLVMGetIntrinsicDeclaration GetIntrinsicDeclaration} */
public static long nLLVMGetIntrinsicDeclaration(long Mod, int ID, long ParamTypes, long ParamCount) {
long __functionAddress = Functions.GetIntrinsicDeclaration;
if (CHECKS) {
check(__functionAddress);
check(Mod);
}
return invokePPPP(Mod, ID, ParamTypes, ParamCount, __functionAddress);
}
/**
* Create or insert the declaration of an intrinsic.
*
* For overloaded intrinsics, parameter types must be provided to uniquely identify an overload.
*
* @since 8.0
*/
@NativeType("LLVMValueRef")
public static long LLVMGetIntrinsicDeclaration(@NativeType("LLVMModuleRef") long Mod, @NativeType("unsigned") int ID, @NativeType("LLVMTypeRef *") PointerBuffer ParamTypes) {
return nLLVMGetIntrinsicDeclaration(Mod, ID, memAddress(ParamTypes), ParamTypes.remaining());
}
// --- [ LLVMIntrinsicGetType ] ---
/** Unsafe version of: {@link #LLVMIntrinsicGetType IntrinsicGetType} */
public static long nLLVMIntrinsicGetType(long Ctx, int ID, long ParamTypes, long ParamCount) {
long __functionAddress = Functions.IntrinsicGetType;
if (CHECKS) {
check(__functionAddress);
check(Ctx);
}
return invokePPPP(Ctx, ID, ParamTypes, ParamCount, __functionAddress);
}
/**
* Retrieves the type of an intrinsic.
*
* For overloaded intrinsics, parameter types must be provided to uniquely identify an overload.
*
* @since 8.0
*/
@NativeType("LLVMValueRef")
public static long LLVMIntrinsicGetType(@NativeType("LLVMContextRef") long Ctx, @NativeType("unsigned") int ID, @NativeType("LLVMTypeRef *") PointerBuffer ParamTypes) {
return nLLVMIntrinsicGetType(Ctx, ID, memAddress(ParamTypes), ParamTypes.remaining());
}
// --- [ LLVMIntrinsicGetName ] ---
/** Unsafe version of: {@link #LLVMIntrinsicGetName IntrinsicGetName} */
public static long nLLVMIntrinsicGetName(int ID, long NameLength) {
long __functionAddress = Functions.IntrinsicGetName;
if (CHECKS) {
check(__functionAddress);
}
return invokePP(ID, NameLength, __functionAddress);
}
/**
* Retrieves the name of an intrinsic.
*
* @since 8.0
*/
@Nullable
@NativeType("char const *")
public static String LLVMIntrinsicGetName(@NativeType("unsigned") int ID) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer NameLength = stack.callocPointer(1);
long __result = nLLVMIntrinsicGetName(ID, memAddress(NameLength));
return memUTF8Safe(__result, (int)NameLength.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMIntrinsicCopyOverloadedName ] ---
/** Unsafe version of: {@link #LLVMIntrinsicCopyOverloadedName IntrinsicCopyOverloadedName} */
public static long nLLVMIntrinsicCopyOverloadedName(int ID, long ParamTypes, long ParamCount, long NameLength) {
long __functionAddress = Functions.IntrinsicCopyOverloadedName;
if (CHECKS) {
check(__functionAddress);
}
return invokePPPP(ID, ParamTypes, ParamCount, NameLength, __functionAddress);
}
/**
* Copies the name of an overloaded intrinsic identified by a given list of parameter types.
*
* Unlike {@link #LLVMIntrinsicGetName IntrinsicGetName}, the caller is responsible for freeing the returned string.
*
* @since 8.0
*/
@Nullable
@NativeType("char const *")
public static String LLVMIntrinsicCopyOverloadedName(@NativeType("unsigned") int ID, @NativeType("LLVMTypeRef *") PointerBuffer ParamTypes) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
PointerBuffer NameLength = stack.callocPointer(1);
long __result = nLLVMIntrinsicCopyOverloadedName(ID, memAddress(ParamTypes), ParamTypes.remaining(), memAddress(NameLength));
return memUTF8Safe(__result, (int)NameLength.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMIntrinsicIsOverloaded ] ---
/**
* Obtain if the intrinsic identified by the given ID is overloaded.
*
* @since 8.0
*/
@NativeType("LLVMBool")
public static boolean LLVMIntrinsicIsOverloaded(@NativeType("unsigned") int ID) {
long __functionAddress = Functions.IntrinsicIsOverloaded;
if (CHECKS) {
check(__functionAddress);
}
return invokeI(ID, __functionAddress) != 0;
}
// --- [ LLVMGetFunctionCallConv ] ---
/**
* Obtain the calling function of a function.
*
* The returned value corresponds to the {@code LLVMCallConv} enumeration.
*/
@NativeType("unsigned int")
public static int LLVMGetFunctionCallConv(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetFunctionCallConv;
if (CHECKS) {
check(Fn);
}
return invokePI(Fn, __functionAddress);
}
// --- [ LLVMSetFunctionCallConv ] ---
/**
* Set the calling convention of a function.
*
* @param Fn function to operate on
* @param CC {@code LLVMCallConv} to set calling convention to
*/
public static void LLVMSetFunctionCallConv(@NativeType("LLVMValueRef") long Fn, @NativeType("unsigned int") int CC) {
long __functionAddress = Functions.SetFunctionCallConv;
if (CHECKS) {
check(Fn);
}
invokePV(Fn, CC, __functionAddress);
}
// --- [ LLVMGetGC ] ---
/** Unsafe version of: {@link #LLVMGetGC GetGC} */
public static long nLLVMGetGC(long Fn) {
long __functionAddress = Functions.GetGC;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
/** Obtain the name of the garbage collector to use during code generation. */
@Nullable
@NativeType("char const *")
public static String LLVMGetGC(@NativeType("LLVMValueRef") long Fn) {
long __result = nLLVMGetGC(Fn);
return memUTF8Safe(__result);
}
// --- [ LLVMSetGC ] ---
/** Unsafe version of: {@link #LLVMSetGC SetGC} */
public static void nLLVMSetGC(long Fn, long Name) {
long __functionAddress = Functions.SetGC;
if (CHECKS) {
check(Fn);
}
invokePPV(Fn, Name, __functionAddress);
}
/** Define the garbage collector to use during code generation. */
public static void LLVMSetGC(@NativeType("LLVMValueRef") long Fn, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
nLLVMSetGC(Fn, memAddress(Name));
}
/** Define the garbage collector to use during code generation. */
public static void LLVMSetGC(@NativeType("LLVMValueRef") long Fn, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
nLLVMSetGC(Fn, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAddAttributeAtIndex ] ---
/** Add an attribute to a function. */
public static void LLVMAddAttributeAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("LLVMAttributeRef") long A) {
long __functionAddress = Functions.AddAttributeAtIndex;
if (CHECKS) {
check(F);
check(A);
}
invokePPV(F, Idx, A, __functionAddress);
}
// --- [ LLVMGetAttributeCountAtIndex ] ---
@NativeType("unsigned int")
public static int LLVMGetAttributeCountAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx) {
long __functionAddress = Functions.GetAttributeCountAtIndex;
if (CHECKS) {
check(F);
}
return invokePI(F, Idx, __functionAddress);
}
// --- [ LLVMGetAttributesAtIndex ] ---
public static void nLLVMGetAttributesAtIndex(long F, int Idx, long Attrs) {
long __functionAddress = Functions.GetAttributesAtIndex;
if (CHECKS) {
check(F);
}
invokePPV(F, Idx, Attrs, __functionAddress);
}
public static void LLVMGetAttributesAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("LLVMAttributeRef *") PointerBuffer Attrs) {
if (CHECKS) {
if (DEBUG) {
check(Attrs, LLVMGetAttributeCountAtIndex(F, Idx));
}
}
nLLVMGetAttributesAtIndex(F, Idx, memAddress(Attrs));
}
// --- [ LLVMGetEnumAttributeAtIndex ] ---
@NativeType("LLVMAttributeRef")
public static long LLVMGetEnumAttributeAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("unsigned int") int KindID) {
long __functionAddress = Functions.GetEnumAttributeAtIndex;
if (CHECKS) {
check(F);
}
return invokePP(F, Idx, KindID, __functionAddress);
}
// --- [ LLVMGetStringAttributeAtIndex ] ---
public static long nLLVMGetStringAttributeAtIndex(long F, int Idx, long K, int KLen) {
long __functionAddress = Functions.GetStringAttributeAtIndex;
if (CHECKS) {
check(F);
}
return invokePPP(F, Idx, K, KLen, __functionAddress);
}
@NativeType("LLVMAttributeRef")
public static long LLVMGetStringAttributeAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") ByteBuffer K) {
return nLLVMGetStringAttributeAtIndex(F, Idx, memAddress(K), K.remaining());
}
@NativeType("LLVMAttributeRef")
public static long LLVMGetStringAttributeAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") CharSequence K) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int KEncodedLength = stack.nUTF8(K, false);
long KEncoded = stack.getPointerAddress();
return nLLVMGetStringAttributeAtIndex(F, Idx, KEncoded, KEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMRemoveEnumAttributeAtIndex ] ---
public static void LLVMRemoveEnumAttributeAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("unsigned int") int KindID) {
long __functionAddress = Functions.RemoveEnumAttributeAtIndex;
if (CHECKS) {
check(F);
}
invokePV(F, Idx, KindID, __functionAddress);
}
// --- [ LLVMRemoveStringAttributeAtIndex ] ---
public static void nLLVMRemoveStringAttributeAtIndex(long F, int Idx, long K, int KLen) {
long __functionAddress = Functions.RemoveStringAttributeAtIndex;
if (CHECKS) {
check(F);
}
invokePPV(F, Idx, K, KLen, __functionAddress);
}
public static void LLVMRemoveStringAttributeAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") ByteBuffer K) {
nLLVMRemoveStringAttributeAtIndex(F, Idx, memAddress(K), K.remaining());
}
public static void LLVMRemoveStringAttributeAtIndex(@NativeType("LLVMValueRef") long F, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") CharSequence K) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int KEncodedLength = stack.nUTF8(K, false);
long KEncoded = stack.getPointerAddress();
nLLVMRemoveStringAttributeAtIndex(F, Idx, KEncoded, KEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAddTargetDependentFunctionAttr ] ---
/** Unsafe version of: {@link #LLVMAddTargetDependentFunctionAttr AddTargetDependentFunctionAttr} */
public static void nLLVMAddTargetDependentFunctionAttr(long Fn, long A, long V) {
long __functionAddress = Functions.AddTargetDependentFunctionAttr;
if (CHECKS) {
check(Fn);
}
invokePPPV(Fn, A, V, __functionAddress);
}
/** Add a target-dependent attribute to a function */
public static void LLVMAddTargetDependentFunctionAttr(@NativeType("LLVMValueRef") long Fn, @NativeType("char const *") ByteBuffer A, @NativeType("char const *") ByteBuffer V) {
if (CHECKS) {
checkNT1(A);
checkNT1(V);
}
nLLVMAddTargetDependentFunctionAttr(Fn, memAddress(A), memAddress(V));
}
/** Add a target-dependent attribute to a function */
public static void LLVMAddTargetDependentFunctionAttr(@NativeType("LLVMValueRef") long Fn, @NativeType("char const *") CharSequence A, @NativeType("char const *") CharSequence V) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(A, true);
long AEncoded = stack.getPointerAddress();
stack.nUTF8(V, true);
long VEncoded = stack.getPointerAddress();
nLLVMAddTargetDependentFunctionAttr(Fn, AEncoded, VEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMCountParams ] ---
/** Obtain the number of parameters in a function. */
@NativeType("unsigned int")
public static int LLVMCountParams(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.CountParams;
if (CHECKS) {
check(Fn);
}
return invokePI(Fn, __functionAddress);
}
// --- [ LLVMGetParams ] ---
/** Unsafe version of: {@link #LLVMGetParams GetParams} */
public static void nLLVMGetParams(long Fn, long Params) {
long __functionAddress = Functions.GetParams;
if (CHECKS) {
check(Fn);
}
invokePPV(Fn, Params, __functionAddress);
}
/**
* Obtain the parameters in a function.
*
* The takes a pointer to a pre-allocated array of {@code LLVMValueRef} that is at least {@link #LLVMCountParams CountParams} long. This array will be filled with
* {@code LLVMValueRef} instances which correspond to the parameters the function receives. Each {@code LLVMValueRef} corresponds to a
* {@code llvm::Argument} instance.
*/
public static void LLVMGetParams(@NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Params) {
if (CHECKS) {
if (DEBUG) {
check(Params, LLVMCountParams(Fn));
}
}
nLLVMGetParams(Fn, memAddress(Params));
}
// --- [ LLVMGetParam ] ---
/**
* Obtain the parameter at the specified index.
*
* Parameters are indexed from 0.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetParam(@NativeType("LLVMValueRef") long Fn, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.GetParam;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, Index, __functionAddress);
}
// --- [ LLVMGetParamParent ] ---
/**
* Obtain the function to which this argument belongs.
*
* Unlike other functions in this group, this one takes an {@code LLVMValueRef} that corresponds to a {@code llvm::Attribute}.
*
* The returned {@code LLVMValueRef} is the {@code llvm::Function} to which this argument belongs.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetParamParent(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetParamParent;
if (CHECKS) {
check(Inst);
}
return invokePP(Inst, __functionAddress);
}
// --- [ LLVMGetFirstParam ] ---
/** Obtain the first parameter to a function. */
@NativeType("LLVMValueRef")
public static long LLVMGetFirstParam(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetFirstParam;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMGetLastParam ] ---
/** Obtain the last parameter to a function. */
@NativeType("LLVMValueRef")
public static long LLVMGetLastParam(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetLastParam;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMGetNextParam ] ---
/**
* Obtain the next parameter to a function.
*
* This takes an {@code LLVMValueRef} obtained from {@link #LLVMGetFirstParam GetFirstParam} (which is actually a wrapped iterator) and obtains the next parameter from the
* underlying iterator.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNextParam(@NativeType("LLVMValueRef") long Arg) {
long __functionAddress = Functions.GetNextParam;
if (CHECKS) {
check(Arg);
}
return invokePP(Arg, __functionAddress);
}
// --- [ LLVMGetPreviousParam ] ---
/**
* Obtain the previous parameter to a function.
*
* This is the opposite of {@link #LLVMGetNextParam GetNextParam}.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetPreviousParam(@NativeType("LLVMValueRef") long Arg) {
long __functionAddress = Functions.GetPreviousParam;
if (CHECKS) {
check(Arg);
}
return invokePP(Arg, __functionAddress);
}
// --- [ LLVMSetParamAlignment ] ---
/** Set the alignment for a function parameter. */
public static void LLVMSetParamAlignment(@NativeType("LLVMValueRef") long Arg, @NativeType("unsigned int") int Align) {
long __functionAddress = Functions.SetParamAlignment;
if (CHECKS) {
check(Arg);
}
invokePV(Arg, Align, __functionAddress);
}
// --- [ LLVMMDStringInContext ] ---
/** Unsafe version of: {@link #LLVMMDStringInContext MDStringInContext} */
public static long nLLVMMDStringInContext(long C, long Str, int SLen) {
long __functionAddress = Functions.MDStringInContext;
if (CHECKS) {
check(C);
}
return invokePPP(C, Str, SLen, __functionAddress);
}
/**
* Obtain a {@code MDString} value from a context.
*
* The returned instance corresponds to the {@code llvm::MDString} class.
*
* The instance is specified by string data of a specified length. The string content is copied, so the backing memory can be freed after this function
* returns.
*/
@NativeType("LLVMValueRef")
public static long LLVMMDStringInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") ByteBuffer Str) {
return nLLVMMDStringInContext(C, memAddress(Str), Str.remaining());
}
/**
* Obtain a {@code MDString} value from a context.
*
* The returned instance corresponds to the {@code llvm::MDString} class.
*
* The instance is specified by string data of a specified length. The string content is copied, so the backing memory can be freed after this function
* returns.
*/
@NativeType("LLVMValueRef")
public static long LLVMMDStringInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") CharSequence Str) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int StrEncodedLength = stack.nUTF8(Str, false);
long StrEncoded = stack.getPointerAddress();
return nLLVMMDStringInContext(C, StrEncoded, StrEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMMDString ] ---
/** Unsafe version of: {@link #LLVMMDString MDString} */
public static long nLLVMMDString(long Str, int SLen) {
long __functionAddress = Functions.MDString;
return invokePP(Str, SLen, __functionAddress);
}
/** Obtain a {@code MDString} value from the global context. */
@NativeType("LLVMValueRef")
public static long LLVMMDString(@NativeType("char const *") ByteBuffer Str) {
return nLLVMMDString(memAddress(Str), Str.remaining());
}
/** Obtain a {@code MDString} value from the global context. */
@NativeType("LLVMValueRef")
public static long LLVMMDString(@NativeType("char const *") CharSequence Str) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int StrEncodedLength = stack.nUTF8(Str, false);
long StrEncoded = stack.getPointerAddress();
return nLLVMMDString(StrEncoded, StrEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMMDNodeInContext ] ---
/** Unsafe version of: {@link #LLVMMDNodeInContext MDNodeInContext} */
public static long nLLVMMDNodeInContext(long C, long Vals, int Count) {
long __functionAddress = Functions.MDNodeInContext;
if (CHECKS) {
check(C);
}
return invokePPP(C, Vals, Count, __functionAddress);
}
/**
* Obtain a {@code MDNode} value from a context.
*
* The returned value corresponds to the {@code llvm::MDNode} class.
*/
@NativeType("LLVMValueRef")
public static long LLVMMDNodeInContext(@NativeType("LLVMContextRef") long C, @NativeType("LLVMValueRef *") PointerBuffer Vals) {
return nLLVMMDNodeInContext(C, memAddress(Vals), Vals.remaining());
}
// --- [ LLVMMDNode ] ---
/** Unsafe version of: {@link #LLVMMDNode MDNode} */
public static long nLLVMMDNode(long Vals, int Count) {
long __functionAddress = Functions.MDNode;
return invokePP(Vals, Count, __functionAddress);
}
/** Obtain a {@code MDNode} value from the global context. */
@NativeType("LLVMValueRef")
public static long LLVMMDNode(@NativeType("LLVMValueRef *") PointerBuffer Vals) {
return nLLVMMDNode(memAddress(Vals), Vals.remaining());
}
// --- [ LLVMMetadataAsValue ] ---
/** Obtain a {@code Metadata} as a Value. */
@NativeType("LLVMValueRef")
public static long LLVMMetadataAsValue(@NativeType("LLVMContextRef") long C, @NativeType("LLVMMetadataRef") long MD) {
long __functionAddress = Functions.MetadataAsValue;
if (CHECKS) {
check(C);
check(MD);
}
return invokePPP(C, MD, __functionAddress);
}
// --- [ LLVMValueAsMetadata ] ---
/** Obtain a {@code Value} as a {@code Metadata}. */
@NativeType("LLVMMetadataRef")
public static long LLVMValueAsMetadata(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.ValueAsMetadata;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMGetMDString ] ---
/**
* Unsafe version of: {@link #LLVMGetMDString GetMDString}
*
* @param Length memory address which will hold length of returned string
*/
public static long nLLVMGetMDString(long V, long Length) {
long __functionAddress = Functions.GetMDString;
if (CHECKS) {
check(V);
}
return invokePPP(V, Length, __functionAddress);
}
/**
* Obtain the underlying string from a {@code MDString} value.
*
* @param V instance to obtain string from
*
* @return string data in {@code MDString}
*/
@Nullable
@NativeType("char const *")
public static String LLVMGetMDString(@NativeType("LLVMValueRef") long V) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
IntBuffer Length = stack.callocInt(1);
long __result = nLLVMGetMDString(V, memAddress(Length));
return memUTF8Safe(__result, Length.get(0));
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetMDNodeNumOperands ] ---
/**
* Obtain the number of operands from an {@code MDNode} value.
*
* @param V {@code MDNode} to get number of operands from
*
* @return number of operands of the {@code MDNode}
*/
@NativeType("unsigned int")
public static int LLVMGetMDNodeNumOperands(@NativeType("LLVMValueRef") long V) {
long __functionAddress = Functions.GetMDNodeNumOperands;
if (CHECKS) {
check(V);
}
return invokePI(V, __functionAddress);
}
// --- [ LLVMGetMDNodeOperands ] ---
/** Unsafe version of: {@link #LLVMGetMDNodeOperands GetMDNodeOperands} */
public static void nLLVMGetMDNodeOperands(long V, long Dest) {
long __functionAddress = Functions.GetMDNodeOperands;
if (CHECKS) {
check(V);
}
invokePPV(V, Dest, __functionAddress);
}
/**
* Obtain the given {@code MDNode}'s operands.
*
* The passed {@code LLVMValueRef} pointer should point to enough memory to hold all of the operands of the given {@code MDNode} (see
* {@link #LLVMGetMDNodeNumOperands GetMDNodeNumOperands}) as {@code LLVMValueRefs}. This memory will be populated with the {@code LLVMValueRefs} of the {@code MDNode}'s operands.
*
* @param V MDNode to get the operands from
* @param Dest destination array for operands
*/
public static void LLVMGetMDNodeOperands(@NativeType("LLVMValueRef") long V, @NativeType("LLVMValueRef *") PointerBuffer Dest) {
if (CHECKS) {
if (DEBUG) {
check(Dest, LLVMGetMDNodeNumOperands(V));
}
}
nLLVMGetMDNodeOperands(V, memAddress(Dest));
}
// --- [ LLVMBasicBlockAsValue ] ---
/** Convert a basic block instance to a value type. */
@NativeType("LLVMValueRef")
public static long LLVMBasicBlockAsValue(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.BasicBlockAsValue;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
// --- [ LLVMValueIsBasicBlock ] ---
/** Determine whether an {@code LLVMValueRef} is itself a basic block. */
@NativeType("LLVMBool")
public static boolean LLVMValueIsBasicBlock(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.ValueIsBasicBlock;
if (CHECKS) {
check(Val);
}
return invokePI(Val, __functionAddress) != 0;
}
// --- [ LLVMValueAsBasicBlock ] ---
/** Convert an {@code LLVMValueRef} to an {@code LLVMBasicBlockRef} instance. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMValueAsBasicBlock(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.ValueAsBasicBlock;
if (CHECKS) {
check(Val);
}
return invokePP(Val, __functionAddress);
}
// --- [ LLVMGetBasicBlockName ] ---
/** Unsafe version of: {@link #LLVMGetBasicBlockName GetBasicBlockName} */
public static long nLLVMGetBasicBlockName(long BB) {
long __functionAddress = Functions.GetBasicBlockName;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
/** Obtain the string name of a basic block. */
@NativeType("char const *")
public static String LLVMGetBasicBlockName(@NativeType("LLVMBasicBlockRef") long BB) {
long __result = nLLVMGetBasicBlockName(BB);
return memUTF8(__result);
}
// --- [ LLVMGetBasicBlockParent ] ---
/** Obtain the function to which a basic block belongs. */
@NativeType("LLVMValueRef")
public static long LLVMGetBasicBlockParent(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.GetBasicBlockParent;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
// --- [ LLVMGetBasicBlockTerminator ] ---
/**
* Obtain the terminator instruction for a basic block.
*
* If the basic block does not have a terminator (it is not well-formed if it doesn't), then {@code NULL} is returned.
*
* The returned {@code LLVMValueRef} corresponds to an {@code llvm::Instruction}.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetBasicBlockTerminator(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.GetBasicBlockTerminator;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
// --- [ LLVMCountBasicBlocks ] ---
/**
* Obtain the number of basic blocks in a function.
*
* @param Fn function value to operate on
*/
@NativeType("unsigned int")
public static int LLVMCountBasicBlocks(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.CountBasicBlocks;
if (CHECKS) {
check(Fn);
}
return invokePI(Fn, __functionAddress);
}
// --- [ LLVMGetBasicBlocks ] ---
/** Unsafe version of: {@link #LLVMGetBasicBlocks GetBasicBlocks} */
public static void nLLVMGetBasicBlocks(long Fn, long BasicBlocks) {
long __functionAddress = Functions.GetBasicBlocks;
if (CHECKS) {
check(Fn);
}
invokePPV(Fn, BasicBlocks, __functionAddress);
}
/**
* Obtain all of the basic blocks in a function.
*
* This operates on a function value. The {@code BasicBlocks} parameter is a pointer to a pre-allocated array of {@code LLVMBasicBlockRef} of at least
* {@link #LLVMCountBasicBlocks CountBasicBlocks} in length. This array is populated with {@code LLVMBasicBlockRef} instances.
*/
public static void LLVMGetBasicBlocks(@NativeType("LLVMValueRef") long Fn, @NativeType("LLVMBasicBlockRef *") PointerBuffer BasicBlocks) {
if (CHECKS) {
if (DEBUG) {
check(BasicBlocks, LLVMCountBasicBlocks(Fn));
}
}
nLLVMGetBasicBlocks(Fn, memAddress(BasicBlocks));
}
// --- [ LLVMGetFirstBasicBlock ] ---
/**
* Obtain the first basic block in a function.
*
* The returned basic block can be used as an iterator. You will likely eventually call into {@link #LLVMGetNextBasicBlock GetNextBasicBlock} with it.
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetFirstBasicBlock(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetFirstBasicBlock;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMGetLastBasicBlock ] ---
/** Obtain the last basic block in a function. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetLastBasicBlock(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetLastBasicBlock;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMGetNextBasicBlock ] ---
/** Advance a basic block iterator. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetNextBasicBlock(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.GetNextBasicBlock;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
// --- [ LLVMGetPreviousBasicBlock ] ---
/** Go backwards in a basic block iterator. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetPreviousBasicBlock(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.GetPreviousBasicBlock;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
// --- [ LLVMGetEntryBasicBlock ] ---
/** Obtain the basic block that corresponds to the entry point of a function. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetEntryBasicBlock(@NativeType("LLVMValueRef") long Fn) {
long __functionAddress = Functions.GetEntryBasicBlock;
if (CHECKS) {
check(Fn);
}
return invokePP(Fn, __functionAddress);
}
// --- [ LLVMCreateBasicBlockInContext ] ---
/** Unsafe version of: {@link #LLVMCreateBasicBlockInContext CreateBasicBlockInContext} */
public static long nLLVMCreateBasicBlockInContext(long C, long Name) {
long __functionAddress = Functions.CreateBasicBlockInContext;
if (CHECKS) {
check(__functionAddress);
check(C);
}
return invokePPP(C, Name, __functionAddress);
}
/**
* Create a new basic block without inserting it into a function.
*
* @since 8.0
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMCreateBasicBlockInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMCreateBasicBlockInContext(C, memAddress(Name));
}
/**
* Create a new basic block without inserting it into a function.
*
* @since 8.0
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMCreateBasicBlockInContext(@NativeType("LLVMContextRef") long C, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMCreateBasicBlockInContext(C, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAppendBasicBlockInContext ] ---
/** Unsafe version of: {@link #LLVMAppendBasicBlockInContext AppendBasicBlockInContext} */
public static long nLLVMAppendBasicBlockInContext(long C, long Fn, long Name) {
long __functionAddress = Functions.AppendBasicBlockInContext;
if (CHECKS) {
check(C);
check(Fn);
}
return invokePPPP(C, Fn, Name, __functionAddress);
}
/** Append a basic block to the end of a function. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMAppendBasicBlockInContext(@NativeType("LLVMContextRef") long C, @NativeType("LLVMValueRef") long Fn, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMAppendBasicBlockInContext(C, Fn, memAddress(Name));
}
/** Append a basic block to the end of a function. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMAppendBasicBlockInContext(@NativeType("LLVMContextRef") long C, @NativeType("LLVMValueRef") long Fn, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMAppendBasicBlockInContext(C, Fn, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAppendBasicBlock ] ---
/** Unsafe version of: {@link #LLVMAppendBasicBlock AppendBasicBlock} */
public static long nLLVMAppendBasicBlock(long Fn, long Name) {
long __functionAddress = Functions.AppendBasicBlock;
if (CHECKS) {
check(Fn);
}
return invokePPP(Fn, Name, __functionAddress);
}
/** Append a basic block to the end of a function using the global context. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMAppendBasicBlock(@NativeType("LLVMValueRef") long Fn, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMAppendBasicBlock(Fn, memAddress(Name));
}
/** Append a basic block to the end of a function using the global context. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMAppendBasicBlock(@NativeType("LLVMValueRef") long Fn, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMAppendBasicBlock(Fn, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMInsertBasicBlockInContext ] ---
/** Unsafe version of: {@link #LLVMInsertBasicBlockInContext InsertBasicBlockInContext} */
public static long nLLVMInsertBasicBlockInContext(long C, long BB, long Name) {
long __functionAddress = Functions.InsertBasicBlockInContext;
if (CHECKS) {
check(C);
check(BB);
}
return invokePPPP(C, BB, Name, __functionAddress);
}
/**
* Insert a basic block in a function before another basic block.
*
* The function to add to is determined by the function of the passed basic block.
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMInsertBasicBlockInContext(@NativeType("LLVMContextRef") long C, @NativeType("LLVMBasicBlockRef") long BB, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMInsertBasicBlockInContext(C, BB, memAddress(Name));
}
/**
* Insert a basic block in a function before another basic block.
*
* The function to add to is determined by the function of the passed basic block.
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMInsertBasicBlockInContext(@NativeType("LLVMContextRef") long C, @NativeType("LLVMBasicBlockRef") long BB, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMInsertBasicBlockInContext(C, BB, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMInsertBasicBlock ] ---
/** Unsafe version of: {@link #LLVMInsertBasicBlock InsertBasicBlock} */
public static long nLLVMInsertBasicBlock(long InsertBeforeBB, long Name) {
long __functionAddress = Functions.InsertBasicBlock;
if (CHECKS) {
check(InsertBeforeBB);
}
return invokePPP(InsertBeforeBB, Name, __functionAddress);
}
/** Insert a basic block in a function using the global context. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMInsertBasicBlock(@NativeType("LLVMBasicBlockRef") long InsertBeforeBB, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMInsertBasicBlock(InsertBeforeBB, memAddress(Name));
}
/** Insert a basic block in a function using the global context. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMInsertBasicBlock(@NativeType("LLVMBasicBlockRef") long InsertBeforeBB, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMInsertBasicBlock(InsertBeforeBB, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMDeleteBasicBlock ] ---
/**
* Remove a basic block from a function and delete it.
*
* This deletes the basic block from its containing function and deletes the basic block itself.
*/
public static void LLVMDeleteBasicBlock(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.DeleteBasicBlock;
if (CHECKS) {
check(BB);
}
invokePV(BB, __functionAddress);
}
// --- [ LLVMRemoveBasicBlockFromParent ] ---
/**
* Remove a basic block from a function.
*
* This deletes the basic block from its containing function but keep the basic block alive.
*/
public static void LLVMRemoveBasicBlockFromParent(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.RemoveBasicBlockFromParent;
if (CHECKS) {
check(BB);
}
invokePV(BB, __functionAddress);
}
// --- [ LLVMMoveBasicBlockBefore ] ---
/** Move a basic block to before another one. */
public static void LLVMMoveBasicBlockBefore(@NativeType("LLVMBasicBlockRef") long BB, @NativeType("LLVMBasicBlockRef") long MovePos) {
long __functionAddress = Functions.MoveBasicBlockBefore;
if (CHECKS) {
check(BB);
check(MovePos);
}
invokePPV(BB, MovePos, __functionAddress);
}
// --- [ LLVMMoveBasicBlockAfter ] ---
/** Move a basic block to after another one. */
public static void LLVMMoveBasicBlockAfter(@NativeType("LLVMBasicBlockRef") long BB, @NativeType("LLVMBasicBlockRef") long MovePos) {
long __functionAddress = Functions.MoveBasicBlockAfter;
if (CHECKS) {
check(BB);
check(MovePos);
}
invokePPV(BB, MovePos, __functionAddress);
}
// --- [ LLVMGetFirstInstruction ] ---
/**
* Obtain the first instruction in a basic block.
*
* The returned {@code LLVMValueRef} corresponds to a {@code llvm::Instruction} instance.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetFirstInstruction(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.GetFirstInstruction;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
// --- [ LLVMGetLastInstruction ] ---
/**
* Obtain the last instruction in a basic block.
*
* The returned {@code LLVMValueRef} corresponds to an {@code LLVM::Instruction}.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetLastInstruction(@NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.GetLastInstruction;
if (CHECKS) {
check(BB);
}
return invokePP(BB, __functionAddress);
}
// --- [ LLVMHasMetadata ] ---
/** Determine whether an instruction has any metadata attached. */
@NativeType("int")
public static boolean LLVMHasMetadata(@NativeType("LLVMValueRef") long Val) {
long __functionAddress = Functions.HasMetadata;
if (CHECKS) {
check(Val);
}
return invokePI(Val, __functionAddress) != 0;
}
// --- [ LLVMGetMetadata ] ---
/** Return metadata associated with an instruction value. */
@NativeType("LLVMValueRef")
public static long LLVMGetMetadata(@NativeType("LLVMValueRef") long Val, @NativeType("unsigned int") int KindID) {
long __functionAddress = Functions.GetMetadata;
if (CHECKS) {
check(Val);
}
return invokePP(Val, KindID, __functionAddress);
}
// --- [ LLVMSetMetadata ] ---
/** Set metadata associated with an instruction value. */
public static void LLVMSetMetadata(@NativeType("LLVMValueRef") long Val, @NativeType("unsigned int") int KindID, @NativeType("LLVMValueRef") long Node) {
long __functionAddress = Functions.SetMetadata;
if (CHECKS) {
check(Val);
check(Node);
}
invokePPV(Val, KindID, Node, __functionAddress);
}
// --- [ LLVMInstructionGetAllMetadataOtherThanDebugLoc ] ---
/** Unsafe version of: {@link #LLVMInstructionGetAllMetadataOtherThanDebugLoc InstructionGetAllMetadataOtherThanDebugLoc} */
public static long nLLVMInstructionGetAllMetadataOtherThanDebugLoc(long Instr, long NumEntries) {
long __functionAddress = Functions.InstructionGetAllMetadataOtherThanDebugLoc;
if (CHECKS) {
check(__functionAddress);
check(Instr);
}
return invokePPP(Instr, NumEntries, __functionAddress);
}
/** Returns the metadata associated with an instruction value, but filters out all the debug locations. */
@NativeType("LLVMValueMetadataEntry *")
public static long LLVMInstructionGetAllMetadataOtherThanDebugLoc(@NativeType("LLVMValueRef") long Instr, @NativeType("size_t *") PointerBuffer NumEntries) {
if (CHECKS) {
check(NumEntries, 1);
}
return nLLVMInstructionGetAllMetadataOtherThanDebugLoc(Instr, memAddress(NumEntries));
}
// --- [ LLVMGetInstructionParent ] ---
/** Obtain the basic block to which an instruction belongs. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetInstructionParent(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetInstructionParent;
if (CHECKS) {
check(Inst);
}
return invokePP(Inst, __functionAddress);
}
// --- [ LLVMGetNextInstruction ] ---
/**
* Obtain the instruction that occurs after the one specified.
*
* The next instruction will be from the same basic block.
*
* If this is the last instruction in a basic block, {@code NULL} will be returned.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetNextInstruction(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetNextInstruction;
if (CHECKS) {
check(Inst);
}
return invokePP(Inst, __functionAddress);
}
// --- [ LLVMGetPreviousInstruction ] ---
/**
* Obtain the instruction that occurred before this one.
*
* If the instruction is the first instruction in a basic block, {@code NULL} will be returned.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetPreviousInstruction(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetPreviousInstruction;
if (CHECKS) {
check(Inst);
}
return invokePP(Inst, __functionAddress);
}
// --- [ LLVMInstructionRemoveFromParent ] ---
/**
* Remove and delete an instruction.
*
* The instruction specified is removed from its containing building block but is kept alive.
*/
public static void LLVMInstructionRemoveFromParent(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.InstructionRemoveFromParent;
if (CHECKS) {
check(Inst);
}
invokePV(Inst, __functionAddress);
}
// --- [ LLVMInstructionEraseFromParent ] ---
/**
* Remove and delete an instruction.
*
* The instruction specified is removed from its containing building block and then deleted.
*/
public static void LLVMInstructionEraseFromParent(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.InstructionEraseFromParent;
if (CHECKS) {
check(Inst);
}
invokePV(Inst, __functionAddress);
}
// --- [ LLVMGetInstructionOpcode ] ---
/** Obtain the code opcode for an individual instruction. */
@NativeType("LLVMOpcode")
public static int LLVMGetInstructionOpcode(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetInstructionOpcode;
if (CHECKS) {
check(Inst);
}
return invokePI(Inst, __functionAddress);
}
// --- [ LLVMGetICmpPredicate ] ---
/**
* Obtain the predicate of an instruction.
*
* This is only valid for instructions that correspond to {@code llvm::ICmpInst} or {@code llvm::ConstantExpr} whose opcode is
* {@code llvm::Instruction::ICmp}.
*/
@NativeType("LLVMIntPredicate")
public static int LLVMGetICmpPredicate(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetICmpPredicate;
if (CHECKS) {
check(Inst);
}
return invokePI(Inst, __functionAddress);
}
// --- [ LLVMGetFCmpPredicate ] ---
/**
* Obtain the float predicate of an instruction.
*
* This is only valid for instructions that correspond to {@code llvm::FCmpInst} or {@code llvm::ConstantExpr} whose opcode is
* {@code llvm::Instruction::FCmp}.
*/
@NativeType("LLVMRealPredicate")
public static int LLVMGetFCmpPredicate(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetFCmpPredicate;
if (CHECKS) {
check(Inst);
}
return invokePI(Inst, __functionAddress);
}
// --- [ LLVMInstructionClone ] ---
/**
* Create a copy of 'this' instruction that is identical in all ways except the following:
*
*
* - The instruction has no parent
* - The instruction has no name
*
*/
@NativeType("LLVMValueRef")
public static long LLVMInstructionClone(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.InstructionClone;
if (CHECKS) {
check(Inst);
}
return invokePP(Inst, __functionAddress);
}
// --- [ 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.
*/
@NativeType("LLVMValueRef")
public static long LLVMIsATerminatorInst(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.IsATerminatorInst;
if (CHECKS) {
check(Inst);
}
return invokePP(Inst, __functionAddress);
}
// --- [ LLVMGetNumArgOperands ] ---
/**
* Obtain the argument count for a call instruction.
*
* This expects an {@code LLVMValueRef} that corresponds to a {@code llvm::CallInst}, {@code llvm::InvokeInst}, or {@code llvm::FuncletPadInst}.
*/
@NativeType("unsigned int")
public static int LLVMGetNumArgOperands(@NativeType("LLVMValueRef") long Instr) {
long __functionAddress = Functions.GetNumArgOperands;
if (CHECKS) {
check(Instr);
}
return invokePI(Instr, __functionAddress);
}
// --- [ LLVMSetInstructionCallConv ] ---
/**
* Set the calling convention for a call instruction.
*
* This expects an {@code LLVMValueRef} that corresponds to a {@code llvm::CallInst} or {@code llvm::InvokeInst}.
*/
public static void LLVMSetInstructionCallConv(@NativeType("LLVMValueRef") long Instr, @NativeType("unsigned int") int CC) {
long __functionAddress = Functions.SetInstructionCallConv;
if (CHECKS) {
check(Instr);
}
invokePV(Instr, CC, __functionAddress);
}
// --- [ LLVMGetInstructionCallConv ] ---
/**
* Obtain the calling convention for a call instruction.
*
* This is the opposite of {@link #LLVMSetInstructionCallConv SetInstructionCallConv}. Reads its usage.
*/
@NativeType("unsigned int")
public static int LLVMGetInstructionCallConv(@NativeType("LLVMValueRef") long Instr) {
long __functionAddress = Functions.GetInstructionCallConv;
if (CHECKS) {
check(Instr);
}
return invokePI(Instr, __functionAddress);
}
// --- [ LLVMSetInstrParamAlignment ] ---
public static void LLVMSetInstrParamAlignment(@NativeType("LLVMValueRef") long Instr, @NativeType("unsigned int") int index, @NativeType("unsigned int") int Align) {
long __functionAddress = Functions.SetInstrParamAlignment;
if (CHECKS) {
check(Instr);
}
invokePV(Instr, index, Align, __functionAddress);
}
// --- [ LLVMAddCallSiteAttribute ] ---
public static void LLVMAddCallSiteAttribute(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("LLVMAttributeRef") long A) {
long __functionAddress = Functions.AddCallSiteAttribute;
if (CHECKS) {
check(C);
check(A);
}
invokePPV(C, Idx, A, __functionAddress);
}
// --- [ LLVMGetCallSiteAttributeCount ] ---
@NativeType("unsigned int")
public static int LLVMGetCallSiteAttributeCount(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx) {
long __functionAddress = Functions.GetCallSiteAttributeCount;
if (CHECKS) {
check(C);
}
return invokePI(C, Idx, __functionAddress);
}
// --- [ LLVMGetCallSiteAttributes ] ---
public static void nLLVMGetCallSiteAttributes(long C, int Idx, long Attrs) {
long __functionAddress = Functions.GetCallSiteAttributes;
if (CHECKS) {
check(C);
}
invokePPV(C, Idx, Attrs, __functionAddress);
}
public static void LLVMGetCallSiteAttributes(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("LLVMAttributeRef *") PointerBuffer Attrs) {
if (CHECKS) {
if (DEBUG) {
check(Attrs, LLVMGetCallSiteAttributeCount(C, Idx));
}
}
nLLVMGetCallSiteAttributes(C, Idx, memAddress(Attrs));
}
// --- [ LLVMGetCallSiteEnumAttribute ] ---
@NativeType("LLVMAttributeRef")
public static long LLVMGetCallSiteEnumAttribute(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("unsigned int") int KindID) {
long __functionAddress = Functions.GetCallSiteEnumAttribute;
if (CHECKS) {
check(C);
}
return invokePP(C, Idx, KindID, __functionAddress);
}
// --- [ LLVMGetCallSiteStringAttribute ] ---
public static long nLLVMGetCallSiteStringAttribute(long C, int Idx, long K, int KLen) {
long __functionAddress = Functions.GetCallSiteStringAttribute;
if (CHECKS) {
check(C);
}
return invokePPP(C, Idx, K, KLen, __functionAddress);
}
@NativeType("LLVMAttributeRef")
public static long LLVMGetCallSiteStringAttribute(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") ByteBuffer K) {
return nLLVMGetCallSiteStringAttribute(C, Idx, memAddress(K), K.remaining());
}
@NativeType("LLVMAttributeRef")
public static long LLVMGetCallSiteStringAttribute(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") CharSequence K) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int KEncodedLength = stack.nUTF8(K, false);
long KEncoded = stack.getPointerAddress();
return nLLVMGetCallSiteStringAttribute(C, Idx, KEncoded, KEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMRemoveCallSiteEnumAttribute ] ---
public static void LLVMRemoveCallSiteEnumAttribute(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("unsigned int") int KindID) {
long __functionAddress = Functions.RemoveCallSiteEnumAttribute;
if (CHECKS) {
check(C);
}
invokePV(C, Idx, KindID, __functionAddress);
}
// --- [ LLVMRemoveCallSiteStringAttribute ] ---
public static void nLLVMRemoveCallSiteStringAttribute(long C, int Idx, long K, int KLen) {
long __functionAddress = Functions.RemoveCallSiteStringAttribute;
if (CHECKS) {
check(C);
}
invokePPV(C, Idx, K, KLen, __functionAddress);
}
public static void LLVMRemoveCallSiteStringAttribute(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") ByteBuffer K) {
nLLVMRemoveCallSiteStringAttribute(C, Idx, memAddress(K), K.remaining());
}
public static void LLVMRemoveCallSiteStringAttribute(@NativeType("LLVMValueRef") long C, @NativeType("LLVMAttributeIndex") int Idx, @NativeType("char const *") CharSequence K) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
int KEncodedLength = stack.nUTF8(K, false);
long KEncoded = stack.getPointerAddress();
nLLVMRemoveCallSiteStringAttribute(C, Idx, KEncoded, KEncodedLength);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetCalledFunctionType ] ---
/**
* Obtain the function type called by this instruction.
*
* @since 8.0
*/
@NativeType("LLVMTypeRef")
public static long LLVMGetCalledFunctionType(@NativeType("LLVMValueRef") long C) {
long __functionAddress = Functions.GetCalledFunctionType;
if (CHECKS) {
check(__functionAddress);
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMGetCalledValue ] ---
/**
* Obtain the pointer to the function invoked by this instruction.
*
* This expects an {@code LLVMValueRef} that corresponds to a {@code llvm::CallInst} or {@code llvm::InvokeInst}.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetCalledValue(@NativeType("LLVMValueRef") long Instr) {
long __functionAddress = Functions.GetCalledValue;
if (CHECKS) {
check(Instr);
}
return invokePP(Instr, __functionAddress);
}
// --- [ LLVMIsTailCall ] ---
/**
* Obtain whether a call instruction is a tail call.
*
* This only works on {@code llvm::CallInst} instructions.
*/
@NativeType("LLVMBool")
public static boolean LLVMIsTailCall(@NativeType("LLVMValueRef") long CallInst) {
long __functionAddress = Functions.IsTailCall;
if (CHECKS) {
check(CallInst);
}
return invokePI(CallInst, __functionAddress) != 0;
}
// --- [ LLVMSetTailCall ] ---
/**
* Set whether a call instruction is a tail call.
*
* This only works on {@code llvm::CallInst} instructions.
*/
public static void LLVMSetTailCall(@NativeType("LLVMValueRef") long CallInst, @NativeType("LLVMBool") boolean IsTailCall) {
long __functionAddress = Functions.SetTailCall;
if (CHECKS) {
check(CallInst);
}
invokePV(CallInst, IsTailCall ? 1 : 0, __functionAddress);
}
// --- [ LLVMGetNormalDest ] ---
/**
* Return the normal destination basic block.
*
* This only works on {@code llvm::InvokeInst} instructions.
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetNormalDest(@NativeType("LLVMValueRef") long InvokeInst) {
long __functionAddress = Functions.GetNormalDest;
if (CHECKS) {
check(InvokeInst);
}
return invokePP(InvokeInst, __functionAddress);
}
// --- [ LLVMGetUnwindDest ] ---
/**
* Return the unwind destination basic block.
*
* Works on {@code llvm::InvokeInst}, {@code llvm::CleanupReturnInst}, and {@code llvm::CatchSwitchInst} instructions.
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetUnwindDest(@NativeType("LLVMValueRef") long InvokeInst) {
long __functionAddress = Functions.GetUnwindDest;
if (CHECKS) {
check(InvokeInst);
}
return invokePP(InvokeInst, __functionAddress);
}
// --- [ LLVMSetNormalDest ] ---
/**
* Set the normal destination basic block.
*
* This only works on {@code llvm::InvokeInst} instructions.
*/
public static void LLVMSetNormalDest(@NativeType("LLVMValueRef") long InvokeInst, @NativeType("LLVMBasicBlockRef") long B) {
long __functionAddress = Functions.SetNormalDest;
if (CHECKS) {
check(InvokeInst);
check(B);
}
invokePPV(InvokeInst, B, __functionAddress);
}
// --- [ LLVMSetUnwindDest ] ---
/**
* Set the unwind destination basic block.
*
* Works on {@code llvm::InvokeInst}, {@code llvm::CleanupReturnInst}, and {@code llvm::CatchSwitchInst} instructions.
*/
public static void LLVMSetUnwindDest(@NativeType("LLVMValueRef") long InvokeInst, @NativeType("LLVMBasicBlockRef") long B) {
long __functionAddress = Functions.SetUnwindDest;
if (CHECKS) {
check(InvokeInst);
check(B);
}
invokePPV(InvokeInst, B, __functionAddress);
}
// --- [ LLVMGetNumSuccessors ] ---
/** Return the number of successors that this terminator has. */
@NativeType("unsigned int")
public static int LLVMGetNumSuccessors(@NativeType("LLVMValueRef") long Term) {
long __functionAddress = Functions.GetNumSuccessors;
if (CHECKS) {
check(Term);
}
return invokePI(Term, __functionAddress);
}
// --- [ LLVMGetSuccessor ] ---
/** Return the specified successor. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetSuccessor(@NativeType("LLVMValueRef") long Term, @NativeType("unsigned int") int i) {
long __functionAddress = Functions.GetSuccessor;
if (CHECKS) {
check(Term);
}
return invokePP(Term, i, __functionAddress);
}
// --- [ LLVMSetSuccessor ] ---
/** Update the specified successor to point at the provided block. */
public static void LLVMSetSuccessor(@NativeType("LLVMValueRef") long Term, @NativeType("unsigned int") int i, @NativeType("LLVMBasicBlockRef") long block) {
long __functionAddress = Functions.SetSuccessor;
if (CHECKS) {
check(Term);
check(block);
}
invokePPV(Term, i, block, __functionAddress);
}
// --- [ LLVMIsConditional ] ---
/**
* Return if a branch is conditional.
*
* This only works on {@code llvm::BranchInst} instructions.
*/
@NativeType("LLVMBool")
public static boolean LLVMIsConditional(@NativeType("LLVMValueRef") long Branch) {
long __functionAddress = Functions.IsConditional;
if (CHECKS) {
check(Branch);
}
return invokePI(Branch, __functionAddress) != 0;
}
// --- [ LLVMGetCondition ] ---
/**
* Return the condition of a branch instruction.
*
* This only works on {@code llvm::BranchInst} instructions.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetCondition(@NativeType("LLVMValueRef") long Branch) {
long __functionAddress = Functions.GetCondition;
if (CHECKS) {
check(Branch);
}
return invokePP(Branch, __functionAddress);
}
// --- [ LLVMSetCondition ] ---
/**
* Set the condition of a branch instruction.
*
* This only works on {@code llvm::BranchInst} instructions.
*/
public static void LLVMSetCondition(@NativeType("LLVMValueRef") long Branch, @NativeType("LLVMValueRef") long Cond) {
long __functionAddress = Functions.SetCondition;
if (CHECKS) {
check(Branch);
check(Cond);
}
invokePPV(Branch, Cond, __functionAddress);
}
// --- [ LLVMGetSwitchDefaultDest ] ---
/**
* Obtain the default destination basic block of a switch instruction.
*
* This only works on {@code llvm::SwitchInst} instructions.
*/
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetSwitchDefaultDest(@NativeType("LLVMValueRef") long SwitchInstr) {
long __functionAddress = Functions.GetSwitchDefaultDest;
if (CHECKS) {
check(SwitchInstr);
}
return invokePP(SwitchInstr, __functionAddress);
}
// --- [ LLVMGetAllocatedType ] ---
/** Obtain the type that is being allocated by the {@code alloca} instruction. */
@NativeType("LLVMTypeRef")
public static long LLVMGetAllocatedType(@NativeType("LLVMValueRef") long Alloca) {
long __functionAddress = Functions.GetAllocatedType;
if (CHECKS) {
check(Alloca);
}
return invokePP(Alloca, __functionAddress);
}
// --- [ LLVMIsInBounds ] ---
/** Check whether the given {@code GEP} instruction is inbounds. */
@NativeType("LLVMBool")
public static boolean LLVMIsInBounds(@NativeType("LLVMValueRef") long GEP) {
long __functionAddress = Functions.IsInBounds;
if (CHECKS) {
check(GEP);
}
return invokePI(GEP, __functionAddress) != 0;
}
// --- [ LLVMSetIsInBounds ] ---
/** Set the given {@code GEP} instruction to be inbounds or not. */
public static void LLVMSetIsInBounds(@NativeType("LLVMValueRef") long GEP, @NativeType("LLVMBool") boolean InBounds) {
long __functionAddress = Functions.SetIsInBounds;
if (CHECKS) {
check(GEP);
}
invokePV(GEP, InBounds ? 1 : 0, __functionAddress);
}
// --- [ LLVMAddIncoming ] ---
/** Unsafe version of: {@link #LLVMAddIncoming AddIncoming} */
public static void nLLVMAddIncoming(long PhiNode, long IncomingValues, long IncomingBlocks, int Count) {
long __functionAddress = Functions.AddIncoming;
if (CHECKS) {
check(PhiNode);
}
invokePPPV(PhiNode, IncomingValues, IncomingBlocks, Count, __functionAddress);
}
/** Add an incoming value to the end of a PHI list. */
public static void LLVMAddIncoming(@NativeType("LLVMValueRef") long PhiNode, @NativeType("LLVMValueRef *") PointerBuffer IncomingValues, @NativeType("LLVMBasicBlockRef *") PointerBuffer IncomingBlocks) {
if (CHECKS) {
check(IncomingBlocks, IncomingValues.remaining());
}
nLLVMAddIncoming(PhiNode, memAddress(IncomingValues), memAddress(IncomingBlocks), IncomingValues.remaining());
}
// --- [ LLVMCountIncoming ] ---
/** Obtain the number of incoming basic blocks to a PHI node. */
@NativeType("unsigned int")
public static int LLVMCountIncoming(@NativeType("LLVMValueRef") long PhiNode) {
long __functionAddress = Functions.CountIncoming;
if (CHECKS) {
check(PhiNode);
}
return invokePI(PhiNode, __functionAddress);
}
// --- [ LLVMGetIncomingValue ] ---
/** Obtain an incoming value to a PHI node as an {@code LLVMValueRef}. */
@NativeType("LLVMValueRef")
public static long LLVMGetIncomingValue(@NativeType("LLVMValueRef") long PhiNode, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.GetIncomingValue;
if (CHECKS) {
check(PhiNode);
}
return invokePP(PhiNode, Index, __functionAddress);
}
// --- [ LLVMGetIncomingBlock ] ---
/** Obtain an incoming value to a PHI node as an {@code LLVMBasicBlockRef}. */
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetIncomingBlock(@NativeType("LLVMValueRef") long PhiNode, @NativeType("unsigned int") int Index) {
long __functionAddress = Functions.GetIncomingBlock;
if (CHECKS) {
check(PhiNode);
}
return invokePP(PhiNode, Index, __functionAddress);
}
// --- [ LLVMGetNumIndices ] ---
/** Obtain the number of indices. NB: This also works on {@code GEP}. */
@NativeType("unsigned int")
public static int LLVMGetNumIndices(@NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.GetNumIndices;
if (CHECKS) {
check(Inst);
}
return invokePI(Inst, __functionAddress);
}
// --- [ LLVMGetIndices ] ---
/** Unsafe version of: {@link #LLVMGetIndices GetIndices} */
public static long nLLVMGetIndices(long Inst) {
long __functionAddress = Functions.GetIndices;
if (CHECKS) {
check(Inst);
}
return invokePP(Inst, __functionAddress);
}
/**
* Obtain the indices as an array.
*
* @param Count LWJGL: virtual parameter, should pass {@link #LLVMGetNumIndices GetNumIndices}
*/
@NativeType("unsigned int const *")
public static IntBuffer LLVMGetIndices(@NativeType("LLVMValueRef") long Inst, @NativeType("unsigned int") int Count) {
long __result = nLLVMGetIndices(Inst);
return memIntBuffer(__result, Count);
}
// --- [ LLVMCreateBuilderInContext ] ---
@NativeType("LLVMBuilderRef")
public static long LLVMCreateBuilderInContext(@NativeType("LLVMContextRef") long C) {
long __functionAddress = Functions.CreateBuilderInContext;
if (CHECKS) {
check(C);
}
return invokePP(C, __functionAddress);
}
// --- [ LLVMCreateBuilder ] ---
@NativeType("LLVMBuilderRef")
public static long LLVMCreateBuilder() {
long __functionAddress = Functions.CreateBuilder;
return invokeP(__functionAddress);
}
// --- [ LLVMPositionBuilder ] ---
public static void LLVMPositionBuilder(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMBasicBlockRef") long Block, @NativeType("LLVMValueRef") long Instr) {
long __functionAddress = Functions.PositionBuilder;
if (CHECKS) {
check(Builder);
check(Block);
check(Instr);
}
invokePPPV(Builder, Block, Instr, __functionAddress);
}
// --- [ LLVMPositionBuilderBefore ] ---
public static void LLVMPositionBuilderBefore(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Instr) {
long __functionAddress = Functions.PositionBuilderBefore;
if (CHECKS) {
check(Builder);
check(Instr);
}
invokePPV(Builder, Instr, __functionAddress);
}
// --- [ LLVMPositionBuilderAtEnd ] ---
public static void LLVMPositionBuilderAtEnd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMBasicBlockRef") long Block) {
long __functionAddress = Functions.PositionBuilderAtEnd;
if (CHECKS) {
check(Builder);
check(Block);
}
invokePPV(Builder, Block, __functionAddress);
}
// --- [ LLVMGetInsertBlock ] ---
@NativeType("LLVMBasicBlockRef")
public static long LLVMGetInsertBlock(@NativeType("LLVMBuilderRef") long Builder) {
long __functionAddress = Functions.GetInsertBlock;
if (CHECKS) {
check(Builder);
}
return invokePP(Builder, __functionAddress);
}
// --- [ LLVMClearInsertionPosition ] ---
public static void LLVMClearInsertionPosition(@NativeType("LLVMBuilderRef") long Builder) {
long __functionAddress = Functions.ClearInsertionPosition;
if (CHECKS) {
check(Builder);
}
invokePV(Builder, __functionAddress);
}
// --- [ LLVMInsertIntoBuilder ] ---
public static void LLVMInsertIntoBuilder(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Instr) {
long __functionAddress = Functions.InsertIntoBuilder;
if (CHECKS) {
check(Builder);
check(Instr);
}
invokePPV(Builder, Instr, __functionAddress);
}
// --- [ LLVMInsertIntoBuilderWithName ] ---
public static void nLLVMInsertIntoBuilderWithName(long Builder, long Instr, long Name) {
long __functionAddress = Functions.InsertIntoBuilderWithName;
if (CHECKS) {
check(Builder);
check(Instr);
}
invokePPPV(Builder, Instr, Name, __functionAddress);
}
public static void LLVMInsertIntoBuilderWithName(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Instr, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
nLLVMInsertIntoBuilderWithName(Builder, Instr, memAddress(Name));
}
public static void LLVMInsertIntoBuilderWithName(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Instr, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
nLLVMInsertIntoBuilderWithName(Builder, Instr, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMDisposeBuilder ] ---
public static void LLVMDisposeBuilder(@NativeType("LLVMBuilderRef") long Builder) {
long __functionAddress = Functions.DisposeBuilder;
if (CHECKS) {
check(Builder);
}
invokePV(Builder, __functionAddress);
}
// --- [ LLVMSetCurrentDebugLocation ] ---
/** Metadata */
public static void LLVMSetCurrentDebugLocation(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long L) {
long __functionAddress = Functions.SetCurrentDebugLocation;
if (CHECKS) {
check(Builder);
check(L);
}
invokePPV(Builder, L, __functionAddress);
}
// --- [ LLVMGetCurrentDebugLocation ] ---
@NativeType("LLVMValueRef")
public static long LLVMGetCurrentDebugLocation(@NativeType("LLVMBuilderRef") long Builder) {
long __functionAddress = Functions.GetCurrentDebugLocation;
if (CHECKS) {
check(Builder);
}
return invokePP(Builder, __functionAddress);
}
// --- [ LLVMSetInstDebugLocation ] ---
public static void LLVMSetInstDebugLocation(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Inst) {
long __functionAddress = Functions.SetInstDebugLocation;
if (CHECKS) {
check(Builder);
check(Inst);
}
invokePPV(Builder, Inst, __functionAddress);
}
// --- [ LLVMBuildRetVoid ] ---
/** Terminators */
@NativeType("LLVMValueRef")
public static long LLVMBuildRetVoid(@NativeType("LLVMBuilderRef") long Builder) {
long __functionAddress = Functions.BuildRetVoid;
if (CHECKS) {
check(Builder);
}
return invokePP(Builder, __functionAddress);
}
// --- [ LLVMBuildRet ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildRet(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V) {
long __functionAddress = Functions.BuildRet;
if (CHECKS) {
check(Builder);
check(V);
}
return invokePPP(Builder, V, __functionAddress);
}
// --- [ LLVMBuildAggregateRet ] ---
public static long nLLVMBuildAggregateRet(long Builder, long RetVals, int N) {
long __functionAddress = Functions.BuildAggregateRet;
if (CHECKS) {
check(Builder);
}
return invokePPP(Builder, RetVals, N, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAggregateRet(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef *") PointerBuffer RetVals) {
return nLLVMBuildAggregateRet(Builder, memAddress(RetVals), RetVals.remaining());
}
// --- [ LLVMBuildBr ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildBr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMBasicBlockRef") long Dest) {
long __functionAddress = Functions.BuildBr;
if (CHECKS) {
check(Builder);
check(Dest);
}
return invokePPP(Builder, Dest, __functionAddress);
}
// --- [ LLVMBuildCondBr ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildCondBr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long If, @NativeType("LLVMBasicBlockRef") long Then, @NativeType("LLVMBasicBlockRef") long Else) {
long __functionAddress = Functions.BuildCondBr;
if (CHECKS) {
check(Builder);
check(If);
check(Then);
check(Else);
}
return invokePPPPP(Builder, If, Then, Else, __functionAddress);
}
// --- [ LLVMBuildSwitch ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildSwitch(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V, @NativeType("LLVMBasicBlockRef") long Else, @NativeType("unsigned int") int NumCases) {
long __functionAddress = Functions.BuildSwitch;
if (CHECKS) {
check(Builder);
check(V);
check(Else);
}
return invokePPPP(Builder, V, Else, NumCases, __functionAddress);
}
// --- [ LLVMBuildIndirectBr ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildIndirectBr(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Addr, @NativeType("unsigned int") int NumDests) {
long __functionAddress = Functions.BuildIndirectBr;
if (CHECKS) {
check(B);
check(Addr);
}
return invokePPP(B, Addr, NumDests, __functionAddress);
}
// --- [ LLVMBuildInvoke ] ---
public static long nLLVMBuildInvoke(long Builder, long Fn, long Args, int NumArgs, long Then, long Catch, long Name) {
long __functionAddress = Functions.BuildInvoke;
if (CHECKS) {
check(Builder);
check(Fn);
check(Then);
check(Catch);
}
return invokePPPPPPP(Builder, Fn, Args, NumArgs, Then, Catch, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInvoke(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("LLVMBasicBlockRef") long Then, @NativeType("LLVMBasicBlockRef") long Catch, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildInvoke(Builder, Fn, memAddress(Args), Args.remaining(), Then, Catch, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInvoke(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("LLVMBasicBlockRef") long Then, @NativeType("LLVMBasicBlockRef") long Catch, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildInvoke(Builder, Fn, memAddress(Args), Args.remaining(), Then, Catch, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildInvoke2 ] ---
/** Unsafe version of: {@link #LLVMBuildInvoke2 BuildInvoke2} */
public static long nLLVMBuildInvoke2(long Builder, long Ty, long Fn, long Args, int NumArgs, long Then, long Catch, long Name) {
long __functionAddress = Functions.BuildInvoke2;
if (CHECKS) {
check(__functionAddress);
check(Builder);
check(Ty);
check(Fn);
check(Then);
check(Catch);
}
return invokePPPPPPPP(Builder, Ty, Fn, Args, NumArgs, Then, Catch, Name, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildInvoke2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("LLVMBasicBlockRef") long Then, @NativeType("LLVMBasicBlockRef") long Catch, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildInvoke2(Builder, Ty, Fn, memAddress(Args), Args.remaining(), Then, Catch, memAddress(Name));
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildInvoke2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("LLVMBasicBlockRef") long Then, @NativeType("LLVMBasicBlockRef") long Catch, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildInvoke2(Builder, Ty, Fn, memAddress(Args), Args.remaining(), Then, Catch, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildUnreachable ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildUnreachable(@NativeType("LLVMBuilderRef") long Builder) {
long __functionAddress = Functions.BuildUnreachable;
if (CHECKS) {
check(Builder);
}
return invokePP(Builder, __functionAddress);
}
// --- [ LLVMBuildResume ] ---
/** Exception Handling */
@NativeType("LLVMValueRef")
public static long LLVMBuildResume(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Exn) {
long __functionAddress = Functions.BuildResume;
if (CHECKS) {
check(B);
check(Exn);
}
return invokePPP(B, Exn, __functionAddress);
}
// --- [ LLVMBuildLandingPad ] ---
public static long nLLVMBuildLandingPad(long B, long Ty, long PersFn, int NumClauses, long Name) {
long __functionAddress = Functions.BuildLandingPad;
if (CHECKS) {
check(B);
check(Ty);
check(PersFn);
}
return invokePPPPP(B, Ty, PersFn, NumClauses, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildLandingPad(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long PersFn, @NativeType("unsigned int") int NumClauses, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildLandingPad(B, Ty, PersFn, NumClauses, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildLandingPad(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long PersFn, @NativeType("unsigned int") int NumClauses, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildLandingPad(B, Ty, PersFn, NumClauses, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildCleanupRet ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildCleanupRet(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long CatchPad, @NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.BuildCleanupRet;
if (CHECKS) {
check(__functionAddress);
check(B);
check(CatchPad);
check(BB);
}
return invokePPPP(B, CatchPad, BB, __functionAddress);
}
// --- [ LLVMBuildCatchRet ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildCatchRet(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long CatchPad, @NativeType("LLVMBasicBlockRef") long BB) {
long __functionAddress = Functions.BuildCatchRet;
if (CHECKS) {
check(__functionAddress);
check(B);
check(CatchPad);
check(BB);
}
return invokePPPP(B, CatchPad, BB, __functionAddress);
}
// --- [ LLVMBuildCatchPad ] ---
public static long nLLVMBuildCatchPad(long B, long ParentPad, long Args, int NumArgs, long Name) {
long __functionAddress = Functions.BuildCatchPad;
if (CHECKS) {
check(__functionAddress);
check(B);
check(ParentPad);
}
return invokePPPPP(B, ParentPad, Args, NumArgs, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCatchPad(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long ParentPad, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildCatchPad(B, ParentPad, memAddress(Args), Args.remaining(), memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCatchPad(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long ParentPad, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildCatchPad(B, ParentPad, memAddress(Args), Args.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildCleanupPad ] ---
public static long nLLVMBuildCleanupPad(long B, long ParentPad, long Args, int NumArgs, long Name) {
long __functionAddress = Functions.BuildCleanupPad;
if (CHECKS) {
check(__functionAddress);
check(B);
check(ParentPad);
}
return invokePPPPP(B, ParentPad, Args, NumArgs, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCleanupPad(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long ParentPad, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildCleanupPad(B, ParentPad, memAddress(Args), Args.remaining(), memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCleanupPad(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long ParentPad, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildCleanupPad(B, ParentPad, memAddress(Args), Args.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildCatchSwitch ] ---
public static long nLLVMBuildCatchSwitch(long B, long ParentPad, long UnwindBB, int NumHandlers, long Name) {
long __functionAddress = Functions.BuildCatchSwitch;
if (CHECKS) {
check(__functionAddress);
check(B);
check(ParentPad);
check(UnwindBB);
}
return invokePPPPP(B, ParentPad, UnwindBB, NumHandlers, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCatchSwitch(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long ParentPad, @NativeType("LLVMBasicBlockRef") long UnwindBB, @NativeType("unsigned int") int NumHandlers, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildCatchSwitch(B, ParentPad, UnwindBB, NumHandlers, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCatchSwitch(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long ParentPad, @NativeType("LLVMBasicBlockRef") long UnwindBB, @NativeType("unsigned int") int NumHandlers, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildCatchSwitch(B, ParentPad, UnwindBB, NumHandlers, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMAddCase ] ---
/** Add a case to the {@code switch} instruction */
public static void LLVMAddCase(@NativeType("LLVMValueRef") long Switch, @NativeType("LLVMValueRef") long OnVal, @NativeType("LLVMBasicBlockRef") long Dest) {
long __functionAddress = Functions.AddCase;
if (CHECKS) {
check(Switch);
check(OnVal);
check(Dest);
}
invokePPPV(Switch, OnVal, Dest, __functionAddress);
}
// --- [ LLVMAddDestination ] ---
/** Add a destination to the {@code indirectbr} instruction */
public static void LLVMAddDestination(@NativeType("LLVMValueRef") long IndirectBr, @NativeType("LLVMBasicBlockRef") long Dest) {
long __functionAddress = Functions.AddDestination;
if (CHECKS) {
check(IndirectBr);
check(Dest);
}
invokePPV(IndirectBr, Dest, __functionAddress);
}
// --- [ LLVMGetNumClauses ] ---
/** Get the number of clauses on the {@code landingpad} instruction */
@NativeType("unsigned int")
public static int LLVMGetNumClauses(@NativeType("LLVMValueRef") long LandingPad) {
long __functionAddress = Functions.GetNumClauses;
if (CHECKS) {
check(LandingPad);
}
return invokePI(LandingPad, __functionAddress);
}
// --- [ LLVMGetClause ] ---
/** Get the value of the clause at index {@code Idx} on the {@code landingpad} instruction */
@NativeType("LLVMValueRef")
public static long LLVMGetClause(@NativeType("LLVMValueRef") long LandingPad, @NativeType("unsigned int") int Idx) {
long __functionAddress = Functions.GetClause;
if (CHECKS) {
check(LandingPad);
}
return invokePP(LandingPad, Idx, __functionAddress);
}
// --- [ LLVMAddClause ] ---
/** Add a {@code catch} or {@code filter} clause to the {@code landingpad} instruction */
public static void LLVMAddClause(@NativeType("LLVMValueRef") long LandingPad, @NativeType("LLVMValueRef") long ClauseVal) {
long __functionAddress = Functions.AddClause;
if (CHECKS) {
check(LandingPad);
check(ClauseVal);
}
invokePPV(LandingPad, ClauseVal, __functionAddress);
}
// --- [ LLVMIsCleanup ] ---
/** Get the 'cleanup' flag in the {@code landingpad} instruction */
@NativeType("LLVMBool")
public static boolean LLVMIsCleanup(@NativeType("LLVMValueRef") long LandingPad) {
long __functionAddress = Functions.IsCleanup;
if (CHECKS) {
check(LandingPad);
}
return invokePI(LandingPad, __functionAddress) != 0;
}
// --- [ LLVMSetCleanup ] ---
/** Set the 'cleanup' flag in the {@code landingpad} instruction */
public static void LLVMSetCleanup(@NativeType("LLVMValueRef") long LandingPad, @NativeType("LLVMBool") boolean Val) {
long __functionAddress = Functions.SetCleanup;
if (CHECKS) {
check(LandingPad);
}
invokePV(LandingPad, Val ? 1 : 0, __functionAddress);
}
// --- [ LLVMAddHandler ] ---
/** Add a destination to the {@code catchswitch} instruction */
public static void LLVMAddHandler(@NativeType("LLVMValueRef") long CatchSwitch, @NativeType("LLVMBasicBlockRef") long Dest) {
long __functionAddress = Functions.AddHandler;
if (CHECKS) {
check(__functionAddress);
check(CatchSwitch);
check(Dest);
}
invokePPV(CatchSwitch, Dest, __functionAddress);
}
// --- [ LLVMGetNumHandlers ] ---
/** Get the number of handlers on the {@code catchswitch} instruction */
@NativeType("unsigned int")
public static int LLVMGetNumHandlers(@NativeType("LLVMValueRef") long CatchSwitch) {
long __functionAddress = Functions.GetNumHandlers;
if (CHECKS) {
check(__functionAddress);
check(CatchSwitch);
}
return invokePI(CatchSwitch, __functionAddress);
}
// --- [ LLVMGetHandlers ] ---
/** Unsafe version of: {@link #LLVMGetHandlers GetHandlers} */
public static void nLLVMGetHandlers(long CatchSwitch, long Handlers) {
long __functionAddress = Functions.GetHandlers;
if (CHECKS) {
check(__functionAddress);
check(CatchSwitch);
}
invokePPV(CatchSwitch, Handlers, __functionAddress);
}
/**
* Obtain the basic blocks acting as handlers for a {@code catchswitch} instruction.
*
* The {@code Handlers} parameter should point to a pre-allocated array of {@code LLVMBasicBlockRefs} at least {@link #LLVMGetNumHandlers GetNumHandlers} large. On return, the
* first {@code LLVMGetNumHandlers()} entries in the array will be populated with {@code LLVMBasicBlockRef} instances.
*
* @param CatchSwitch the {@code catchswitch} instruction to operate on
* @param Handlers memory address of an array to be filled with basic blocks
*/
public static void LLVMGetHandlers(@NativeType("LLVMValueRef") long CatchSwitch, @NativeType("LLVMBasicBlockRef *") PointerBuffer Handlers) {
if (CHECKS) {
if (DEBUG) {
check(Handlers, LLVMGetNumHandlers(CatchSwitch));
}
}
nLLVMGetHandlers(CatchSwitch, memAddress(Handlers));
}
// --- [ LLVMGetArgOperand ] ---
/** Get the number of {@code funcletpad} arguments. */
@NativeType("LLVMValueRef")
public static long LLVMGetArgOperand(@NativeType("LLVMValueRef") long Funclet, @NativeType("unsigned int") int i) {
long __functionAddress = Functions.GetArgOperand;
if (CHECKS) {
check(__functionAddress);
check(Funclet);
}
return invokePP(Funclet, i, __functionAddress);
}
// --- [ LLVMSetArgOperand ] ---
/** Set a {@code funcletpad} argument at the given index. */
public static void LLVMSetArgOperand(@NativeType("LLVMValueRef") long Funclet, @NativeType("unsigned int") int i, @NativeType("LLVMValueRef") long value) {
long __functionAddress = Functions.SetArgOperand;
if (CHECKS) {
check(__functionAddress);
check(Funclet);
check(value);
}
invokePPV(Funclet, i, value, __functionAddress);
}
// --- [ LLVMGetParentCatchSwitch ] ---
/**
* Get the parent {@code catchswitch} instruction of a {@code catchpad} instruction.
*
* This only works on {@code llvm::CatchPadInst} instructions.
*/
@NativeType("LLVMValueRef")
public static long LLVMGetParentCatchSwitch(@NativeType("LLVMValueRef") long CatchPad) {
long __functionAddress = Functions.GetParentCatchSwitch;
if (CHECKS) {
check(__functionAddress);
check(CatchPad);
}
return invokePP(CatchPad, __functionAddress);
}
// --- [ LLVMSetParentCatchSwitch ] ---
/**
* Set the parent {@code catchswitch} instruction of a {@code catchpad} instruction.
*
* This only works on {@code llvm::CatchPadInst} instructions.
*/
public static void LLVMSetParentCatchSwitch(@NativeType("LLVMValueRef") long CatchPad, @NativeType("LLVMValueRef") long CatchSwitch) {
long __functionAddress = Functions.SetParentCatchSwitch;
if (CHECKS) {
check(__functionAddress);
check(CatchPad);
check(CatchSwitch);
}
invokePPV(CatchPad, CatchSwitch, __functionAddress);
}
// --- [ LLVMBuildAdd ] ---
/** Unsafe version of: {@link #LLVMBuildAdd BuildAdd} */
public static long nLLVMBuildAdd(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildAdd;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
/** Arithmetic */
@NativeType("LLVMValueRef")
public static long LLVMBuildAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildAdd(Builder, LHS, RHS, memAddress(Name));
}
/** Arithmetic */
@NativeType("LLVMValueRef")
public static long LLVMBuildAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildAdd(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNSWAdd ] ---
public static long nLLVMBuildNSWAdd(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildNSWAdd;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNSWAdd(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNSWAdd(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNUWAdd ] ---
public static long nLLVMBuildNUWAdd(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildNUWAdd;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNUWAdd(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNUWAdd(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFAdd ] ---
public static long nLLVMBuildFAdd(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildFAdd;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFAdd(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFAdd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFAdd(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildSub ] ---
public static long nLLVMBuildSub(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildSub;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildSub(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildSub(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNSWSub ] ---
public static long nLLVMBuildNSWSub(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildNSWSub;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNSWSub(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNSWSub(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNUWSub ] ---
public static long nLLVMBuildNUWSub(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildNUWSub;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNUWSub(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNUWSub(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFSub ] ---
public static long nLLVMBuildFSub(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildFSub;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFSub(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFSub(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFSub(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildMul ] ---
public static long nLLVMBuildMul(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildMul;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildMul(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildMul(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNSWMul ] ---
public static long nLLVMBuildNSWMul(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildNSWMul;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNSWMul(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNSWMul(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNUWMul ] ---
public static long nLLVMBuildNUWMul(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildNUWMul;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNUWMul(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNUWMul(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFMul ] ---
public static long nLLVMBuildFMul(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildFMul;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFMul(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFMul(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFMul(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildUDiv ] ---
public static long nLLVMBuildUDiv(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildUDiv;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildUDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildUDiv(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildUDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildUDiv(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildExactUDiv ] ---
public static long nLLVMBuildExactUDiv(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildExactUDiv;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExactUDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildExactUDiv(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExactUDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildExactUDiv(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildSDiv ] ---
public static long nLLVMBuildSDiv(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildSDiv;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildSDiv(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildSDiv(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildExactSDiv ] ---
public static long nLLVMBuildExactSDiv(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildExactSDiv;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExactSDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildExactSDiv(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExactSDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildExactSDiv(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFDiv ] ---
public static long nLLVMBuildFDiv(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildFDiv;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFDiv(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFDiv(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFDiv(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildURem ] ---
public static long nLLVMBuildURem(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildURem;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildURem(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildURem(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildURem(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildURem(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildSRem ] ---
public static long nLLVMBuildSRem(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildSRem;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSRem(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildSRem(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSRem(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildSRem(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFRem ] ---
public static long nLLVMBuildFRem(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildFRem;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFRem(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFRem(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFRem(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFRem(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildShl ] ---
public static long nLLVMBuildShl(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildShl;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildShl(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildShl(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildShl(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildShl(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildLShr ] ---
public static long nLLVMBuildLShr(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildLShr;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildLShr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildLShr(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildLShr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildLShr(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildAShr ] ---
public static long nLLVMBuildAShr(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildAShr;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAShr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildAShr(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAShr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildAShr(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildAnd ] ---
public static long nLLVMBuildAnd(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildAnd;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAnd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildAnd(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAnd(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildAnd(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildOr ] ---
public static long nLLVMBuildOr(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildOr;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildOr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildOr(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildOr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildOr(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildXor ] ---
public static long nLLVMBuildXor(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildXor;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildXor(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildXor(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildXor(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildXor(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildBinOp ] ---
public static long nLLVMBuildBinOp(long B, int Op, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildBinOp;
if (CHECKS) {
check(B);
check(LHS);
check(RHS);
}
return invokePPPPP(B, Op, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildBinOp(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMOpcode") int Op, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildBinOp(B, Op, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildBinOp(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMOpcode") int Op, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildBinOp(B, Op, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNeg ] ---
public static long nLLVMBuildNeg(long Builder, long V, long Name) {
long __functionAddress = Functions.BuildNeg;
if (CHECKS) {
check(Builder);
check(V);
}
return invokePPPP(Builder, V, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNeg(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNeg(Builder, V, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNeg(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNeg(Builder, V, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNSWNeg ] ---
public static long nLLVMBuildNSWNeg(long B, long V, long Name) {
long __functionAddress = Functions.BuildNSWNeg;
if (CHECKS) {
check(B);
check(V);
}
return invokePPPP(B, V, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWNeg(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long V, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNSWNeg(B, V, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNSWNeg(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long V, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNSWNeg(B, V, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNUWNeg ] ---
public static long nLLVMBuildNUWNeg(long B, long V, long Name) {
long __functionAddress = Functions.BuildNUWNeg;
if (CHECKS) {
check(B);
check(V);
}
return invokePPPP(B, V, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWNeg(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long V, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNUWNeg(B, V, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNUWNeg(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long V, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNUWNeg(B, V, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFNeg ] ---
public static long nLLVMBuildFNeg(long Builder, long V, long Name) {
long __functionAddress = Functions.BuildFNeg;
if (CHECKS) {
check(Builder);
check(V);
}
return invokePPPP(Builder, V, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFNeg(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFNeg(Builder, V, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFNeg(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFNeg(Builder, V, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildNot ] ---
public static long nLLVMBuildNot(long Builder, long V, long Name) {
long __functionAddress = Functions.BuildNot;
if (CHECKS) {
check(Builder);
check(V);
}
return invokePPPP(Builder, V, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNot(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildNot(Builder, V, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildNot(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildNot(Builder, V, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildMalloc ] ---
/** Unsafe version of: {@link #LLVMBuildMalloc BuildMalloc} */
public static long nLLVMBuildMalloc(long Builder, long Ty, long Name) {
long __functionAddress = Functions.BuildMalloc;
if (CHECKS) {
check(Builder);
check(Ty);
}
return invokePPPP(Builder, Ty, Name, __functionAddress);
}
/** Memory */
@NativeType("LLVMValueRef")
public static long LLVMBuildMalloc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildMalloc(Builder, Ty, memAddress(Name));
}
/** Memory */
@NativeType("LLVMValueRef")
public static long LLVMBuildMalloc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildMalloc(Builder, Ty, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildArrayMalloc ] ---
public static long nLLVMBuildArrayMalloc(long Builder, long Ty, long Val, long Name) {
long __functionAddress = Functions.BuildArrayMalloc;
if (CHECKS) {
check(Builder);
check(Ty);
check(Val);
}
return invokePPPPP(Builder, Ty, Val, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildArrayMalloc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildArrayMalloc(Builder, Ty, Val, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildArrayMalloc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildArrayMalloc(Builder, Ty, Val, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildMemSet ] ---
/**
* Creates and inserts a memset to the specified pointer and the specified value.
*
* @since 8.0
*/
@NativeType("LLVMValueRef")
public static long LLVMBuildMemSet(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Ptr, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMValueRef") long Len, @NativeType("unsigned") int Align) {
long __functionAddress = Functions.BuildMemSet;
if (CHECKS) {
check(__functionAddress);
check(B);
check(Ptr);
check(Val);
check(Len);
}
return invokePPPPP(B, Ptr, Val, Len, Align, __functionAddress);
}
// --- [ LLVMBuildMemCpy ] ---
/**
* Creates and inserts a memcpy between the specified pointers.
*
* @since 8.0
*/
@NativeType("LLVMValueRef")
public static long LLVMBuildMemCpy(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Dst, @NativeType("unsigned") int DstAlign, @NativeType("LLVMValueRef") long Src, @NativeType("unsigned") int SrcAlign, @NativeType("LLVMValueRef") long Size) {
long __functionAddress = Functions.BuildMemCpy;
if (CHECKS) {
check(__functionAddress);
check(B);
check(Dst);
check(Src);
check(Size);
}
return invokePPPPP(B, Dst, DstAlign, Src, SrcAlign, Size, __functionAddress);
}
// --- [ LLVMBuildMemMove ] ---
/**
* Creates and inserts a memmove between the specified pointers.
*
* @since 8.0
*/
@NativeType("LLVMValueRef")
public static long LLVMBuildMemMove(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Dst, @NativeType("unsigned") int DstAlign, @NativeType("LLVMValueRef") long Src, @NativeType("unsigned") int SrcAlign, @NativeType("LLVMValueRef") long Size) {
long __functionAddress = Functions.BuildMemMove;
if (CHECKS) {
check(__functionAddress);
check(B);
check(Dst);
check(Src);
check(Size);
}
return invokePPPPP(B, Dst, DstAlign, Src, SrcAlign, Size, __functionAddress);
}
// --- [ LLVMBuildAlloca ] ---
public static long nLLVMBuildAlloca(long Builder, long Ty, long Name) {
long __functionAddress = Functions.BuildAlloca;
if (CHECKS) {
check(Builder);
check(Ty);
}
return invokePPPP(Builder, Ty, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAlloca(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildAlloca(Builder, Ty, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAlloca(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildAlloca(Builder, Ty, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildArrayAlloca ] ---
public static long nLLVMBuildArrayAlloca(long Builder, long Ty, long Val, long Name) {
long __functionAddress = Functions.BuildArrayAlloca;
if (CHECKS) {
check(Builder);
check(Ty);
check(Val);
}
return invokePPPPP(Builder, Ty, Val, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildArrayAlloca(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildArrayAlloca(Builder, Ty, Val, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildArrayAlloca(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildArrayAlloca(Builder, Ty, Val, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFree ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildFree(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long PointerVal) {
long __functionAddress = Functions.BuildFree;
if (CHECKS) {
check(Builder);
check(PointerVal);
}
return invokePPP(Builder, PointerVal, __functionAddress);
}
// --- [ LLVMBuildLoad ] ---
public static long nLLVMBuildLoad(long Builder, long PointerVal, long Name) {
long __functionAddress = Functions.BuildLoad;
if (CHECKS) {
check(Builder);
check(PointerVal);
}
return invokePPPP(Builder, PointerVal, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildLoad(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long PointerVal, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildLoad(Builder, PointerVal, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildLoad(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long PointerVal, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildLoad(Builder, PointerVal, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildLoad2 ] ---
/** Unsafe version of: {@link #LLVMBuildLoad2 BuildLoad2} */
public static long nLLVMBuildLoad2(long Builder, long Ty, long PointerVal, long Name) {
long __functionAddress = Functions.BuildLoad2;
if (CHECKS) {
check(__functionAddress);
check(Builder);
check(Ty);
check(PointerVal);
}
return invokePPPPP(Builder, Ty, PointerVal, Name, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildLoad2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long PointerVal, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildLoad2(Builder, Ty, PointerVal, memAddress(Name));
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildLoad2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long PointerVal, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildLoad2(Builder, Ty, PointerVal, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildStore ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildStore(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMValueRef") long Ptr) {
long __functionAddress = Functions.BuildStore;
if (CHECKS) {
check(Builder);
check(Val);
check(Ptr);
}
return invokePPPP(Builder, Val, Ptr, __functionAddress);
}
// --- [ LLVMBuildGEP ] ---
public static long nLLVMBuildGEP(long B, long Pointer, long Indices, int NumIndices, long Name) {
long __functionAddress = Functions.BuildGEP;
if (CHECKS) {
check(B);
check(Pointer);
}
return invokePPPPP(B, Pointer, Indices, NumIndices, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildGEP(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildGEP(B, Pointer, memAddress(Indices), Indices.remaining(), memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildGEP(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildGEP(B, Pointer, memAddress(Indices), Indices.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildInBoundsGEP ] ---
public static long nLLVMBuildInBoundsGEP(long B, long Pointer, long Indices, int NumIndices, long Name) {
long __functionAddress = Functions.BuildInBoundsGEP;
if (CHECKS) {
check(B);
check(Pointer);
}
return invokePPPPP(B, Pointer, Indices, NumIndices, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInBoundsGEP(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildInBoundsGEP(B, Pointer, memAddress(Indices), Indices.remaining(), memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInBoundsGEP(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildInBoundsGEP(B, Pointer, memAddress(Indices), Indices.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildStructGEP ] ---
public static long nLLVMBuildStructGEP(long B, long Pointer, int Idx, long Name) {
long __functionAddress = Functions.BuildStructGEP;
if (CHECKS) {
check(B);
check(Pointer);
}
return invokePPPP(B, Pointer, Idx, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildStructGEP(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Pointer, @NativeType("unsigned int") int Idx, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildStructGEP(B, Pointer, Idx, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildStructGEP(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Pointer, @NativeType("unsigned int") int Idx, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildStructGEP(B, Pointer, Idx, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildGEP2 ] ---
/** Unsafe version of: {@link #LLVMBuildGEP2 BuildGEP2} */
public static long nLLVMBuildGEP2(long B, long Ty, long Pointer, long Indices, int NumIndices, long Name) {
long __functionAddress = Functions.BuildGEP2;
if (CHECKS) {
check(__functionAddress);
check(B);
check(Ty);
check(Pointer);
}
return invokePPPPPP(B, Ty, Pointer, Indices, NumIndices, Name, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildGEP2(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildGEP2(B, Ty, Pointer, memAddress(Indices), Indices.remaining(), memAddress(Name));
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildGEP2(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildGEP2(B, Ty, Pointer, memAddress(Indices), Indices.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildInBoundsGEP2 ] ---
/** Unsafe version of: {@link #LLVMBuildInBoundsGEP2 BuildInBoundsGEP2} */
public static long nLLVMBuildInBoundsGEP2(long B, long Ty, long Pointer, long Indices, int NumIndices, long Name) {
long __functionAddress = Functions.BuildInBoundsGEP2;
if (CHECKS) {
check(__functionAddress);
check(B);
check(Ty);
check(Pointer);
}
return invokePPPPPP(B, Ty, Pointer, Indices, NumIndices, Name, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildInBoundsGEP2(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildInBoundsGEP2(B, Ty, Pointer, memAddress(Indices), Indices.remaining(), memAddress(Name));
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildInBoundsGEP2(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Pointer, @NativeType("LLVMValueRef *") PointerBuffer Indices, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildInBoundsGEP2(B, Ty, Pointer, memAddress(Indices), Indices.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildStructGEP2 ] ---
/** Unsafe version of: {@link #LLVMBuildStructGEP2 BuildStructGEP2} */
public static long nLLVMBuildStructGEP2(long B, long Ty, long Pointer, int Idx, long Name) {
long __functionAddress = Functions.BuildStructGEP2;
if (CHECKS) {
check(__functionAddress);
check(B);
check(Ty);
check(Pointer);
}
return invokePPPPP(B, Ty, Pointer, Idx, Name, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildStructGEP2(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Pointer, @NativeType("unsigned int") int Idx, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildStructGEP2(B, Ty, Pointer, Idx, memAddress(Name));
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildStructGEP2(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Pointer, @NativeType("unsigned int") int Idx, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildStructGEP2(B, Ty, Pointer, Idx, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildGlobalString ] ---
public static long nLLVMBuildGlobalString(long B, long Str, long Name) {
long __functionAddress = Functions.BuildGlobalString;
if (CHECKS) {
check(B);
}
return invokePPPP(B, Str, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildGlobalString(@NativeType("LLVMBuilderRef") long B, @NativeType("char const *") ByteBuffer Str, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Str);
checkNT1(Name);
}
return nLLVMBuildGlobalString(B, memAddress(Str), memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildGlobalString(@NativeType("LLVMBuilderRef") long B, @NativeType("char const *") CharSequence Str, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Str, true);
long StrEncoded = stack.getPointerAddress();
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildGlobalString(B, StrEncoded, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildGlobalStringPtr ] ---
public static long nLLVMBuildGlobalStringPtr(long B, long Str, long Name) {
long __functionAddress = Functions.BuildGlobalStringPtr;
if (CHECKS) {
check(B);
}
return invokePPPP(B, Str, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildGlobalStringPtr(@NativeType("LLVMBuilderRef") long B, @NativeType("char const *") ByteBuffer Str, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Str);
checkNT1(Name);
}
return nLLVMBuildGlobalStringPtr(B, memAddress(Str), memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildGlobalStringPtr(@NativeType("LLVMBuilderRef") long B, @NativeType("char const *") CharSequence Str, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Str, true);
long StrEncoded = stack.getPointerAddress();
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildGlobalStringPtr(B, StrEncoded, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetVolatile ] ---
@NativeType("LLVMBool")
public static boolean LLVMGetVolatile(@NativeType("LLVMValueRef") long MemoryAccessInst) {
long __functionAddress = Functions.GetVolatile;
if (CHECKS) {
check(MemoryAccessInst);
}
return invokePI(MemoryAccessInst, __functionAddress) != 0;
}
// --- [ LLVMSetVolatile ] ---
public static void LLVMSetVolatile(@NativeType("LLVMValueRef") long MemoryAccessInst, @NativeType("LLVMBool") boolean IsVolatile) {
long __functionAddress = Functions.SetVolatile;
if (CHECKS) {
check(MemoryAccessInst);
}
invokePV(MemoryAccessInst, IsVolatile ? 1 : 0, __functionAddress);
}
// --- [ LLVMGetOrdering ] ---
@NativeType("LLVMAtomicOrdering")
public static int LLVMGetOrdering(@NativeType("LLVMValueRef") long MemoryAccessInst) {
long __functionAddress = Functions.GetOrdering;
if (CHECKS) {
check(MemoryAccessInst);
}
return invokePI(MemoryAccessInst, __functionAddress);
}
// --- [ LLVMSetOrdering ] ---
public static void LLVMSetOrdering(@NativeType("LLVMValueRef") long MemoryAccessInst, @NativeType("LLVMAtomicOrdering") int Ordering) {
long __functionAddress = Functions.SetOrdering;
if (CHECKS) {
check(MemoryAccessInst);
}
invokePV(MemoryAccessInst, Ordering, __functionAddress);
}
// --- [ LLVMBuildTrunc ] ---
/** Unsafe version of: {@link #LLVMBuildTrunc BuildTrunc} */
public static long nLLVMBuildTrunc(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildTrunc;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
/** Casts */
@NativeType("LLVMValueRef")
public static long LLVMBuildTrunc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildTrunc(Builder, Val, DestTy, memAddress(Name));
}
/** Casts */
@NativeType("LLVMValueRef")
public static long LLVMBuildTrunc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildTrunc(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildZExt ] ---
public static long nLLVMBuildZExt(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildZExt;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildZExt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildZExt(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildZExt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildZExt(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildSExt ] ---
public static long nLLVMBuildSExt(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildSExt;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSExt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildSExt(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSExt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildSExt(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFPToUI ] ---
public static long nLLVMBuildFPToUI(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildFPToUI;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPToUI(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFPToUI(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPToUI(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFPToUI(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFPToSI ] ---
public static long nLLVMBuildFPToSI(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildFPToSI;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPToSI(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFPToSI(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPToSI(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFPToSI(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildUIToFP ] ---
public static long nLLVMBuildUIToFP(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildUIToFP;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildUIToFP(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildUIToFP(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildUIToFP(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildUIToFP(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildSIToFP ] ---
public static long nLLVMBuildSIToFP(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildSIToFP;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSIToFP(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildSIToFP(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSIToFP(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildSIToFP(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFPTrunc ] ---
public static long nLLVMBuildFPTrunc(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildFPTrunc;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPTrunc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFPTrunc(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPTrunc(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFPTrunc(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFPExt ] ---
public static long nLLVMBuildFPExt(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildFPExt;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPExt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFPExt(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPExt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFPExt(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildPtrToInt ] ---
public static long nLLVMBuildPtrToInt(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildPtrToInt;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildPtrToInt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildPtrToInt(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildPtrToInt(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildPtrToInt(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildIntToPtr ] ---
public static long nLLVMBuildIntToPtr(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildIntToPtr;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIntToPtr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildIntToPtr(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIntToPtr(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildIntToPtr(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildBitCast ] ---
public static long nLLVMBuildBitCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildBitCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildBitCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildBitCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildAddrSpaceCast ] ---
public static long nLLVMBuildAddrSpaceCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildAddrSpaceCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAddrSpaceCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildAddrSpaceCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildAddrSpaceCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildAddrSpaceCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildZExtOrBitCast ] ---
public static long nLLVMBuildZExtOrBitCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildZExtOrBitCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildZExtOrBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildZExtOrBitCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildZExtOrBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildZExtOrBitCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildSExtOrBitCast ] ---
public static long nLLVMBuildSExtOrBitCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildSExtOrBitCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSExtOrBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildSExtOrBitCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSExtOrBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildSExtOrBitCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildTruncOrBitCast ] ---
public static long nLLVMBuildTruncOrBitCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildTruncOrBitCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildTruncOrBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildTruncOrBitCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildTruncOrBitCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildTruncOrBitCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildCast ] ---
public static long nLLVMBuildCast(long B, int Op, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildCast;
if (CHECKS) {
check(B);
check(Val);
check(DestTy);
}
return invokePPPPP(B, Op, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCast(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMOpcode") int Op, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildCast(B, Op, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCast(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMOpcode") int Op, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildCast(B, Op, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildPointerCast ] ---
public static long nLLVMBuildPointerCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildPointerCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildPointerCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildPointerCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildPointerCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildPointerCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildPointerCast2 ] ---
/** Unsafe version of: {@link #LLVMBuildPointerCast2 BuildPointerCast2} */
public static long nLLVMBuildPointerCast2(long Builder, long Val, long DestTy, int IsSigned, long Name) {
long __functionAddress = Functions.BuildPointerCast2;
if (CHECKS) {
check(__functionAddress);
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, IsSigned, Name, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildPointerCast2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("LLVMBool") boolean IsSigned, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildPointerCast2(Builder, Val, DestTy, IsSigned ? 1 : 0, memAddress(Name));
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildPointerCast2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("LLVMBool") boolean IsSigned, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildPointerCast2(Builder, Val, DestTy, IsSigned ? 1 : 0, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildIntCast ] ---
public static long nLLVMBuildIntCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildIntCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIntCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildIntCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIntCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildIntCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFPCast ] ---
public static long nLLVMBuildFPCast(long Builder, long Val, long DestTy, long Name) {
long __functionAddress = Functions.BuildFPCast;
if (CHECKS) {
check(Builder);
check(Val);
check(DestTy);
}
return invokePPPPP(Builder, Val, DestTy, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFPCast(Builder, Val, DestTy, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFPCast(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMTypeRef") long DestTy, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFPCast(Builder, Val, DestTy, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildICmp ] ---
/** Unsafe version of: {@link #LLVMBuildICmp BuildICmp} */
public static long nLLVMBuildICmp(long Builder, int Op, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildICmp;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, Op, LHS, RHS, Name, __functionAddress);
}
/** Comparisons */
@NativeType("LLVMValueRef")
public static long LLVMBuildICmp(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMIntPredicate") int Op, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildICmp(Builder, Op, LHS, RHS, memAddress(Name));
}
/** Comparisons */
@NativeType("LLVMValueRef")
public static long LLVMBuildICmp(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMIntPredicate") int Op, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildICmp(Builder, Op, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFCmp ] ---
public static long nLLVMBuildFCmp(long Builder, int Op, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildFCmp;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, Op, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFCmp(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMRealPredicate") int Op, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFCmp(Builder, Op, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFCmp(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMRealPredicate") int Op, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFCmp(Builder, Op, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildPhi ] ---
/** Unsafe version of: {@link #LLVMBuildPhi BuildPhi} */
public static long nLLVMBuildPhi(long Builder, long Ty, long Name) {
long __functionAddress = Functions.BuildPhi;
if (CHECKS) {
check(Builder);
check(Ty);
}
return invokePPPP(Builder, Ty, Name, __functionAddress);
}
/** Miscellaneous instructions */
@NativeType("LLVMValueRef")
public static long LLVMBuildPhi(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildPhi(Builder, Ty, memAddress(Name));
}
/** Miscellaneous instructions */
@NativeType("LLVMValueRef")
public static long LLVMBuildPhi(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildPhi(Builder, Ty, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildCall ] ---
public static long nLLVMBuildCall(long Builder, long Fn, long Args, int NumArgs, long Name) {
long __functionAddress = Functions.BuildCall;
if (CHECKS) {
check(Builder);
check(Fn);
}
return invokePPPPP(Builder, Fn, Args, NumArgs, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCall(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildCall(Builder, Fn, memAddress(Args), Args.remaining(), memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildCall(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildCall(Builder, Fn, memAddress(Args), Args.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildCall2 ] ---
/** Unsafe version of: {@link #LLVMBuildCall2 BuildCall2} */
public static long nLLVMBuildCall2(long Builder, long Ty, long Fn, long Args, int NumArgs, long Name) {
long __functionAddress = Functions.BuildCall2;
if (CHECKS) {
check(__functionAddress);
check(Builder);
check(Ty);
check(Fn);
}
return invokePPPPPP(Builder, Ty, Fn, Args, NumArgs, Name, __functionAddress);
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildCall2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildCall2(Builder, Ty, Fn, memAddress(Args), Args.remaining(), memAddress(Name));
}
/** @since 8.0 */
@NativeType("LLVMValueRef")
public static long LLVMBuildCall2(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMTypeRef") long Ty, @NativeType("LLVMValueRef") long Fn, @NativeType("LLVMValueRef *") PointerBuffer Args, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildCall2(Builder, Ty, Fn, memAddress(Args), Args.remaining(), NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildSelect ] ---
public static long nLLVMBuildSelect(long Builder, long If, long Then, long Else, long Name) {
long __functionAddress = Functions.BuildSelect;
if (CHECKS) {
check(Builder);
check(If);
check(Then);
check(Else);
}
return invokePPPPPP(Builder, If, Then, Else, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSelect(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long If, @NativeType("LLVMValueRef") long Then, @NativeType("LLVMValueRef") long Else, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildSelect(Builder, If, Then, Else, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildSelect(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long If, @NativeType("LLVMValueRef") long Then, @NativeType("LLVMValueRef") long Else, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildSelect(Builder, If, Then, Else, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildVAArg ] ---
public static long nLLVMBuildVAArg(long Builder, long List, long Ty, long Name) {
long __functionAddress = Functions.BuildVAArg;
if (CHECKS) {
check(Builder);
check(List);
check(Ty);
}
return invokePPPPP(Builder, List, Ty, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildVAArg(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long List, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildVAArg(Builder, List, Ty, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildVAArg(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long List, @NativeType("LLVMTypeRef") long Ty, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildVAArg(Builder, List, Ty, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildExtractElement ] ---
public static long nLLVMBuildExtractElement(long Builder, long VecVal, long Index, long Name) {
long __functionAddress = Functions.BuildExtractElement;
if (CHECKS) {
check(Builder);
check(VecVal);
check(Index);
}
return invokePPPPP(Builder, VecVal, Index, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExtractElement(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long VecVal, @NativeType("LLVMValueRef") long Index, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildExtractElement(Builder, VecVal, Index, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExtractElement(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long VecVal, @NativeType("LLVMValueRef") long Index, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildExtractElement(Builder, VecVal, Index, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildInsertElement ] ---
public static long nLLVMBuildInsertElement(long Builder, long VecVal, long EltVal, long Index, long Name) {
long __functionAddress = Functions.BuildInsertElement;
if (CHECKS) {
check(Builder);
check(VecVal);
check(EltVal);
check(Index);
}
return invokePPPPPP(Builder, VecVal, EltVal, Index, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInsertElement(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long VecVal, @NativeType("LLVMValueRef") long EltVal, @NativeType("LLVMValueRef") long Index, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildInsertElement(Builder, VecVal, EltVal, Index, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInsertElement(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long VecVal, @NativeType("LLVMValueRef") long EltVal, @NativeType("LLVMValueRef") long Index, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildInsertElement(Builder, VecVal, EltVal, Index, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildShuffleVector ] ---
public static long nLLVMBuildShuffleVector(long Builder, long V1, long V2, long Mask, long Name) {
long __functionAddress = Functions.BuildShuffleVector;
if (CHECKS) {
check(Builder);
check(V1);
check(V2);
check(Mask);
}
return invokePPPPPP(Builder, V1, V2, Mask, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildShuffleVector(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V1, @NativeType("LLVMValueRef") long V2, @NativeType("LLVMValueRef") long Mask, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildShuffleVector(Builder, V1, V2, Mask, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildShuffleVector(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long V1, @NativeType("LLVMValueRef") long V2, @NativeType("LLVMValueRef") long Mask, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildShuffleVector(Builder, V1, V2, Mask, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildExtractValue ] ---
public static long nLLVMBuildExtractValue(long Builder, long AggVal, int Index, long Name) {
long __functionAddress = Functions.BuildExtractValue;
if (CHECKS) {
check(Builder);
check(AggVal);
}
return invokePPPP(Builder, AggVal, Index, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExtractValue(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long AggVal, @NativeType("unsigned int") int Index, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildExtractValue(Builder, AggVal, Index, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildExtractValue(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long AggVal, @NativeType("unsigned int") int Index, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildExtractValue(Builder, AggVal, Index, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildInsertValue ] ---
public static long nLLVMBuildInsertValue(long Builder, long AggVal, long EltVal, int Index, long Name) {
long __functionAddress = Functions.BuildInsertValue;
if (CHECKS) {
check(Builder);
check(AggVal);
check(EltVal);
}
return invokePPPPP(Builder, AggVal, EltVal, Index, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInsertValue(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long AggVal, @NativeType("LLVMValueRef") long EltVal, @NativeType("unsigned int") int Index, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildInsertValue(Builder, AggVal, EltVal, Index, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildInsertValue(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long AggVal, @NativeType("LLVMValueRef") long EltVal, @NativeType("unsigned int") int Index, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildInsertValue(Builder, AggVal, EltVal, Index, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildIsNull ] ---
public static long nLLVMBuildIsNull(long Builder, long Val, long Name) {
long __functionAddress = Functions.BuildIsNull;
if (CHECKS) {
check(Builder);
check(Val);
}
return invokePPPP(Builder, Val, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIsNull(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildIsNull(Builder, Val, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIsNull(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildIsNull(Builder, Val, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildIsNotNull ] ---
public static long nLLVMBuildIsNotNull(long Builder, long Val, long Name) {
long __functionAddress = Functions.BuildIsNotNull;
if (CHECKS) {
check(Builder);
check(Val);
}
return invokePPPP(Builder, Val, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIsNotNull(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildIsNotNull(Builder, Val, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildIsNotNull(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long Val, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildIsNotNull(Builder, Val, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildPtrDiff ] ---
public static long nLLVMBuildPtrDiff(long Builder, long LHS, long RHS, long Name) {
long __functionAddress = Functions.BuildPtrDiff;
if (CHECKS) {
check(Builder);
check(LHS);
check(RHS);
}
return invokePPPPP(Builder, LHS, RHS, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildPtrDiff(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildPtrDiff(Builder, LHS, RHS, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildPtrDiff(@NativeType("LLVMBuilderRef") long Builder, @NativeType("LLVMValueRef") long LHS, @NativeType("LLVMValueRef") long RHS, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildPtrDiff(Builder, LHS, RHS, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildFence ] ---
public static long nLLVMBuildFence(long B, int ordering, int singleThread, long Name) {
long __functionAddress = Functions.BuildFence;
if (CHECKS) {
check(B);
}
return invokePPP(B, ordering, singleThread, Name, __functionAddress);
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFence(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMAtomicOrdering") int ordering, @NativeType("LLVMBool") boolean singleThread, @NativeType("char const *") ByteBuffer Name) {
if (CHECKS) {
checkNT1(Name);
}
return nLLVMBuildFence(B, ordering, singleThread ? 1 : 0, memAddress(Name));
}
@NativeType("LLVMValueRef")
public static long LLVMBuildFence(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMAtomicOrdering") int ordering, @NativeType("LLVMBool") boolean singleThread, @NativeType("char const *") CharSequence Name) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Name, true);
long NameEncoded = stack.getPointerAddress();
return nLLVMBuildFence(B, ordering, singleThread ? 1 : 0, NameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMBuildAtomicRMW ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildAtomicRMW(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMAtomicRMWBinOp") int op, @NativeType("LLVMValueRef") long PTR, @NativeType("LLVMValueRef") long Val, @NativeType("LLVMAtomicOrdering") int ordering, @NativeType("LLVMBool") boolean singleThread) {
long __functionAddress = Functions.BuildAtomicRMW;
if (CHECKS) {
check(B);
check(PTR);
check(Val);
}
return invokePPPP(B, op, PTR, Val, ordering, singleThread ? 1 : 0, __functionAddress);
}
// --- [ LLVMBuildAtomicCmpXchg ] ---
@NativeType("LLVMValueRef")
public static long LLVMBuildAtomicCmpXchg(@NativeType("LLVMBuilderRef") long B, @NativeType("LLVMValueRef") long Ptr, @NativeType("LLVMValueRef") long Cmp, @NativeType("LLVMValueRef") long New, @NativeType("LLVMAtomicOrdering") int SuccessOrdering, @NativeType("LLVMAtomicOrdering") int FailureOrdering, @NativeType("LLVMBool") boolean SingleThread) {
long __functionAddress = Functions.BuildAtomicCmpXchg;
if (CHECKS) {
check(B);
check(Ptr);
check(Cmp);
check(New);
}
return invokePPPPP(B, Ptr, Cmp, New, SuccessOrdering, FailureOrdering, SingleThread ? 1 : 0, __functionAddress);
}
// --- [ LLVMIsAtomicSingleThread ] ---
@NativeType("LLVMBool")
public static boolean LLVMIsAtomicSingleThread(@NativeType("LLVMValueRef") long AtomicInst) {
long __functionAddress = Functions.IsAtomicSingleThread;
if (CHECKS) {
check(AtomicInst);
}
return invokePI(AtomicInst, __functionAddress) != 0;
}
// --- [ LLVMSetAtomicSingleThread ] ---
public static void LLVMSetAtomicSingleThread(@NativeType("LLVMValueRef") long AtomicInst, @NativeType("LLVMBool") boolean SingleThread) {
long __functionAddress = Functions.SetAtomicSingleThread;
if (CHECKS) {
check(AtomicInst);
}
invokePV(AtomicInst, SingleThread ? 1 : 0, __functionAddress);
}
// --- [ LLVMGetCmpXchgSuccessOrdering ] ---
@NativeType("LLVMAtomicOrdering")
public static int LLVMGetCmpXchgSuccessOrdering(@NativeType("LLVMValueRef") long CmpXchgInst) {
long __functionAddress = Functions.GetCmpXchgSuccessOrdering;
if (CHECKS) {
check(CmpXchgInst);
}
return invokePI(CmpXchgInst, __functionAddress);
}
// --- [ LLVMSetCmpXchgSuccessOrdering ] ---
public static void LLVMSetCmpXchgSuccessOrdering(@NativeType("LLVMValueRef") long CmpXchgInst, @NativeType("LLVMAtomicOrdering") int Ordering) {
long __functionAddress = Functions.SetCmpXchgSuccessOrdering;
if (CHECKS) {
check(CmpXchgInst);
}
invokePV(CmpXchgInst, Ordering, __functionAddress);
}
// --- [ LLVMGetCmpXchgFailureOrdering ] ---
@NativeType("LLVMAtomicOrdering")
public static int LLVMGetCmpXchgFailureOrdering(@NativeType("LLVMValueRef") long CmpXchgInst) {
long __functionAddress = Functions.GetCmpXchgFailureOrdering;
if (CHECKS) {
check(CmpXchgInst);
}
return invokePI(CmpXchgInst, __functionAddress);
}
// --- [ LLVMSetCmpXchgFailureOrdering ] ---
public static void LLVMSetCmpXchgFailureOrdering(@NativeType("LLVMValueRef") long CmpXchgInst, @NativeType("LLVMAtomicOrdering") int Ordering) {
long __functionAddress = Functions.SetCmpXchgFailureOrdering;
if (CHECKS) {
check(CmpXchgInst);
}
invokePV(CmpXchgInst, Ordering, __functionAddress);
}
// --- [ LLVMCreateModuleProviderForExistingModule ] ---
/**
* Changes the type of {@code M} so it can be passed to {@code FunctionPassManagers} and the JIT. They take {@code ModuleProviders} for historical
* reasons.
*/
@NativeType("LLVMModuleProviderRef")
public static long LLVMCreateModuleProviderForExistingModule(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.CreateModuleProviderForExistingModule;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMDisposeModuleProvider ] ---
/** Destroys the module {@code M}. */
public static void LLVMDisposeModuleProvider(@NativeType("LLVMModuleProviderRef") long M) {
long __functionAddress = Functions.DisposeModuleProvider;
if (CHECKS) {
check(M);
}
invokePV(M, __functionAddress);
}
// --- [ LLVMCreateMemoryBufferWithContentsOfFile ] ---
public static int nLLVMCreateMemoryBufferWithContentsOfFile(long Path, long OutMemBuf, long OutMessage) {
long __functionAddress = Functions.CreateMemoryBufferWithContentsOfFile;
return invokePPPI(Path, OutMemBuf, OutMessage, __functionAddress);
}
@NativeType("LLVMBool")
public static boolean LLVMCreateMemoryBufferWithContentsOfFile(@NativeType("char const *") ByteBuffer Path, @NativeType("LLVMMemoryBufferRef *") PointerBuffer OutMemBuf, @NativeType("char **") PointerBuffer OutMessage) {
if (CHECKS) {
checkNT1(Path);
check(OutMemBuf, 1);
check(OutMessage, 1);
}
return nLLVMCreateMemoryBufferWithContentsOfFile(memAddress(Path), memAddress(OutMemBuf), memAddress(OutMessage)) != 0;
}
@NativeType("LLVMBool")
public static boolean LLVMCreateMemoryBufferWithContentsOfFile(@NativeType("char const *") CharSequence Path, @NativeType("LLVMMemoryBufferRef *") PointerBuffer OutMemBuf, @NativeType("char **") PointerBuffer OutMessage) {
if (CHECKS) {
check(OutMemBuf, 1);
check(OutMessage, 1);
}
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(Path, true);
long PathEncoded = stack.getPointerAddress();
return nLLVMCreateMemoryBufferWithContentsOfFile(PathEncoded, memAddress(OutMemBuf), memAddress(OutMessage)) != 0;
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMCreateMemoryBufferWithSTDIN ] ---
public static int nLLVMCreateMemoryBufferWithSTDIN(long OutMemBuf, long OutMessage) {
long __functionAddress = Functions.CreateMemoryBufferWithSTDIN;
return invokePPI(OutMemBuf, OutMessage, __functionAddress);
}
@NativeType("LLVMBool")
public static boolean LLVMCreateMemoryBufferWithSTDIN(@NativeType("LLVMMemoryBufferRef *") PointerBuffer OutMemBuf, @NativeType("char **") PointerBuffer OutMessage) {
if (CHECKS) {
check(OutMemBuf, 1);
check(OutMessage, 1);
}
return nLLVMCreateMemoryBufferWithSTDIN(memAddress(OutMemBuf), memAddress(OutMessage)) != 0;
}
// --- [ LLVMCreateMemoryBufferWithMemoryRange ] ---
public static long nLLVMCreateMemoryBufferWithMemoryRange(long InputData, long InputDataLength, long BufferName, int RequiresNullTerminator) {
long __functionAddress = Functions.CreateMemoryBufferWithMemoryRange;
return invokePPPP(InputData, InputDataLength, BufferName, RequiresNullTerminator, __functionAddress);
}
@NativeType("LLVMMemoryBufferRef")
public static long LLVMCreateMemoryBufferWithMemoryRange(@NativeType("char const *") ByteBuffer InputData, @NativeType("char const *") ByteBuffer BufferName, @NativeType("LLVMBool") boolean RequiresNullTerminator) {
if (CHECKS) {
checkNT1(BufferName);
}
return nLLVMCreateMemoryBufferWithMemoryRange(memAddress(InputData), InputData.remaining(), memAddress(BufferName), RequiresNullTerminator ? 1 : 0);
}
@NativeType("LLVMMemoryBufferRef")
public static long LLVMCreateMemoryBufferWithMemoryRange(@NativeType("char const *") ByteBuffer InputData, @NativeType("char const *") CharSequence BufferName, @NativeType("LLVMBool") boolean RequiresNullTerminator) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(BufferName, true);
long BufferNameEncoded = stack.getPointerAddress();
return nLLVMCreateMemoryBufferWithMemoryRange(memAddress(InputData), InputData.remaining(), BufferNameEncoded, RequiresNullTerminator ? 1 : 0);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMCreateMemoryBufferWithMemoryRangeCopy ] ---
public static long nLLVMCreateMemoryBufferWithMemoryRangeCopy(long InputData, long InputDataLength, long BufferName) {
long __functionAddress = Functions.CreateMemoryBufferWithMemoryRangeCopy;
return invokePPPP(InputData, InputDataLength, BufferName, __functionAddress);
}
@NativeType("LLVMMemoryBufferRef")
public static long LLVMCreateMemoryBufferWithMemoryRangeCopy(@NativeType("char const *") ByteBuffer InputData, @NativeType("char const *") ByteBuffer BufferName) {
if (CHECKS) {
checkNT1(BufferName);
}
return nLLVMCreateMemoryBufferWithMemoryRangeCopy(memAddress(InputData), InputData.remaining(), memAddress(BufferName));
}
@NativeType("LLVMMemoryBufferRef")
public static long LLVMCreateMemoryBufferWithMemoryRangeCopy(@NativeType("char const *") ByteBuffer InputData, @NativeType("char const *") CharSequence BufferName) {
MemoryStack stack = stackGet(); int stackPointer = stack.getPointer();
try {
stack.nUTF8(BufferName, true);
long BufferNameEncoded = stack.getPointerAddress();
return nLLVMCreateMemoryBufferWithMemoryRangeCopy(memAddress(InputData), InputData.remaining(), BufferNameEncoded);
} finally {
stack.setPointer(stackPointer);
}
}
// --- [ LLVMGetBufferStart ] ---
public static long nLLVMGetBufferStart(long MemBuf) {
long __functionAddress = Functions.GetBufferStart;
if (CHECKS) {
check(MemBuf);
}
return invokePP(MemBuf, __functionAddress);
}
@Nullable
@NativeType("char const *")
public static String LLVMGetBufferStart(@NativeType("LLVMMemoryBufferRef") long MemBuf) {
long __result = nLLVMGetBufferStart(MemBuf);
return memUTF8Safe(__result);
}
// --- [ LLVMGetBufferSize ] ---
@NativeType("size_t")
public static long LLVMGetBufferSize(@NativeType("LLVMMemoryBufferRef") long MemBuf) {
long __functionAddress = Functions.GetBufferSize;
if (CHECKS) {
check(MemBuf);
}
return invokePP(MemBuf, __functionAddress);
}
// --- [ LLVMDisposeMemoryBuffer ] ---
public static void LLVMDisposeMemoryBuffer(@NativeType("LLVMMemoryBufferRef") long MemBuf) {
long __functionAddress = Functions.DisposeMemoryBuffer;
if (CHECKS) {
check(MemBuf);
}
invokePV(MemBuf, __functionAddress);
}
// --- [ LLVMGetGlobalPassRegistry ] ---
/** Return the global pass registry, for use with initialization functions. */
@NativeType("LLVMPassRegistryRef")
public static long LLVMGetGlobalPassRegistry() {
long __functionAddress = Functions.GetGlobalPassRegistry;
return invokeP(__functionAddress);
}
// --- [ LLVMCreatePassManager ] ---
/** Constructs a new whole-module pass pipeline. This type of pipeline is suitable for link-time optimization and whole-module transformations. */
@NativeType("LLVMPassManagerRef")
public static long LLVMCreatePassManager() {
long __functionAddress = Functions.CreatePassManager;
return invokeP(__functionAddress);
}
// --- [ 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.
*/
@NativeType("LLVMPassManagerRef")
public static long LLVMCreateFunctionPassManagerForModule(@NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.CreateFunctionPassManagerForModule;
if (CHECKS) {
check(M);
}
return invokePP(M, __functionAddress);
}
// --- [ LLVMCreateFunctionPassManager ] ---
/** Deprecated: Use {@link #LLVMCreateFunctionPassManagerForModule CreateFunctionPassManagerForModule} instead. */
@NativeType("LLVMPassManagerRef")
public static long LLVMCreateFunctionPassManager(@NativeType("LLVMModuleProviderRef") long MP) {
long __functionAddress = Functions.CreateFunctionPassManager;
if (CHECKS) {
check(MP);
}
return invokePP(MP, __functionAddress);
}
// --- [ 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.
*/
@NativeType("LLVMBool")
public static boolean LLVMRunPassManager(@NativeType("LLVMPassManagerRef") long PM, @NativeType("LLVMModuleRef") long M) {
long __functionAddress = Functions.RunPassManager;
if (CHECKS) {
check(PM);
check(M);
}
return invokePPI(PM, M, __functionAddress) != 0;
}
// --- [ 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. */
@NativeType("LLVMBool")
public static boolean LLVMInitializeFunctionPassManager(@NativeType("LLVMPassManagerRef") long FPM) {
long __functionAddress = Functions.InitializeFunctionPassManager;
if (CHECKS) {
check(FPM);
}
return invokePI(FPM, __functionAddress) != 0;
}
// --- [ 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.
*/
@NativeType("LLVMBool")
public static boolean LLVMRunFunctionPassManager(@NativeType("LLVMPassManagerRef") long FPM, @NativeType("LLVMValueRef") long F) {
long __functionAddress = Functions.RunFunctionPassManager;
if (CHECKS) {
check(FPM);
check(F);
}
return invokePPI(FPM, F, __functionAddress) != 0;
}
// --- [ 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. */
@NativeType("LLVMBool")
public static boolean LLVMFinalizeFunctionPassManager(@NativeType("LLVMPassManagerRef") long FPM) {
long __functionAddress = Functions.FinalizeFunctionPassManager;
if (CHECKS) {
check(FPM);
}
return invokePI(FPM, __functionAddress) != 0;
}
// --- [ LLVMDisposePassManager ] ---
/** Frees the memory of a pass pipeline. For function pipelines, does not free the module provider. */
public static void LLVMDisposePassManager(@NativeType("LLVMPassManagerRef") long PM) {
long __functionAddress = Functions.DisposePassManager;
if (CHECKS) {
check(PM);
}
invokePV(PM, __functionAddress);
}
// --- [ LLVMStartMultithreaded ] ---
/**
* Deprecated: Multi-threading can only be enabled/disabled with the compile time define {@code LLVM_ENABLE_THREADS}. This function always returns
* {@link #LLVMIsMultithreaded IsMultithreaded}.
*/
@NativeType("LLVMBool")
public static boolean LLVMStartMultithreaded() {
long __functionAddress = Functions.StartMultithreaded;
return invokeI(__functionAddress) != 0;
}
// --- [ LLVMStopMultithreaded ] ---
/** Deprecated: Multi-threading can only be enabled/disabled with the compile time define {@code LLVM_ENABLE_THREADS}. */
public static void LLVMStopMultithreaded() {
long __functionAddress = Functions.StopMultithreaded;
invokeV(__functionAddress);
}
// --- [ LLVMIsMultithreaded ] ---
/** Check whether LLVM is executing in thread-safe mode or not. */
@NativeType("LLVMBool")
public static boolean LLVMIsMultithreaded() {
long __functionAddress = Functions.IsMultithreaded;
return invokeI(__functionAddress) != 0;
}
}