aboutsummaryrefslogtreecommitdiff
path: root/bfd/elfxx-ia64.c
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 /bfd/elfxx-ia64.c
parent65844fe753b2ea632e29c31e406436760d03edc8 (diff)
downloadgdb-9d46020e53ef3b47c3b9fa90d4f93410f233d3d7.zip
gdb-9d46020e53ef3b47c3b9fa90d4f93410f233d3d7.tar.gz
gdb-9d46020e53ef3b47c3b9fa90d4f93410f233d3d7.tar.bz2
* elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags.
Diffstat (limited to 'bfd/elfxx-ia64.c')
-rw-r--r--bfd/elfxx-ia64.c13
1 files changed, 13 insertions, 0 deletions
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