Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / mini / mini-llvm-loaded.c
index 304cf121934957af751b598a2d30f0182abc7ca2..fb1dcac98133843d52cc48ed74aef539240d4340 100644 (file)
@@ -1,4 +1,5 @@
-/*
+/**
+ * \file
  * Handle the differences between the llvm backend beeing embedded
  * or loaded at runtime.
  */
@@ -13,7 +14,7 @@ typedef struct {
        void (*cleanup)(void);
        void (*emit_method)(MonoCompile *cfg);
        void (*emit_call)(MonoCompile *cfg, MonoCallInst *call);
-       void (*create_aot_module)(MonoAssembly *assembly, const char *global_prefix, gboolean emit_dwarf, gboolean static_link, gboolean llvm_only);
+       void (*create_aot_module)(MonoAssembly *assembly, const char *global_prefix, int initial_got_size, gboolean emit_dwarf, gboolean static_link, gboolean llvm_only);
        void (*emit_aot_module)(const char *filename, const char *cu_name);
        void (*check_method_supported)(MonoCompile *cfg);
        void (*emit_aot_file_info)(MonoAotFileInfo *info, gboolean has_jitted_code);
@@ -49,9 +50,9 @@ mono_llvm_emit_call (MonoCompile *cfg, MonoCallInst *call)
 }
 
 void
-mono_llvm_create_aot_module (MonoAssembly *assembly, const char *global_prefix, gboolean emit_dwarf, gboolean static_link, gboolean llvm_only)
+mono_llvm_create_aot_module (MonoAssembly *assembly, const char *global_prefix, int initial_got_size, gboolean emit_dwarf, gboolean static_link, gboolean llvm_only)
 {
-       backend.create_aot_module (assembly, global_prefix, emit_dwarf, static_link, llvm_only);
+       backend.create_aot_module (assembly, global_prefix, initial_got_size, emit_dwarf, static_link, llvm_only);
 }
 
 void
@@ -69,7 +70,9 @@ mono_llvm_check_method_supported (MonoCompile *cfg)
 void
 mono_llvm_free_domain_info (MonoDomain *domain)
 {
-       backend.free_domain_info (domain);
+       /* This is called even when llvm is not enabled */
+       if (backend.free_domain_info)
+               backend.free_domain_info (domain);
 }
 
 void