summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/include/llvm-c/ExecutionEngine.h
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/llvm/include/llvm-c/ExecutionEngine.h')
-rw-r--r--gnu/llvm/include/llvm-c/ExecutionEngine.h200
1 files changed, 0 insertions, 200 deletions
diff --git a/gnu/llvm/include/llvm-c/ExecutionEngine.h b/gnu/llvm/include/llvm-c/ExecutionEngine.h
deleted file mode 100644
index e8ebef9ab15..00000000000
--- a/gnu/llvm/include/llvm-c/ExecutionEngine.h
+++ /dev/null
@@ -1,200 +0,0 @@
-/*===-- llvm-c/ExecutionEngine.h - ExecutionEngine Lib C Iface --*- C++ -*-===*\
-|* *|
-|* The LLVM Compiler Infrastructure *|
-|* *|
-|* This file is distributed under the University of Illinois Open Source *|
-|* License. See LICENSE.TXT for details. *|
-|* *|
-|*===----------------------------------------------------------------------===*|
-|* *|
-|* This header declares the C interface to libLLVMExecutionEngine.o, which *|
-|* implements various analyses of the LLVM IR. *|
-|* *|
-|* Many exotic languages can interoperate with C code but have a harder time *|
-|* with C++ due to name mangling. So in addition to C, this interface enables *|
-|* tools written in such languages. *|
-|* *|
-\*===----------------------------------------------------------------------===*/
-
-#ifndef LLVM_C_EXECUTIONENGINE_H
-#define LLVM_C_EXECUTIONENGINE_H
-
-#include "llvm-c/Target.h"
-#include "llvm-c/TargetMachine.h"
-#include "llvm-c/Types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * @defgroup LLVMCExecutionEngine Execution Engine
- * @ingroup LLVMC
- *
- * @{
- */
-
-void LLVMLinkInMCJIT(void);
-void LLVMLinkInInterpreter(void);
-
-typedef struct LLVMOpaqueGenericValue *LLVMGenericValueRef;
-typedef struct LLVMOpaqueExecutionEngine *LLVMExecutionEngineRef;
-typedef struct LLVMOpaqueMCJITMemoryManager *LLVMMCJITMemoryManagerRef;
-
-struct LLVMMCJITCompilerOptions {
- unsigned OptLevel;
- LLVMCodeModel CodeModel;
- LLVMBool NoFramePointerElim;
- LLVMBool EnableFastISel;
- LLVMMCJITMemoryManagerRef MCJMM;
-};
-
-/*===-- Operations on generic values --------------------------------------===*/
-
-LLVMGenericValueRef LLVMCreateGenericValueOfInt(LLVMTypeRef Ty,
- unsigned long long N,
- LLVMBool IsSigned);
-
-LLVMGenericValueRef LLVMCreateGenericValueOfPointer(void *P);
-
-LLVMGenericValueRef LLVMCreateGenericValueOfFloat(LLVMTypeRef Ty, double N);
-
-unsigned LLVMGenericValueIntWidth(LLVMGenericValueRef GenValRef);
-
-unsigned long long LLVMGenericValueToInt(LLVMGenericValueRef GenVal,
- LLVMBool IsSigned);
-
-void *LLVMGenericValueToPointer(LLVMGenericValueRef GenVal);
-
-double LLVMGenericValueToFloat(LLVMTypeRef TyRef, LLVMGenericValueRef GenVal);
-
-void LLVMDisposeGenericValue(LLVMGenericValueRef GenVal);
-
-/*===-- Operations on execution engines -----------------------------------===*/
-
-LLVMBool LLVMCreateExecutionEngineForModule(LLVMExecutionEngineRef *OutEE,
- LLVMModuleRef M,
- char **OutError);
-
-LLVMBool LLVMCreateInterpreterForModule(LLVMExecutionEngineRef *OutInterp,
- LLVMModuleRef M,
- char **OutError);
-
-LLVMBool LLVMCreateJITCompilerForModule(LLVMExecutionEngineRef *OutJIT,
- LLVMModuleRef M,
- unsigned OptLevel,
- char **OutError);
-
-void LLVMInitializeMCJITCompilerOptions(
- struct LLVMMCJITCompilerOptions *Options, size_t SizeOfOptions);
-
-/**
- * Create an MCJIT execution engine for a module, with the given options. It is
- * the responsibility of the caller to ensure that all fields in 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);
- */
-LLVMBool LLVMCreateMCJITCompilerForModule(
- LLVMExecutionEngineRef *OutJIT, LLVMModuleRef M,
- struct LLVMMCJITCompilerOptions *Options, size_t SizeOfOptions,
- char **OutError);
-
-void LLVMDisposeExecutionEngine(LLVMExecutionEngineRef EE);
-
-void LLVMRunStaticConstructors(LLVMExecutionEngineRef EE);
-
-void LLVMRunStaticDestructors(LLVMExecutionEngineRef EE);
-
-int LLVMRunFunctionAsMain(LLVMExecutionEngineRef EE, LLVMValueRef F,
- unsigned ArgC, const char * const *ArgV,
- const char * const *EnvP);
-
-LLVMGenericValueRef LLVMRunFunction(LLVMExecutionEngineRef EE, LLVMValueRef F,
- unsigned NumArgs,
- LLVMGenericValueRef *Args);
-
-void LLVMFreeMachineCodeForFunction(LLVMExecutionEngineRef EE, LLVMValueRef F);
-
-void LLVMAddModule(LLVMExecutionEngineRef EE, LLVMModuleRef M);
-
-LLVMBool LLVMRemoveModule(LLVMExecutionEngineRef EE, LLVMModuleRef M,
- LLVMModuleRef *OutMod, char **OutError);
-
-LLVMBool LLVMFindFunction(LLVMExecutionEngineRef EE, const char *Name,
- LLVMValueRef *OutFn);
-
-void *LLVMRecompileAndRelinkFunction(LLVMExecutionEngineRef EE,
- LLVMValueRef Fn);
-
-LLVMTargetDataRef LLVMGetExecutionEngineTargetData(LLVMExecutionEngineRef EE);
-LLVMTargetMachineRef
-LLVMGetExecutionEngineTargetMachine(LLVMExecutionEngineRef EE);
-
-void LLVMAddGlobalMapping(LLVMExecutionEngineRef EE, LLVMValueRef Global,
- void* Addr);
-
-void *LLVMGetPointerToGlobal(LLVMExecutionEngineRef EE, LLVMValueRef Global);
-
-uint64_t LLVMGetGlobalValueAddress(LLVMExecutionEngineRef EE, const char *Name);
-
-uint64_t LLVMGetFunctionAddress(LLVMExecutionEngineRef EE, const char *Name);
-
-/*===-- Operations on memory managers -------------------------------------===*/
-
-typedef uint8_t *(*LLVMMemoryManagerAllocateCodeSectionCallback)(
- void *Opaque, uintptr_t Size, unsigned Alignment, unsigned SectionID,
- const char *SectionName);
-typedef uint8_t *(*LLVMMemoryManagerAllocateDataSectionCallback)(
- void *Opaque, uintptr_t Size, unsigned Alignment, unsigned SectionID,
- const char *SectionName, LLVMBool IsReadOnly);
-typedef LLVMBool (*LLVMMemoryManagerFinalizeMemoryCallback)(
- void *Opaque, char **ErrMsg);
-typedef void (*LLVMMemoryManagerDestroyCallback)(void *Opaque);
-
-/**
- * Create a simple custom MCJIT memory manager. This memory manager can
- * intercept allocations in a module-oblivious way. This will return NULL
- * if any of the passed functions are NULL.
- *
- * @param Opaque An opaque client object to pass back to the callbacks.
- * @param AllocateCodeSection Allocate a block of memory for executable code.
- * @param AllocateDataSection Allocate a block of memory for data.
- * @param FinalizeMemory Set page permissions and flush cache. Return 0 on
- * success, 1 on error.
- */
-LLVMMCJITMemoryManagerRef LLVMCreateSimpleMCJITMemoryManager(
- void *Opaque,
- LLVMMemoryManagerAllocateCodeSectionCallback AllocateCodeSection,
- LLVMMemoryManagerAllocateDataSectionCallback AllocateDataSection,
- LLVMMemoryManagerFinalizeMemoryCallback FinalizeMemory,
- LLVMMemoryManagerDestroyCallback Destroy);
-
-void LLVMDisposeMCJITMemoryManager(LLVMMCJITMemoryManagerRef MM);
-
-/*===-- JIT Event Listener functions -------------------------------------===*/
-
-LLVMJITEventListenerRef LLVMCreateGDBRegistrationListener(void);
-LLVMJITEventListenerRef LLVMCreateIntelJITEventListener(void);
-LLVMJITEventListenerRef LLVMCreateOProfileJITEventListener(void);
-LLVMJITEventListenerRef LLVMCreatePerfJITEventListener(void);
-
-/**
- * @}
- */
-
-#ifdef __cplusplus
-}
-#endif /* defined(__cplusplus) */
-
-#endif