Top Description Inners Constructors Methods
org.lwjgl.llvm

public Class LLVMLLJIT

extends Object
Class Inheritance
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Requires LLVM 11.0 or higher.

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
LLVMLLJIT.Functions

Contains the function pointers loaded from LLVMCore.getLibrary().

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static long
LLVMOrcCreateLLJIT(PointerBuffer Result, long Builder)

Create an LLJIT instance from an LLJITBuilder.

public static long
LLVMOrcCreateLLJITBuilder()

Create an LLVMOrcLLJITBuilder.

public static long
LLVMOrcDisposeLLJIT(long J)

Dispose of an LLJIT instance.

public static void
LLVMOrcDisposeLLJITBuilder(long Builder)

Dispose of an LLVMOrcLLJITBuilderRef.

public static long
LLVMOrcLLJITAddLLVMIRModule(long J, long JD, long TSM)

Add an IR module to the given JITDylib in the given LLJIT instance.

public static long
LLVMOrcLLJITAddLLVMIRModuleWithRT(long J, long JD, long TSM)

Add an IR module to the given ResourceTracker's JITDylib in the given LLJIT instance.

public static long
LLVMOrcLLJITAddObjectFile(long J, long JD, long ObjBuffer)

Add a buffer representing an object file to the given JITDylib in the given LLJIT instance.

public static long
LLVMOrcLLJITAddObjectFileWithRT(long J, long RT, long ObjBuffer)

Add a buffer representing an object file to the given ResourceTracker's JITDylib in the given LLJIT instance.

public static void
LLVMOrcLLJITBuilderSetJITTargetMachineBuilder(long Builder, long JTMB)

Set the JITTargetMachineBuilder to be used when constructing the LLJIT instance.

public static void
LLVMOrcLLJITBuilderSetObjectLinkingLayerCreator(long Builder, LLVMOrcLLJITBuilderObjectLinkingLayerCreatorFunctionI F, long Ctx)

Set an ObjectLinkingLayer creator function for this LLJIT instance.

public static String
LLVMOrcLLJITGetDataLayoutStr(long J)

Get the LLJIT instance's default data layout string.

public static long
LLVMOrcLLJITGetExecutionSession(long J)

Get a reference to the ExecutionSession for this LLJIT instance.

public static byte
LLVMOrcLLJITGetGlobalPrefix(long J)

Returns the global prefix character according to the LLJIT's DataLayout.

public static long
LLVMOrcLLJITGetIRTransformLayer(long J)

Returns a non-owning reference to the LLJIT instance's IR transform layer.

public static long
LLVMOrcLLJITGetMainJITDylib(long J)

Return a reference to the Main JITDylib.

public static long
LLVMOrcLLJITGetObjLinkingLayer(long J)

Returns a non-owning reference to the LLJIT instance's object linking layer.

public static long
LLVMOrcLLJITGetObjTransformLayer(long J)

Returns a non-owning reference to the LLJIT instance's object linking layer.

public static String
LLVMOrcLLJITGetTripleString(long J)

Return the target triple for this LLJIT instance.

public static long
LLVMOrcLLJITLookup(long J, LongBuffer Result, ByteBuffer Name)

Look up the given symbol in the main JITDylib of the given LLJIT instance.

public static long
LLVMOrcLLJITLookup(long J, LongBuffer Result, CharSequence Name)

Look up the given symbol in the main JITDylib of the given LLJIT instance.

public static long
LLVMOrcLLJITMangleAndIntern(long J, ByteBuffer UnmangledName)

Mangles the given string according to the LLJIT instance's DataLayout, then interns the result in the SymbolStringPool and returns a reference to the pool entry.

public static long
LLVMOrcLLJITMangleAndIntern(long J, CharSequence UnmangledName)

Mangles the given string according to the LLJIT instance's DataLayout, then interns the result in the SymbolStringPool and returns a reference to the pool entry.

public static long
nLLVMOrcCreateLLJIT(long Result, long Builder)

Unsafe version of: OrcCreateLLJIT

public static void
public static long
public static long
public static long
nLLVMOrcLLJITLookup(long J, long Result, long Name)

Unsafe version of: OrcLLJITLookup

public static long
nLLVMOrcLLJITMangleAndIntern(long J, long UnmangledName)

Unsafe version of: OrcLLJITMangleAndIntern

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

LLVMLLJITback to summary
protected LLVMLLJIT()

Method Detail

LLVMOrcCreateLLJITback to summary
public static long LLVMOrcCreateLLJIT(PointerBuffer Result, long Builder)

