From dcfa0e50dc028a2141af642b17376bfebfe0be21 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Thu, 13 Apr 2017 03:34:57 -0400 Subject: all internal functions get unnamed_addr attribute --- src/codegen.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/codegen.cpp b/src/codegen.cpp index f36c45c69a..b68f81e442 100644 --- a/src/codegen.cpp +++ b/src/codegen.cpp @@ -345,6 +345,7 @@ static LLVMValueRef fn_llvm_value(CodeGen *g, FnTableEntry *fn_table_entry) { switch (fn_table_entry->linkage) { case GlobalLinkageIdInternal: LLVMSetLinkage(fn_table_entry->llvm_value, LLVMInternalLinkage); + LLVMSetUnnamedAddr(fn_table_entry->llvm_value, true); break; case GlobalLinkageIdStrong: LLVMSetLinkage(fn_table_entry->llvm_value, LLVMExternalLinkage); @@ -4743,9 +4744,14 @@ static void get_c_type(CodeGen *g, TypeTableEntry *type_entry, Buf *out_buf) { zig_unreachable(); } } + case TypeTableEntryIdStruct: + { + // TODO add to table of structs we need to declare + buf_init_from_buf(out_buf, &type_entry->name); + return; + } case TypeTableEntryIdOpaque: case TypeTableEntryIdArray: - case TypeTableEntryIdStruct: case TypeTableEntryIdErrorUnion: case TypeTableEntryIdPureError: case TypeTableEntryIdEnum: -- cgit v1.2.3