aboutsummaryrefslogtreecommitdiff
path: root/tccgen.c
diff options
context:
space:
mode:
authorgrischka <grischka>2017-12-12 17:33:37 +0100
committergrischka <grischka>2017-12-12 17:33:37 +0100
commit1a4d4b76e803a32db1168e66ad8f8b26c29c8ea0 (patch)
tree007fdd21ccfe4e47e8cf44662cff4751d6c7c3bc /tccgen.c
parent8490c54dbd756130962825adf32ab955137da8a4 (diff)
downloadtinycc-1a4d4b76e803a32db1168e66ad8f8b26c29c8ea0.tar.gz
tinycc-1a4d4b76e803a32db1168e66ad8f8b26c29c8ea0.tar.bz2
tccgen_begin/end_file
This is supposed to make compilation and linking with multiple source files (tcc f1.c f2.S ...) behave just the same as linking object files. tccgen.c:put_extern_sym2(): - use put_elf_sym to enter new symbols unconditionally tccelf.c: - save section state before compilation - disable symbol hashing during compilation - merge symbols and update relocations after compilation tccpe.c: - re-create s1->uw_sym for each compilation (because it may change)
Diffstat (limited to 'tccgen.c')
-rw-r--r--tccgen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tccgen.c b/tccgen.c
index 97ea94c..7e10c18 100644
--- a/tccgen.c
+++ b/tccgen.c
@@ -418,7 +418,7 @@ ST_FUNC void put_extern_sym2(Sym *sym, Section *section,
if (sym->asm_label)
name = get_tok_str(sym->asm_label, NULL);
info = ELFW(ST_INFO)(sym_bind, sym_type);
- sym->c = set_elf_sym(symtab_section, value, size, info, other, sh_num, name);
+ sym->c = put_elf_sym(symtab_section, value, size, info, other, sh_num, name);
} else {
esym = elfsym(sym);
esym->st_value = value;