From 9d46020e53ef3b47c3b9fa90d4f93410f233d3d7 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 30 Jul 2002 05:40:20 +0000 Subject: [PATCH] * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags. --- bfd/ChangeLog | 4 ++++ bfd/elfxx-ia64.c | 13 +++++++++++++ 2 files changed, 17 insertions(+) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 284f2755d7..76933991b2 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +2002-07-30 Alan Modra + + * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags. + 2002-07-26 Chris Demetriou * 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 eda0a05d76..4de90dffc4 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