Create an LLJIT instance from an LLJITBuilder.

This operation takes ownership of the Builder argument: clients should not dispose of the builder after calling this function (even if the function returns an error). If a null Builder argument is provided then a default-constructed LLJITBuilder will be used.

On success the resulting LLJIT instance is uniquely owned by the client and automatically manages the memory of all JIT'd code and all modules that are transferred to it (e.g. via OrcLLJITAddLLVMIRModule). Disposing of the LLJIT instance will free all memory managed by the JIT, including JIT'd code and not-yet compiled modules.

Annotations
@NativeType:LLVMErrorRef
LLVMOrcCreateLLJITBuilderback to summary
public static long LLVMOrcCreateLLJITBuilder()

Create an LLVMOrcLLJITBuilder.

The client owns the resulting LLJITBuilder and should dispose of it using OrcDisposeLLJITBuilder once they are done with it.

Annotations
@NativeType:LLVMOrcLLJITBuilderRef
LLVMOrcDisposeLLJITback to summary
public static long LLVMOrcDisposeLLJIT(long J)

Dispose of an LLJIT instance.

Annotations
@NativeType:LLVMErrorRef
LLVMOrcDisposeLLJITBuilderback to summary
public static void LLVMOrcDisposeLLJITBuilder(long Builder)

Dispose of an LLVMOrcLLJITBuilderRef.

This should only be called if ownership has not been passed to LLVMOrcCreateLLJIT (e.g. because some error prevented that function from being called).

LLVMOrcLLJITAddLLVMIRModuleback to summary
public static long LLVMOrcLLJITAddLLVMIRModule(long J, long JD, long TSM)

Add an IR module to the given JITDylib in the given LLJIT instance. This operation transfers ownership of the TSM argument to the LLJIT instance. The TSM argument should not be disposed of or referenced once this function returns.

Resources associated with the given Module will be tracked by the given JITDylib's default resource tracker.

Annotations
@NativeType:LLVMErrorRef
LLVMOrcLLJITAddLLVMIRModuleWithRTback to summary
public static long LLVMOrcLLJITAddLLVMIRModuleWithRT(long J, long JD, long TSM)

Add an IR module to the given ResourceTracker's JITDylib in the given LLJIT instance. This operation transfers ownership of the TSM argument to the LLJIT instance. The TSM argument should not be disposed of or referenced once this function returns.

Resources associated with the given Module will be tracked by ResourceTracker RT.

Annotations
@NativeType:LLVMErrorRef
Since
12
LLVMOrcLLJITAddObjectFileback to summary
public static long LLVMOrcLLJITAddObjectFile(long J, long JD, long ObjBuffer)

Add a buffer representing an object file to the given JITDylib in the given LLJIT instance. This operation transfers ownership of the buffer to the LLJIT instance. The buffer should not be disposed of or referenced once this function returns.

Resources associated with the given object will be tracked by the given JITDylib's default resource tracker.

Annotations
@NativeType:LLVMErrorRef
LLVMOrcLLJITAddObjectFileWithRTback to summary
public static long LLVMOrcLLJITAddObjectFileWithRT(long J, long RT, long ObjBuffer)

Add a buffer representing an object file to the given ResourceTracker's JITDylib in the given LLJIT instance. This operation transfers ownership of the buffer to the LLJIT instance. The buffer should not be disposed of or referenced once this function returns.

Resources associated with the given object will be tracked by ResourceTracker RT.

Annotations
@NativeType:LLVMErrorRef
Since
12
LLVMOrcLLJITBuilderSetJITTargetMachineBuilderback to summary
public static void LLVMOrcLLJITBuilderSetJITTargetMachineBuilder(long Builder, long JTMB)

Set the JITTargetMachineBuilder to be used when constructing the LLJIT instance.

Calling this function is optional: if it is not called then the LLJITBuilder will use JITTargeTMachineBuilder::detectHost to construct a JITTargetMachineBuilder.

This function takes ownership of the JTMB argument: clients should not dispose of the JITTargetMachineBuilder after calling this function.

LLVMOrcLLJITBuilderSetObjectLinkingLayerCreatorback to summary
public static void LLVMOrcLLJITBuilderSetObjectLinkingLayerCreator(long Builder, LLVMOrcLLJITBuilderObjectLinkingLayerCreatorFunctionI F, long Ctx)

Set an ObjectLinkingLayer creator function for this LLJIT instance.

Since
12
LLVMOrcLLJITGetDataLayoutStrback to summary
public static String LLVMOrcLLJITGetDataLayoutStr(long J)

