| ... | ... | @@ -3408,7 +3408,8 @@ static void generate_error_name_table(CodeGen *g) { |
| 3408 | 3408 | |
| 3409 | 3409 | LLVMValueRef err_name_table_init = LLVMConstArray(str_type->type_ref, values, g->error_decls.length); |
| 3410 | 3410 | |
| 3411 | | g->err_name_table = LLVMAddGlobal(g->module, LLVMTypeOf(err_name_table_init), "err_name_table"); |
| 3411 | g->err_name_table = LLVMAddGlobal(g->module, LLVMTypeOf(err_name_table_init), |
| 3412 | buf_ptr(get_mangled_name(g, buf_create_from_str("err_name_table"), false))); |
| 3412 | 3413 | LLVMSetInitializer(g->err_name_table, err_name_table_init); |
| 3413 | 3414 | LLVMSetLinkage(g->err_name_table, LLVMPrivateLinkage); |
| 3414 | 3415 | LLVMSetGlobalConstant(g->err_name_table, true); |
| ... | ... | @@ -3445,7 +3446,7 @@ static void generate_enum_name_tables(CodeGen *g) { |
| 3445 | 3446 | |
| 3446 | 3447 | LLVMValueRef name_table_init = LLVMConstArray(str_type->type_ref, values, field_count); |
| 3447 | 3448 | |
| 3448 | | Buf *table_name = buf_sprintf("%s_name_table", buf_ptr(&enum_type->name)); |
| 3449 | Buf *table_name = get_mangled_name(g, buf_sprintf("%s_name_table", buf_ptr(&enum_type->name)), false); |
| 3449 | 3450 | LLVMValueRef name_table = LLVMAddGlobal(g->module, LLVMTypeOf(name_table_init), buf_ptr(table_name)); |
| 3450 | 3451 | LLVMSetInitializer(name_table, name_table_init); |
| 3451 | 3452 | LLVMSetLinkage(name_table, LLVMPrivateLinkage); |
| ... | ... | @@ -3535,11 +3536,12 @@ static void do_code_gen(CodeGen *g) { |
| 3535 | 3536 | |
| 3536 | 3537 | LLVMSetLinkage(global_value, LLVMExternalLinkage); |
| 3537 | 3538 | } else { |
| 3539 | bool exported = (var->linkage == VarLinkageExport); |
| 3538 | 3540 | render_const_val(g, var->value); |
| 3539 | | render_const_val_global(g, var->value, buf_ptr(get_mangled_name(g, &var->name, false))); |
| 3541 | render_const_val_global(g, var->value, buf_ptr(get_mangled_name(g, &var->name, exported))); |
| 3540 | 3542 | global_value = var->value->llvm_global; |
| 3541 | 3543 | |
| 3542 | | if (var->linkage == VarLinkageExport) { |
| 3544 | if (exported) { |
| 3543 | 3545 | LLVMSetLinkage(global_value, LLVMExternalLinkage); |
| 3544 | 3546 | } |
| 3545 | 3547 | if (tld_var->section_name) { |