public class LLVMExecutionEngine
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
LLVMExecutionEngine.Functions
Contains the function pointers loaded from
LLVMCore.getLibrary(). |
| Modifier and Type | Method and Description |
|---|---|
static void |
LLVMAddGlobalMapping(long EE,
long Global,
long Addr) |
static void |
LLVMAddModule(long EE,
long M) |
static boolean |
LLVMCreateExecutionEngineForModule(org.lwjgl.PointerBuffer OutEE,
long M,
org.lwjgl.PointerBuffer OutError) |
static long |
LLVMCreateGDBRegistrationListener() |
static long |
LLVMCreateGenericValueOfFloat(long Ty,
double N) |
static long |
LLVMCreateGenericValueOfInt(long Ty,
long N,
boolean IsSigned) |
static long |
LLVMCreateGenericValueOfPointer(long P) |
static long |
LLVMCreateIntelJITEventListener() |
static boolean |
LLVMCreateInterpreterForModule(org.lwjgl.PointerBuffer OutInterp,
long M,
org.lwjgl.PointerBuffer OutError) |
static boolean |
LLVMCreateJITCompilerForModule(org.lwjgl.PointerBuffer OutJIT,
long M,
int OptLevel,
org.lwjgl.PointerBuffer OutError) |
static boolean |
LLVMCreateMCJITCompilerForModule(org.lwjgl.PointerBuffer OutJIT,
long M,
LLVMMCJITCompilerOptions.Buffer Options,
org.lwjgl.PointerBuffer OutError)
Create an MCJIT execution engine for a module, with the given options.
|
static long |
LLVMCreateOProfileJITEventListener() |
static long |
LLVMCreatePerfJITEventListener() |
static long |
LLVMCreateSimpleMCJITMemoryManager(long Opaque,
LLVMMemoryManagerAllocateCodeSectionCallbackI AllocateCodeSection,
LLVMMemoryManagerAllocateDataSectionCallbackI AllocateDataSection,
LLVMMemoryManagerFinalizeMemoryCallbackI FinalizeMemory,
LLVMMemoryManagerDestroyCallbackI Destroy)
Create a simple custom MCJIT memory manager.
|
static void |
LLVMDisposeExecutionEngine(long EE) |
static void |
LLVMDisposeGenericValue(long GenVal) |
static void |
LLVMDisposeMCJITMemoryManager(long MM) |
static boolean |
LLVMFindFunction(long EE,
java.nio.ByteBuffer Name,
org.lwjgl.PointerBuffer OutFn) |
static boolean |
LLVMFindFunction(long EE,
java.lang.CharSequence Name,
org.lwjgl.PointerBuffer OutFn) |
static void |
LLVMFreeMachineCodeForFunction(long EE,
long F) |
static int |
LLVMGenericValueIntWidth(long GenValRef) |
static double |
LLVMGenericValueToFloat(long TyRef,
long GenVal) |
static long |
LLVMGenericValueToInt(long GenVal,
boolean IsSigned) |
static long |
LLVMGenericValueToPointer(long GenVal) |
static long |
LLVMGetExecutionEngineTargetData(long EE) |
static long |
LLVMGetExecutionEngineTargetMachine(long EE) |
static long |
LLVMGetFunctionAddress(long EE,
java.nio.ByteBuffer Name) |
static long |
LLVMGetFunctionAddress(long EE,
java.lang.CharSequence Name) |
static long |
LLVMGetGlobalValueAddress(long EE,
java.nio.ByteBuffer Name) |
static long |
LLVMGetGlobalValueAddress(long EE,
java.lang.CharSequence Name) |
static long |
LLVMGetPointerToGlobal(long EE,
long Global) |
static void |
LLVMInitializeMCJITCompilerOptions(LLVMMCJITCompilerOptions.Buffer Options) |
static void |
LLVMLinkInInterpreter() |
static void |
LLVMLinkInMCJIT() |
static long |
LLVMRecompileAndRelinkFunction(long EE,
long Fn) |
static boolean |
LLVMRemoveModule(long EE,
long M,
org.lwjgl.PointerBuffer OutMod,
org.lwjgl.PointerBuffer OutError) |
static long |
LLVMRunFunction(long EE,
long F,
org.lwjgl.PointerBuffer Args) |
static int |
LLVMRunFunctionAsMain(long EE,
long F,
org.lwjgl.PointerBuffer ArgV,
org.lwjgl.PointerBuffer EnvP) |
static void |
LLVMRunStaticConstructors(long EE) |
static void |
LLVMRunStaticDestructors(long EE) |
static int |
nLLVMCreateExecutionEngineForModule(long OutEE,
long M,
long OutError) |
static int |
nLLVMCreateInterpreterForModule(long OutInterp,
long M,
long OutError) |
static int |
nLLVMCreateJITCompilerForModule(long OutJIT,
long M,
int OptLevel,
long OutError) |
static int |
nLLVMCreateMCJITCompilerForModule(long OutJIT,
long M,
long Options,
long SizeOfOptions,
long OutError)
Unsafe version of:
CreateMCJITCompilerForModule |
static long |
nLLVMCreateSimpleMCJITMemoryManager(long Opaque,
long AllocateCodeSection,
long AllocateDataSection,
long FinalizeMemory,
long Destroy)
Unsafe version of:
CreateSimpleMCJITMemoryManager |
static int |
nLLVMFindFunction(long EE,
long Name,
long OutFn) |
static long |
nLLVMGetFunctionAddress(long EE,
long Name) |
static long |
nLLVMGetGlobalValueAddress(long EE,
long Name) |
static void |
nLLVMInitializeMCJITCompilerOptions(long Options,
long SizeOfOptions) |
static int |
nLLVMRemoveModule(long EE,
long M,
long OutMod,
long OutError) |
static long |
nLLVMRunFunction(long EE,
long F,
int NumArgs,
long Args) |
static int |
nLLVMRunFunctionAsMain(long EE,
long F,
int ArgC,
long ArgV,
long EnvP) |
public static void LLVMLinkInMCJIT()
public static void LLVMLinkInInterpreter()
public static long LLVMCreateGenericValueOfInt(long Ty,
long N,
boolean IsSigned)
public static long LLVMCreateGenericValueOfPointer(long P)
public static long LLVMCreateGenericValueOfFloat(long Ty,
double N)
public static int LLVMGenericValueIntWidth(long GenValRef)
public static long LLVMGenericValueToInt(long GenVal,
boolean IsSigned)
public static long LLVMGenericValueToPointer(long GenVal)
public static double LLVMGenericValueToFloat(long TyRef,
long GenVal)
public static void LLVMDisposeGenericValue(long GenVal)
public static int nLLVMCreateExecutionEngineForModule(long OutEE,
long M,
long OutError)
public static boolean LLVMCreateExecutionEngineForModule(org.lwjgl.PointerBuffer OutEE,
long M,
org.lwjgl.PointerBuffer OutError)
public static int nLLVMCreateInterpreterForModule(long OutInterp,
long M,
long OutError)
public static boolean LLVMCreateInterpreterForModule(org.lwjgl.PointerBuffer OutInterp,
long M,
org.lwjgl.PointerBuffer OutError)
public static int nLLVMCreateJITCompilerForModule(long OutJIT,
long M,
int OptLevel,
long OutError)
public static boolean LLVMCreateJITCompilerForModule(org.lwjgl.PointerBuffer OutJIT,
long M,
int OptLevel,
org.lwjgl.PointerBuffer OutError)
public static void nLLVMInitializeMCJITCompilerOptions(long Options,
long SizeOfOptions)
public static void LLVMInitializeMCJITCompilerOptions(LLVMMCJITCompilerOptions.Buffer Options)
public static int nLLVMCreateMCJITCompilerForModule(long OutJIT,
long M,
long Options,
long SizeOfOptions,
long OutError)
CreateMCJITCompilerForModulepublic static boolean LLVMCreateMCJITCompilerForModule(org.lwjgl.PointerBuffer OutJIT,
long M,
LLVMMCJITCompilerOptions.Buffer Options,
org.lwjgl.PointerBuffer OutError)
Options up to the given SizeOfOptions are initialized. It is correct to pass a smaller value of SizeOfOptions that omits some
fields. The canonical way of using this is:
LLVMMCJITCompilerOptions options;
LLVMInitializeMCJITCompilerOptions(&options, sizeof(options));
... fill in those options you care about
LLVMCreateMCJITCompilerForModule(&jit, mod, &options, sizeof(options),
&error);
Note that this is also correct, though possibly suboptimal:
LLVMCreateMCJITCompilerForModule(&jit, mod, 0, 0, &error);public static void LLVMDisposeExecutionEngine(long EE)
public static void LLVMRunStaticConstructors(long EE)
public static void LLVMRunStaticDestructors(long EE)
public static int nLLVMRunFunctionAsMain(long EE,
long F,
int ArgC,
long ArgV,
long EnvP)
public static int LLVMRunFunctionAsMain(long EE,
long F,
org.lwjgl.PointerBuffer ArgV,
org.lwjgl.PointerBuffer EnvP)
public static long nLLVMRunFunction(long EE,
long F,
int NumArgs,
long Args)
public static long LLVMRunFunction(long EE,
long F,
org.lwjgl.PointerBuffer Args)
public static void LLVMFreeMachineCodeForFunction(long EE,
long F)
public static void LLVMAddModule(long EE,
long M)
public static int nLLVMRemoveModule(long EE,
long M,
long OutMod,
long OutError)
public static boolean LLVMRemoveModule(long EE,
long M,
org.lwjgl.PointerBuffer OutMod,
org.lwjgl.PointerBuffer OutError)
public static int nLLVMFindFunction(long EE,
long Name,
long OutFn)
public static boolean LLVMFindFunction(long EE,
java.nio.ByteBuffer Name,
org.lwjgl.PointerBuffer OutFn)
public static boolean LLVMFindFunction(long EE,
java.lang.CharSequence Name,
org.lwjgl.PointerBuffer OutFn)
public static long LLVMRecompileAndRelinkFunction(long EE,
long Fn)
public static long LLVMGetExecutionEngineTargetData(long EE)
public static long LLVMGetExecutionEngineTargetMachine(long EE)
public static void LLVMAddGlobalMapping(long EE,
long Global,
long Addr)
public static long LLVMGetPointerToGlobal(long EE,
long Global)
public static long nLLVMGetGlobalValueAddress(long EE,
long Name)
public static long LLVMGetGlobalValueAddress(long EE,
java.nio.ByteBuffer Name)
public static long LLVMGetGlobalValueAddress(long EE,
java.lang.CharSequence Name)
public static long nLLVMGetFunctionAddress(long EE,
long Name)
public static long LLVMGetFunctionAddress(long EE,
java.nio.ByteBuffer Name)
public static long LLVMGetFunctionAddress(long EE,
java.lang.CharSequence Name)
public static long nLLVMCreateSimpleMCJITMemoryManager(long Opaque,
long AllocateCodeSection,
long AllocateDataSection,
long FinalizeMemory,
long Destroy)
CreateSimpleMCJITMemoryManagerpublic static long LLVMCreateSimpleMCJITMemoryManager(long Opaque,
LLVMMemoryManagerAllocateCodeSectionCallbackI AllocateCodeSection,
LLVMMemoryManagerAllocateDataSectionCallbackI AllocateDataSection,
LLVMMemoryManagerFinalizeMemoryCallbackI FinalizeMemory,
LLVMMemoryManagerDestroyCallbackI Destroy)
NULL if any of
the passed functions are NULL.Opaque - an opaque client object to pass back to the callbacksAllocateCodeSection - allocate a block of memory for executable codeAllocateDataSection - allocate a block of memory for dataFinalizeMemory - set page permissions and flush cache. Return 0 on success, 1 on error.public static void LLVMDisposeMCJITMemoryManager(long MM)
public static long LLVMCreateGDBRegistrationListener()
public static long LLVMCreateIntelJITEventListener()
public static long LLVMCreateOProfileJITEventListener()
public static long LLVMCreatePerfJITEventListener()
Copyright LWJGL. All Rights Reserved. License terms.