Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / mini / mini-llvm-cpp.h
index 67dd9418a7da3f568b288ab010996b5fa1a6cc11..53ecc02de1a0a48e30a11562628e83d96541007c 100644 (file)
@@ -35,6 +35,17 @@ typedef enum {
        LLVM_ATOMICRMW_OP_ADD = 1,
 } AtomicRMWOp;
 
+typedef enum {
+       LLVM_ATTR_NO_UNWIND,
+       LLVM_ATTR_NO_INLINE,
+       LLVM_ATTR_OPTIMIZE_FOR_SIZE,
+       LLVM_ATTR_IN_REG,
+       LLVM_ATTR_STRUCT_RET,
+       LLVM_ATTR_NO_ALIAS,
+       LLVM_ATTR_BY_VAL,
+       LLVM_ATTR_UW_TABLE
+} AttrKind;
+
 void
 mono_llvm_dump_value (LLVMValueRef value);
 
@@ -93,6 +104,15 @@ mono_llvm_set_call_preserveall_cc (LLVMValueRef call);
 void
 mono_llvm_set_call_notail (LLVMValueRef call);
 
+void
+mono_llvm_add_func_attr (LLVMValueRef func, AttrKind kind);
+
+void
+mono_llvm_add_param_attr (LLVMValueRef param, AttrKind kind);
+
+void
+mono_llvm_add_instr_attr (LLVMValueRef val, int index, AttrKind kind);
+
 _Unwind_Reason_Code 
 mono_debug_personality (int a, _Unwind_Action b,
        uint64_t c, struct _Unwind_Exception *d, struct _Unwind_Context *e);