aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2002-07-30 05:40:20 +0000
committerAlan Modra <amodra@gmail.com>2002-07-30 05:40:20 +0000
commit9d46020e53ef3b47c3b9fa90d4f93410f233d3d7 (patch)
treee4c1c0c84373790eff4e5d8e32390877d72cb677
parent65844fe753b2ea632e29c31e406436760d03edc8 (diff)
downloadfsf-binutils-gdb-9d46020e53ef3b47c3b9fa90d4f93410f233d3d7.zip
fsf-binutils-gdb-9d46020e53ef3b47c3b9fa90d4f93410f233d3d7.tar.gz
fsf-binutils-gdb-9d46020e53ef3b47c3b9fa90d4f93410f233d3d7.tar.bz2
* elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags.
-rw-r--r--bfd/ChangeLog4
-rw-r--r--bfd/elfxx-ia64.c13
2 files changed, 17 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 284f275..7693399 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,7 @@
+2002-07-30 Alan Modra <amodra@bigpond.net.au>
+
+ * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags.
+
2002-07-26 Chris Demetriou <cgd@broadcom.com>
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE
diff --git a/bfd/elfxx-ia64.c b/bfd/elfxx-ia64.c
index eda0a05..4de90df 100644
--- a/bfd/elfxx-ia64.c
+++ b/bfd/elfxx-ia64.c
@@ -1187,6 +1187,19 @@ elfNN_ia64_final_write_processing (abfd, linker)
break;
}
}
+
+ if (! elf_flags_init (abfd))
+ {
+ unsigned long flags = 0;
+
+ if (abfd->xvec->byteorder == BFD_ENDIAN_BIG)
+ flags |= EF_IA_64_BE;
+ if (bfd_get_mach (abfd) == bfd_mach_ia64_elf64)
+ flags |= EF_IA_64_ABI64;
+
+ elf_elfheader(abfd)->e_flags = flags;
+ elf_flags_init (abfd) = true;
+ }
}
/* Hook called by the linker routine which adds symbols from an object