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