aboutsummaryrefslogtreecommitdiff
path: root/tccelf.c
diff options
context:
space:
mode:
Diffstat (limited to 'tccelf.c')
-rw-r--r--tccelf.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tccelf.c b/tccelf.c
index df7375c..41b6081 100644
--- a/tccelf.c
+++ b/tccelf.c
@@ -1009,6 +1009,7 @@ static unsigned long put_got_entry(TCCState *s1, int dyn_reloc_type,
esym->st_value = offset;
} else if (s1->output_type == TCC_OUTPUT_MEMORY ||
+ ELFW(ST_BIND)(sym->st_info) == STB_WEAK ||
relocs_info[reloc_type].gotplt_entry == ALWAYS_GOTPLT_ENTRY)
index = put_elf_sym(s1->dynsym, offset, size, info, 0,
sym->st_shndx, name);