Get the LLJIT instance's default data layout string.

This string is owned by the LLJIT instance and does not need to be freed by the caller.

Annotations
@Nullable
@NativeType:char const *
Since
12
LLVMOrcLLJITGetExecutionSessionback to summary
public static long LLVMOrcLLJITGetExecutionSession(long J)

Get a reference to the ExecutionSession for this LLJIT instance.

The ExecutionSession is owned by the LLJIT instance. The client is not responsible for managing its memory.

Annotations
@NativeType:LLVMOrcExecutionSessionRef
LLVMOrcLLJITGetGlobalPrefixback to summary
public static byte LLVMOrcLLJITGetGlobalPrefix(long J)

Returns the global prefix character according to the LLJIT's DataLayout.

Annotations
@NativeType:char
LLVMOrcLLJITGetIRTransformLayerback to summary
public static long LLVMOrcLLJITGetIRTransformLayer(long J)

Returns a non-owning reference to the LLJIT instance's IR transform layer.

Annotations
@NativeType:LLVMOrcIRTransformLayerRef
Since
12
LLVMOrcLLJITGetMainJITDylibback to summary
public static long LLVMOrcLLJITGetMainJITDylib(long J)

Return a reference to the Main JITDylib.

The JITDylib is owned by the LLJIT instance. The client is not responsible for managing its memory.

Annotations
@NativeType:LLVMOrcJITDylibRef
LLVMOrcLLJITGetObjLinkingLayerback to summary
public static long LLVMOrcLLJITGetObjLinkingLayer(long J)

Returns a non-owning reference to the LLJIT instance's object linking layer.

Annotations
@NativeType:LLVMOrcObjectLayerRef
Since
12
LLVMOrcLLJITGetObjTransformLayerback to summary
public static long LLVMOrcLLJITGetObjTransformLayer(long J)

Returns a non-owning reference to the LLJIT instance's object linking layer.

Annotations
@NativeType:LLVMOrcObjectTransformLayerRef
Since
12
LLVMOrcLLJITGetTripleStringback to summary
public static String LLVMOrcLLJITGetTripleString(long J)

Return the target triple for this LLJIT instance. This string is owned by the LLJIT instance and should not be freed by the client.

Annotations
@Nullable
@NativeType:char const *
LLVMOrcLLJITLookupback to summary
public static long LLVMOrcLLJITLookup(long J, LongBuffer Result, ByteBuffer Name)

Look up the given symbol in the main JITDylib of the given LLJIT instance.

This operation does not take ownership of the Name argument.

Annotations
@NativeType:LLVMErrorRef
LLVMOrcLLJITLookupback to summary
public static long LLVMOrcLLJITLookup(long J, LongBuffer Result, CharSequence Name)

Look up the given symbol in the main JITDylib of the given LLJIT instance.

This operation does not take ownership of the Name argument.

Annotations
@NativeType:LLVMErrorRef
LLVMOrcLLJITMangleAndInternback to summary
public static long LLVMOrcLLJITMangleAndIntern(long J, ByteBuffer UnmangledName)

Mangles the given string according to the LLJIT instance's DataLayout, then interns the result in the SymbolStringPool and returns a reference to the pool entry.

Clients should call OrcReleaseSymbolStringPoolEntry to decrement the ref-count on the pool entry once they are finished with this value.

Annotations
@NativeType:LLVMOrcSymbolStringPoolEntryRef
LLVMOrcLLJITMangleAndInternback to summary
public static long LLVMOrcLLJITMangleAndIntern(long J, CharSequence UnmangledName)

Mangles the given string according to the LLJIT instance's DataLayout, then interns the result in the SymbolStringPool and returns a reference to the pool entry.

Clients should call OrcReleaseSymbolStringPoolEntry to decrement the ref-count on the pool entry once they are finished with this value.

Annotations
@NativeType:LLVMOrcSymbolStringPoolEntryRef
nLLVMOrcCreateLLJITback to summary
public static long nLLVMOrcCreateLLJIT(long Result, long Builder)

Unsafe version of: OrcCreateLLJIT

nLLVMOrcLLJITBuilderSetObjectLinkingLayerCreatorback to summary
public static void nLLVMOrcLLJITBuilderSetObjectLinkingLayerCreator(long Builder, long F, long Ctx)

Unsafe version of: OrcLLJITBuilderSetObjectLinkingLayerCreator

