Add a patch each time a plt entry is requested in the llvm backend, so wrappers can...
authorZoltan Varga <vargaz@gmail.com>
Mon, 13 Dec 2010 02:02:29 +0000 (03:02 +0100)
committerZoltan Varga <vargaz@gmail.com>
Mon, 13 Dec 2010 02:02:29 +0000 (03:02 +0100)
mono/mini/mini-llvm.c

index d40dc4c49b39915191992a347334d3326d18508f..46555e2eb048100f2475e493ce02c72bfa536b40 100644 (file)
@@ -1083,6 +1083,10 @@ get_plt_entry (EmitContext *ctx, LLVMTypeRef llvm_sig, MonoJumpInfoType type, gc
        if (!callee_name)
                return NULL;
 
+       if (ctx->cfg->compile_aot)
+               /* Add a patch so referenced wrappers can be compiled in full aot mode */
+               mono_add_patch_info (ctx->cfg, 0, type, data);
+
        // FIXME: Locking
        callee = g_hash_table_lookup (ctx->lmodule->plt_entries, callee_name);
        if (!callee) {