* libecoff.h (ecoff_data_type): Add linker field.

* ecoff.c (ecoff_write_object_contents): Check new tdata linker
	field, rather than outsymbols being non-NULL, to decide whether to
	output the symbols and relocs.
	(ecoff_bfd_final_link): Set new tdata linker field to true.
This commit is contained in:
Ian Lance Taylor
1994-06-06 17:44:34 +00:00
parent d2c71068e8
commit 469984d1f6
3 changed files with 16 additions and 6 deletions

View File

@@ -2918,11 +2918,10 @@ ecoff_write_object_contents (abfd)
goto error_return;
/* Build the external symbol information. This must be done before
writing out the relocs so that we know the symbol indices. The
condition checks makes sure this object was not created by
ecoff_bfd_final_link, since if it was we do not want to tamper
with the external symbols. */
if (bfd_get_outsymbols (abfd) != (asymbol **) NULL)
writing out the relocs so that we know the symbol indices. We
don't do this if this BFD was created by the backend linker,
since it will have already handled the symbols and relocs. */
if (! ecoff_data (abfd)->linker)
{
symhdr->iextMax = 0;
symhdr->issExtMax = 0;
@@ -4388,6 +4387,8 @@ ecoff_bfd_final_link (abfd, info)
bfd_get_symcount (abfd) = symhdr->iextMax + symhdr->isymMax;
ecoff_data (abfd)->linker = true;
return true;
}