LLVM: include/llvm-c/ExecutionEngine.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19#ifndef LLVM_C_EXECUTIONENGINE_H
20#define LLVM_C_EXECUTIONENGINE_H
21
27
29
30
31
32
33
34
35
36
37
38
39
40
42
43
44
45
47
51
59
60
61
63 unsigned long long N,
65
67
69 double N);
70
72
75
77
80
82
83
84
87
90
93 unsigned OptLevel, char **OutError);
94
97 size_t SizeOfOptions);
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
119 char **OutError);
120
122
124
126
128 unsigned ArgC, const char *const *ArgV,
129 const char *const *EnvP);
130
134
137
139
142
145
148
153
156
159
161 const char *Name);
162
164 const char *Name);
165
166
167
169 char **OutError);
170
171
172
173typedef uint8_t *(*LLVMMemoryManagerAllocateCodeSectionCallback)(
174 void *Opaque, uintptr_t Size, unsigned Alignment, unsigned SectionID,
175 const char *SectionName);
176typedef uint8_t *(*LLVMMemoryManagerAllocateDataSectionCallback)(
177 void *Opaque, uintptr_t Size, unsigned Alignment, unsigned SectionID,
178 const char *SectionName, LLVMBool IsReadOnly);
180 void *Opaque, char **ErrMsg);
182
183
184
185
186
187
188
189
190
191
192
193
195 void *Opaque,
200
202
203
204
209
210
211
212
213
215
216#endif
#define LLVM_C_EXTERN_C_BEGIN
#define LLVM_C_EXTERN_C_END
#define LLVM_C_ABI
LLVM_C_ABI is the export/visibility macro used to mark symbols declared in llvm-c as exported when bu...
LLVM_C_ABI uint64_t LLVMGetGlobalValueAddress(LLVMExecutionEngineRef EE, const char *Name)
LLVM_C_ABI void * LLVMRecompileAndRelinkFunction(LLVMExecutionEngineRef EE, LLVMValueRef Fn)
LLVM_C_ABI void LLVMAddGlobalMapping(LLVMExecutionEngineRef EE, LLVMValueRef Global, void *Addr)
LLVM_C_ABI LLVMBool LLVMCreateMCJITCompilerForModule(LLVMExecutionEngineRef *OutJIT, LLVMModuleRef M, struct LLVMMCJITCompilerOptions *Options, size_t SizeOfOptions, char **OutError)
Create an MCJIT execution engine for a module, with the given options.
LLVM_C_ABI LLVMJITEventListenerRef LLVMCreateOProfileJITEventListener(void)
LLVM_C_ABI LLVMGenericValueRef LLVMRunFunction(LLVMExecutionEngineRef EE, LLVMValueRef F, unsigned NumArgs, LLVMGenericValueRef *Args)
LLVM_C_ABI LLVMJITEventListenerRef LLVMCreateIntelJITEventListener(void)
LLVM_C_ABI LLVMJITEventListenerRef LLVMCreatePerfJITEventListener(void)
LLVM_C_ABI unsigned long long LLVMGenericValueToInt(LLVMGenericValueRef GenVal, LLVMBool IsSigned)
LLVM_C_ABI void LLVMFreeMachineCodeForFunction(LLVMExecutionEngineRef EE, LLVMValueRef F)
LLVM_C_ABI void LLVMDisposeMCJITMemoryManager(LLVMMCJITMemoryManagerRef MM)
LLVM_C_ABI void LLVMLinkInInterpreter(void)
Empty function used to force the linker to link the LLVM interpreter.
LLVM_C_ABI LLVMBool LLVMCreateExecutionEngineForModule(LLVMExecutionEngineRef *OutEE, LLVMModuleRef M, char **OutError)
struct LLVMOpaqueMCJITMemoryManager * LLVMMCJITMemoryManagerRef
Definition ExecutionEngine.h:50
LLVM_C_ABI void * LLVMGetPointerToGlobal(LLVMExecutionEngineRef EE, LLVMValueRef Global)
void(* LLVMMemoryManagerDestroyCallback)(void *Opaque)
Definition ExecutionEngine.h:181
LLVM_C_ABI uint64_t LLVMGetFunctionAddress(LLVMExecutionEngineRef EE, const char *Name)
struct LLVMOpaqueExecutionEngine * LLVMExecutionEngineRef
Definition ExecutionEngine.h:49
LLVM_C_ABI LLVMGenericValueRef LLVMCreateGenericValueOfInt(LLVMTypeRef Ty, unsigned long long N, LLVMBool IsSigned)
LLVM_C_ABI int LLVMRunFunctionAsMain(LLVMExecutionEngineRef EE, LLVMValueRef F, unsigned ArgC, const char *const *ArgV, const char *const *EnvP)
LLVM_C_ABI LLVMTargetMachineRef LLVMGetExecutionEngineTargetMachine(LLVMExecutionEngineRef EE)
LLVM_C_ABI void LLVMDisposeExecutionEngine(LLVMExecutionEngineRef EE)
LLVM_C_ABI double LLVMGenericValueToFloat(LLVMTypeRef TyRef, LLVMGenericValueRef GenVal)
LLVM_C_ABI LLVMBool LLVMRemoveModule(LLVMExecutionEngineRef EE, LLVMModuleRef M, LLVMModuleRef *OutMod, char **OutError)
LLVM_C_ABI void LLVMLinkInMCJIT(void)
Empty function used to force the linker to link MCJIT.
LLVM_C_ABI LLVMTargetDataRef LLVMGetExecutionEngineTargetData(LLVMExecutionEngineRef EE)
LLVM_C_ABI void LLVMDisposeGenericValue(LLVMGenericValueRef GenVal)
LLVM_C_ABI LLVMBool LLVMCreateInterpreterForModule(LLVMExecutionEngineRef *OutInterp, LLVMModuleRef M, char **OutError)
struct LLVMOpaqueGenericValue * LLVMGenericValueRef
Definition ExecutionEngine.h:48
LLVMBool(* LLVMMemoryManagerFinalizeMemoryCallback)(void *Opaque, char **ErrMsg)
Definition ExecutionEngine.h:179
LLVM_C_ABI LLVMBool LLVMExecutionEngineGetErrMsg(LLVMExecutionEngineRef EE, char **OutError)
Returns true on error, false on success.
LLVM_C_ABI void LLVMRunStaticConstructors(LLVMExecutionEngineRef EE)
LLVM_C_ABI void LLVMAddModule(LLVMExecutionEngineRef EE, LLVMModuleRef M)
LLVM_C_ABI void LLVMInitializeMCJITCompilerOptions(struct LLVMMCJITCompilerOptions *Options, size_t SizeOfOptions)
LLVM_C_ABI LLVMBool LLVMFindFunction(LLVMExecutionEngineRef EE, const char *Name, LLVMValueRef *OutFn)
uint8_t *(* LLVMMemoryManagerAllocateDataSectionCallback)(void *Opaque, uintptr_t Size, unsigned Alignment, unsigned SectionID, const char *SectionName, LLVMBool IsReadOnly)
Definition ExecutionEngine.h:176
LLVM_C_ABI LLVMGenericValueRef LLVMCreateGenericValueOfPointer(void *P)
LLVM_C_ABI unsigned LLVMGenericValueIntWidth(LLVMGenericValueRef GenValRef)
LLVM_C_ABI void * LLVMGenericValueToPointer(LLVMGenericValueRef GenVal)
LLVM_C_ABI LLVMMCJITMemoryManagerRef LLVMCreateSimpleMCJITMemoryManager(void *Opaque, LLVMMemoryManagerAllocateCodeSectionCallback AllocateCodeSection, LLVMMemoryManagerAllocateDataSectionCallback AllocateDataSection, LLVMMemoryManagerFinalizeMemoryCallback FinalizeMemory, LLVMMemoryManagerDestroyCallback Destroy)
Create a simple custom MCJIT memory manager.
uint8_t *(* LLVMMemoryManagerAllocateCodeSectionCallback)(void *Opaque, uintptr_t Size, unsigned Alignment, unsigned SectionID, const char *SectionName)
Definition ExecutionEngine.h:173
LLVM_C_ABI LLVMBool LLVMCreateJITCompilerForModule(LLVMExecutionEngineRef *OutJIT, LLVMModuleRef M, unsigned OptLevel, char **OutError)
LLVM_C_ABI LLVMJITEventListenerRef LLVMCreateGDBRegistrationListener(void)
LLVM_C_ABI void LLVMRunStaticDestructors(LLVMExecutionEngineRef EE)
LLVM_C_ABI LLVMGenericValueRef LLVMCreateGenericValueOfFloat(LLVMTypeRef Ty, double N)
struct LLVMOpaqueValue * LLVMValueRef
Represents an individual value in LLVM IR.
struct LLVMOpaqueType * LLVMTypeRef
Each value in the LLVM IR has a type, an LLVMTypeRef.
struct LLVMOpaqueModule * LLVMModuleRef
The top-level container for all other LLVM Intermediate Representation (IR) objects.
struct LLVMOpaqueJITEventListener * LLVMJITEventListenerRef
struct LLVMOpaqueTargetMachine * LLVMTargetMachineRef
struct LLVMOpaqueTargetData * LLVMTargetDataRef
Definition ExecutionEngine.h:52
unsigned OptLevel
Definition ExecutionEngine.h:53
LLVMBool NoFramePointerElim
Definition ExecutionEngine.h:55
LLVMMCJITMemoryManagerRef MCJMM
Definition ExecutionEngine.h:57
LLVMCodeModel CodeModel
Definition ExecutionEngine.h:54
LLVMBool EnableFastISel
Definition ExecutionEngine.h:56