nLLVMOrcLLJITGetDataLayoutStrback to summary
public static long nLLVMOrcLLJITGetDataLayoutStr(long J)

Unsafe version of: OrcLLJITGetDataLayoutStr

nLLVMOrcLLJITGetTripleStringback to summary
public static long nLLVMOrcLLJITGetTripleString(long J)

Unsafe version of: OrcLLJITGetTripleString

nLLVMOrcLLJITLookupback to summary
public static long nLLVMOrcLLJITLookup(long J, long Result, long Name)

Unsafe version of: OrcLLJITLookup

nLLVMOrcLLJITMangleAndInternback to summary
public static long nLLVMOrcLLJITMangleAndIntern(long J, long UnmangledName)

Unsafe version of: OrcLLJITMangleAndIntern

org.lwjgl.llvm back to summary

public final Class LLVMLLJIT.Functions

extends Object
Class Inheritance

Contains the function pointers loaded from LLVMCore.getLibrary().

Field Summary

Modifier and TypeField and Description
public static final long
OrcCreateLLJIT

Function address.

public static final long
OrcCreateLLJITBuilder

Function address.

public static final long
OrcDisposeLLJIT

Function address.

public static final long
OrcDisposeLLJITBuilder

Function address.

public static final long
OrcLLJITAddLLVMIRModule

Function address.

public static final long
public static final long
OrcLLJITAddObjectFile

Function address.

public static final long
OrcLLJITAddObjectFileWithRT

Function address.

public static final long
public static final long
public static final long
OrcLLJITGetDataLayoutStr

Function address.

public static final long
OrcLLJITGetExecutionSession

Function address.

public static final long
OrcLLJITGetGlobalPrefix

Function address.

public static final long
OrcLLJITGetIRTransformLayer

Function address.

public static final long
OrcLLJITGetMainJITDylib

Function address.

public static final long
OrcLLJITGetObjLinkingLayer

Function address.

public static final long
public static final long
OrcLLJITGetTripleString

Function address.

public static final long
OrcLLJITLookup

Function address.

public static final long
OrcLLJITMangleAndIntern

Function address.

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

OrcCreateLLJITback to summary
public static final long OrcCreateLLJIT

Function address.

OrcCreateLLJITBuilderback to summary
public static final long OrcCreateLLJITBuilder

Function address.

OrcDisposeLLJITback to summary
public static final long OrcDisposeLLJIT

Function address.

OrcDisposeLLJITBuilderback to summary
public static final long OrcDisposeLLJITBuilder

Function address.

OrcLLJITAddLLVMIRModuleback to summary
public static final long OrcLLJITAddLLVMIRModule

Function address.

OrcLLJITAddLLVMIRModuleWithRTback to summary
public static final long OrcLLJITAddLLVMIRModuleWithRT

Function address.

OrcLLJITAddObjectFileback to summary
public static final long OrcLLJITAddObjectFile

Function address.

OrcLLJITAddObjectFileWithRTback to summary
public static final long OrcLLJITAddObjectFileWithRT

Function address.

OrcLLJITBuilderSetJITTargetMachineBuilderback to summary
public static final long OrcLLJITBuilderSetJITTargetMachineBuilder

Function address.

OrcLLJITBuilderSetObjectLinkingLayerCreatorback to summary
public static final long OrcLLJITBuilderSetObjectLinkingLayerCreator

Function address.

OrcLLJITGetDataLayoutStrback to summary
public static final long OrcLLJITGetDataLayoutStr

Function address.

OrcLLJITGetExecutionSessionback to summary
public static final long OrcLLJITGetExecutionSession

Function address.

OrcLLJITGetGlobalPrefixback to summary
public static final long OrcLLJITGetGlobalPrefix

Function address.

OrcLLJITGetIRTransformLayerback to summary
public static final long OrcLLJITGetIRTransformLayer

Function address.

OrcLLJITGetMainJITDylibback to summary
public static final long OrcLLJITGetMainJITDylib

Function address.

OrcLLJITGetObjLinkingLayerback to summary
public static final long OrcLLJITGetObjLinkingLayer

Function address.

OrcLLJITGetObjTransformLayerback to summary
public static final long OrcLLJITGetObjTransformLayer

Function address.

OrcLLJITGetTripleStringback to summary
public static final long OrcLLJITGetTripleString

Function address.

OrcLLJITLookupback to summary
public static final long OrcLLJITLookup

Function address.

OrcLLJITMangleAndInternback to summary
public static final long OrcLLJITMangleAndIntern

Function address.

Constructor Detail

Functionsback to summary
private Functions()