diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c87895d4dd..b4881a8f0f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -8,6 +8,9 @@ Fri Oct 6 12:24:47 1995 Michael Meissner Fri Oct 6 12:04:02 1995 Ian Lance Taylor + * coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG + if there are symbols, for native AIX ld compatibility. + * coffcode.h (bfd_coff_backend_data): Add new field _bfd_coff_pointerize_aux_hook. (coff_pointerize_aux_hook): Define as a function if RS6000COFF_C diff --git a/bfd/coffcode.h b/bfd/coffcode.h index 327d57590a..152f6f1bae 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -2072,7 +2072,14 @@ coff_write_object_contents (abfd) backend linker, and obj_raw_syment_count is not valid until after coff_write_symbols is called. */ if (obj_raw_syment_count (abfd) != 0) - internal_f.f_symptr = sym_base; + { + internal_f.f_symptr = sym_base; +#ifdef RS6000COFF_C + /* AIX appears to require that F_RELFLG not be set if there are + local symbols but no relocations. */ + internal_f.f_flags &=~ F_RELFLG; +#endif + } else { internal_f.f_symptr = 0;