Mon Jun 20 11:06:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
+ * aoutx.h (NAME(aout,final_link)): Check flavour of sub, not abfd,
+ when computing reloc sizes. From Eric Youngdale
+ <ericy@cais.cais.com>.
+ * elfcode.h (elf_bfd_final_link): Don't try to compute maximum
+ reloc count or size for a non-ELF file.
+
* mipsbsd.c (MY_final_link_callback): Define to avoid warning.
* hp300hpux.c (MY_final_link_callback): Define to avoid warning.
drsize = 0;
for (sub = info->input_bfds; sub != (bfd *) NULL; sub = sub->link_next)
{
- if (bfd_get_flavour (abfd) == bfd_target_aout_flavour)
+ if (bfd_get_flavour (sub) == bfd_target_aout_flavour)
{
trsize += exec_hdr (sub)->a_trsize;
drsize += exec_hdr (sub)->a_drsize;
if (sym_count > max_sym_count)
max_sym_count = sym_count;
- }
- if ((sec->flags & SEC_RELOC) != 0)
- {
- size_t ext_size;
+ if ((sec->flags & SEC_RELOC) != 0)
+ {
+ size_t ext_size;
- ext_size = elf_section_data (sec)->rel_hdr.sh_size;
- if (ext_size > max_external_reloc_size)
- max_external_reloc_size = ext_size;
- if (sec->reloc_count > max_internal_reloc_count)
- max_internal_reloc_count = sec->reloc_count;
+ ext_size = elf_section_data (sec)->rel_hdr.sh_size;
+ if (ext_size > max_external_reloc_size)
+ max_external_reloc_size = ext_size;
+ if (sec->reloc_count > max_internal_reloc_count)
+ max_internal_reloc_count = sec->reloc_count;
+ }
}
}
}