#include "lp_bld.h"
+#include <llvm/Config/llvm-config.h>
#include <llvm-c/ExecutionEngine.h>
+#include <llvm-c/Target.h>
#ifdef __cplusplus
struct lp_generated_code;
+extern LLVMTargetLibraryInfoRef
+gallivm_create_target_library_info(const char *triple);
extern void
-lp_set_target_options(void);
-
+gallivm_dispose_target_library_info(LLVMTargetLibraryInfoRef library_info);
extern void
-lp_func_delete_body(LLVMValueRef func);
-
+lp_set_target_options(void);
-extern LLVMValueRef
-lp_build_load_volatile(LLVMBuilderRef B, LLVMValueRef PointerVal,
- const char *Name);
extern int
lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT,
struct lp_generated_code **OutCode,
LLVMModuleRef M,
+ LLVMMCJITMemoryManagerRef MM,
unsigned OptLevel,
- int useMCJIT,
char **OutError);
extern void
lp_free_generated_code(struct lp_generated_code *code);
+extern LLVMMCJITMemoryManagerRef
+lp_get_default_memory_manager();
+
+extern void
+lp_free_memory_manager(LLVMMCJITMemoryManagerRef memorymgr);
+
+extern LLVMValueRef
+lp_get_called_value(LLVMValueRef call);
+
+extern bool
+lp_is_function(LLVMValueRef v);
#ifdef __cplusplus
}