Package org.lwjgl.llvm
Class LLVMTarget
- java.lang.Object
-
- org.lwjgl.llvm.LLVMTarget
-
public class LLVMTarget extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LLVMTarget.Functions
Contains the function pointers loaded fromLLVMCore.getLibrary()
.
-
Field Summary
Fields Modifier and Type Field Description static int
LLVMBigEndian
LLVMLittleEndianenum LLVMByteOrdering
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static int
LLVMABIAlignmentOfType(long TD, long Ty)
Computes the ABI alignment of a type in bytes for a target.static long
LLVMABISizeOfType(long TD, long Ty)
Computes the ABI size of a type in bytes for a target.static void
LLVMAddTargetLibraryInfo(long TLI, long PM)
Adds target library information to a pass manager.static int
LLVMByteOrder(long TD)
Returns the byte order of a target, eitherBigEndian
orLittleEndian
.static int
LLVMCallFrameAlignmentOfType(long TD, long Ty)
Computes the call frame alignment of a type in bytes for a target.static java.lang.String
LLVMCopyStringRepOfTargetData(long TD)
Converts target data to a target layout string.static long
LLVMCreateTargetData(java.lang.CharSequence StringRep)
Creates target data from a target layout string.static long
LLVMCreateTargetData(java.nio.ByteBuffer StringRep)
Creates target data from a target layout string.static void
LLVMDisposeTargetData(long TD)
Deallocates aTargetData
.static int
LLVMElementAtOffset(long TD, long StructTy, long Offset)
Computes the structure element that contains the byte offset for a target.static long
LLVMGetModuleDataLayout(long M)
Obtain the data layout for a module.static long
LLVMIntPtrType(long TD)
Returns the integer type that is the same size as a pointer on a target.static long
LLVMIntPtrTypeForAS(long TD, int AS)
Returns the integer type that is the same size as a pointer on a target.static long
LLVMIntPtrTypeForASInContext(long C, long TD, int AS)
Returns the integer type that is the same size as a pointer on a target.static long
LLVMIntPtrTypeInContext(long C, long TD)
Returns the integer type that is the same size as a pointer on a target.static long
LLVMOffsetOfElement(long TD, long StructTy, int Element)
Computes the byte offset of the indexed struct element for a target.static int
LLVMPointerSize(long TD)
Returns the pointer size in bytes for a target.static int
LLVMPointerSizeForAS(long TD, int AS)
Returns the pointer size in bytes for a target for a specified address space.static int
LLVMPreferredAlignmentOfGlobal(long TD, long GlobalVar)
Computes the preferred alignment of a global variable in bytes for a target.static int
LLVMPreferredAlignmentOfType(long TD, long Ty)
Computes the preferred alignment of a type in bytes for a target.static void
LLVMSetModuleDataLayout(long M, long DL)
Set the data layout for a module.static long
LLVMSizeOfTypeInBits(long TD, long Ty)
Computes the size of a type in bytes for a target.static long
LLVMStoreSizeOfType(long TD, long Ty)
Computes the storage size of a type in bytes for a target.static long
nLLVMCopyStringRepOfTargetData(long TD)
Unsafe version of:CopyStringRepOfTargetData
static long
nLLVMCreateTargetData(long StringRep)
Unsafe version of:CreateTargetData
-
-
-
Method Detail
-
LLVMGetModuleDataLayout
public static long LLVMGetModuleDataLayout(long M)
Obtain the data layout for a module.
-
LLVMSetModuleDataLayout
public static void LLVMSetModuleDataLayout(long M, long DL)
Set the data layout for a module.
-
nLLVMCreateTargetData
public static long nLLVMCreateTargetData(long StringRep)
Unsafe version of:CreateTargetData
-
LLVMCreateTargetData
public static long LLVMCreateTargetData(java.nio.ByteBuffer StringRep) public static long LLVMCreateTargetData(java.lang.CharSequence StringRep)
Creates target data from a target layout string. See the constructorllvm::DataLayout::DataLayout
.
-
LLVMDisposeTargetData
public static void LLVMDisposeTargetData(long TD)
Deallocates aTargetData
. See the destructorllvm::DataLayout::~DataLayout
.
-
LLVMAddTargetLibraryInfo
public static void LLVMAddTargetLibraryInfo(long TLI, long PM)
Adds target library information to a pass manager. This does not take ownership of the target library info. See the methodllvm::PassManagerBase::add
.
-
nLLVMCopyStringRepOfTargetData
public static long nLLVMCopyStringRepOfTargetData(long TD)
Unsafe version of:CopyStringRepOfTargetData
-
LLVMCopyStringRepOfTargetData
@Nullable public static java.lang.String LLVMCopyStringRepOfTargetData(long TD)
Converts target data to a target layout string. The string must be disposed withDisposeMessage
. See the constructorllvm::DataLayout::DataLayout
.
-
LLVMByteOrder
public static int LLVMByteOrder(long TD)
Returns the byte order of a target, eitherBigEndian
orLittleEndian
. See the methodllvm::DataLayout::isLittleEndian
.
-
LLVMPointerSize
public static int LLVMPointerSize(long TD)
Returns the pointer size in bytes for a target. See the methodllvm::DataLayout::getPointerSize
.
-
LLVMPointerSizeForAS
public static int LLVMPointerSizeForAS(long TD, int AS)
Returns the pointer size in bytes for a target for a specified address space. See the methodllvm::DataLayout::getPointerSize
.
-
LLVMIntPtrType
public static long LLVMIntPtrType(long TD)
Returns the integer type that is the same size as a pointer on a target. See the methodllvm::DataLayout::getIntPtrType
.
-
LLVMIntPtrTypeForAS
public static long LLVMIntPtrTypeForAS(long TD, int AS)
Returns the integer type that is the same size as a pointer on a target. This version allows the address space to be specified. See the methodllvm::DataLayout::getIntPtrType
.
-
LLVMIntPtrTypeInContext
public static long LLVMIntPtrTypeInContext(long C, long TD)
Returns the integer type that is the same size as a pointer on a target. See the methodllvm::DataLayout::getIntPtrType
.
-
LLVMIntPtrTypeForASInContext
public static long LLVMIntPtrTypeForASInContext(long C, long TD, int AS)
Returns the integer type that is the same size as a pointer on a target. This version allows the address space to be specified. See the methodllvm::DataLayout::getIntPtrType
.
-
LLVMSizeOfTypeInBits
public static long LLVMSizeOfTypeInBits(long TD, long Ty)
Computes the size of a type in bytes for a target. See the methodllvm::DataLayout::getTypeSizeInBits
.
-
LLVMStoreSizeOfType
public static long LLVMStoreSizeOfType(long TD, long Ty)
Computes the storage size of a type in bytes for a target. See the methodllvm::DataLayout::getTypeStoreSize
.
-
LLVMABISizeOfType
public static long LLVMABISizeOfType(long TD, long Ty)
Computes the ABI size of a type in bytes for a target. See the methodllvm::DataLayout::getTypeAllocSize
.
-
LLVMABIAlignmentOfType
public static int LLVMABIAlignmentOfType(long TD, long Ty)
Computes the ABI alignment of a type in bytes for a target. See the methodllvm::DataLayout::getTypeABISize
.
-
LLVMCallFrameAlignmentOfType
public static int LLVMCallFrameAlignmentOfType(long TD, long Ty)
Computes the call frame alignment of a type in bytes for a target. See the methodllvm::DataLayout::getTypeABISize
.
-
LLVMPreferredAlignmentOfType
public static int LLVMPreferredAlignmentOfType(long TD, long Ty)
Computes the preferred alignment of a type in bytes for a target. See the methodllvm::DataLayout::getTypeABISize
.
-
LLVMPreferredAlignmentOfGlobal
public static int LLVMPreferredAlignmentOfGlobal(long TD, long GlobalVar)
Computes the preferred alignment of a global variable in bytes for a target. See the methodllvm::DataLayout::getPreferredAlignment
.
-
LLVMElementAtOffset
public static int LLVMElementAtOffset(long TD, long StructTy, long Offset)
Computes the structure element that contains the byte offset for a target. See the methodllvm::StructLayout::getElementContainingOffset
.
-
LLVMOffsetOfElement
public static long LLVMOffsetOfElement(long TD, long StructTy, int Element)
Computes the byte offset of the indexed struct element for a target. See the methodllvm::StructLayout::getElementContainingOffset
.
-
-