fix: enforce bcheck.o linking when -b option is used

fixes a crash for the empry program (tcc -b empty.c)
    empty.c: int main() { return 0; }
This commit is contained in:
seyko
2015-03-26 06:04:36 +03:00
parent cde79a805e
commit a105837aae
2 changed files with 10 additions and 1 deletions

View File

@ -1564,7 +1564,10 @@ ST_FUNC void tcc_add_bcheck(TCCState *s1)
pinit = section_ptr_add(init_section, 5);
pinit[0] = 0xe8;
put32(pinit + 1, -4);
sym_index = find_elf_sym(symtab_section, "__bound_init");
tcc_add_support(s1, "bcheck.o");
sym_index = find_elf_sym(symtab_section, "__bound_init");
if (!sym_index)
tcc_error("__bound_init not defined");
put_elf_reloc(symtab_section, init_section,
init_section->data_offset - 4, R_386_PC32, sym_index);
}