aboutsummaryrefslogtreecommitdiff
path: root/bfd/coffcode.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-10-06 19:49:48 +0000
committerIan Lance Taylor <ian@airs.com>1995-10-06 19:49:48 +0000
commit7860fe38465c4a08977b2b65d142be9ebb0270eb (patch)
tree14d7cd11d9aff7a4dbb8c7c9c8c8391aceee36de /bfd/coffcode.h
parent13a6c7537424537ed8eca088dacbe11365e992f2 (diff)
downloadgdb-7860fe38465c4a08977b2b65d142be9ebb0270eb.zip
gdb-7860fe38465c4a08977b2b65d142be9ebb0270eb.tar.gz
gdb-7860fe38465c4a08977b2b65d142be9ebb0270eb.tar.bz2
* coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG
if there are symbols, for native AIX ld compatibility.
Diffstat (limited to 'bfd/coffcode.h')
-rw-r--r--bfd/coffcode.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/bfd/coffcode.h b/bfd/coffcode.h
index 327d575..152f6f1 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;