X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2Fmini-llvm-cpp.h;h=f969274e4a7f6bfb211b13063d73dea5f51a61a2;hb=53c4a18a9f2de8865864052321a469e2ae89e806;hp=78bccd07ff9422a5adcc1ddc75af0343f5a84a8c;hpb=ac432e4ba2f187bf6606a2a07bb87607306647b4;p=mono.git diff --git a/mono/mini/mini-llvm-cpp.h b/mono/mini/mini-llvm-cpp.h index 78bccd07ff9..f969274e4a7 100644 --- a/mono/mini/mini-llvm-cpp.h +++ b/mono/mini/mini-llvm-cpp.h @@ -34,22 +34,6 @@ typedef enum { LLVM_ATOMICRMW_OP_ADD = 1, } AtomicRMWOp; -typedef unsigned char * (AllocCodeMemoryCb) (LLVMValueRef function, int size); -typedef void (FunctionEmittedCb) (LLVMValueRef function, void *start, void *end); -typedef void (ExceptionTableCb) (void *data); -typedef char* (DlSymCb) (const char *name, void **symbol); - -typedef void* MonoEERef; - -MonoEERef -mono_llvm_create_ee (LLVMModuleProviderRef MP, AllocCodeMemoryCb *alloc_cb, FunctionEmittedCb *emitted_cb, ExceptionTableCb *exception_cb, DlSymCb *dlsym_cb, LLVMExecutionEngineRef *ee); - -void -mono_llvm_dispose_ee (MonoEERef *mono_ee); - -void -mono_llvm_optimize_method (MonoEERef mono_ee, LLVMValueRef method); - void mono_llvm_dump_value (LLVMValueRef value); @@ -60,9 +44,13 @@ mono_llvm_build_alloca (LLVMBuilderRef builder, LLVMTypeRef Ty, LLVMValueRef mono_llvm_build_load (LLVMBuilderRef builder, LLVMValueRef PointerVal, - const char *Name, gboolean is_volatile, BarrierKind barrier); + const char *Name, gboolean is_volatile); LLVMValueRef +mono_llvm_build_atomic_load (LLVMBuilderRef builder, LLVMValueRef PointerVal, + const char *Name, gboolean is_volatile, int alignment, BarrierKind barrier); + +LLVMValueRef mono_llvm_build_aligned_load (LLVMBuilderRef builder, LLVMValueRef PointerVal, const char *Name, gboolean is_volatile, int alignment); @@ -101,15 +89,36 @@ mono_llvm_set_preserveall_cc (LLVMValueRef func); void mono_llvm_set_call_preserveall_cc (LLVMValueRef call); +void +mono_llvm_set_call_notail (LLVMValueRef call); + _Unwind_Reason_Code mono_debug_personality (int a, _Unwind_Action b, uint64_t c, struct _Unwind_Exception *d, struct _Unwind_Context *e); void -mono_llvm_set_unhandled_exception_handler (void); +default_mono_llvm_unhandled_exception (void); + +void* +mono_llvm_create_di_builder (LLVMModuleRef module); + +void* +mono_llvm_di_create_function (void *di_builder, void *cu, LLVMValueRef func, const char *name, const char *mangled_name, const char *dir, const char *file, int line); + +void* +mono_llvm_di_create_compile_unit (void *di_builder, const char *cu_name, const char *dir, const char *producer); + +void* +mono_llvm_di_create_file (void *di_builder, const char *dir, const char *file); + +void* +mono_llvm_di_create_location (void *di_builder, void *scope, int row, int column); + +void +mono_llvm_di_builder_finalize (void *di_builder); void -default_mono_llvm_unhandled_exception (void); +mono_llvm_di_set_location (LLVMBuilderRef builder, void *loc_md); G_END_DECLS