aboutsummaryrefslogtreecommitdiff
path: root/src/codegen.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2017-04-13 03:34:57 -0400
committerAndrew Kelley <superjoe30@gmail.com>2017-04-13 03:34:57 -0400
commitdcfa0e50dc028a2141af642b17376bfebfe0be21 (patch)
treeab992c5e38ac688d08d0414ac4f0c9ceba6d22a1 /src/codegen.cpp
parentf2140efc5255aa0f0eb826ddd379e07acf6ba131 (diff)
downloadzig-dcfa0e50dc028a2141af642b17376bfebfe0be21.tar.gz
zig-dcfa0e50dc028a2141af642b17376bfebfe0be21.zip
all internal functions get unnamed_addr attribute
Diffstat (limited to 'src/codegen.cpp')
-rw-r--r--src/codegen.cpp8
1 files changed, 7 insertions, 1 deletions
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: