From: Zoltan Varga Date: Tue, 5 Mar 2013 16:34:44 +0000 (+0100) Subject: Change the linkage of the type_info symbols generated by the LLVM backend, since... X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=commitdiff_plain;h=ddc2a6234f9c2a8e0f199db3a10837c317ca3de5;p=mono.git Change the linkage of the type_info symbols generated by the LLVM backend, since using LLVMPrivateLinkage causes LLVM to generate assembly which is not allowed by clang. Fixes #10811. --- diff --git a/mono/mini/mini-llvm.c b/mono/mini/mini-llvm.c index a369d550756..2b41cd3fe95 100644 --- a/mono/mini/mini-llvm.c +++ b/mono/mini/mini-llvm.c @@ -2157,7 +2157,10 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb) type_info = LLVMAddGlobal (module, LLVMInt32Type (), ti_name); LLVMSetInitializer (type_info, LLVMConstInt (LLVMInt32Type (), clause_index, FALSE)); - LLVMSetLinkage (type_info, LLVMPrivateLinkage); + /* + * These symbols are not really used, the clause_index is embedded into the EH tables generated by DwarfMonoException in LLVM. + */ + LLVMSetLinkage (type_info, LLVMInternalLinkage); LLVMSetVisibility (type_info, LLVMHiddenVisibility); /*