summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@nildram.co.uk>2002-07-26 18:56:24 +0000
committerRichard Sandiford <rsandifo@nildram.co.uk>2002-07-26 18:56:24 +0000
commit030ef18267394cfd274165a6bc924aa54335af8a (patch)
treeed0cabde8dbfa11377ab1a313f459e1315166c14
parent9ff641bf4f80d781cf30f4bbd2af816100bb726c (diff)
downloadgdb-030ef18267394cfd274165a6bc924aa54335af8a.tar.gz
[bfd/]
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE flags into resulting BFD. [ld/testsuite/] * ld-mips-elf/mips16-1.d, * ld-mips-elf/mips16-1[ab].s: New test. * ld-mips-elf/mips-elf.exp: Run it.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elfxx-mips.c9
2 files changed, 14 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index e513afc3235..284f2755d7d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2002-07-26 Chris Demetriou <cgd@broadcom.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE
+ flags into resulting BFD.
+
2002-07-26 Alan Modra <amodra@bigpond.net.au>
From John Reiser <jreiser@BitWagon.com>
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 3084885d926..78b331053e3 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -7803,6 +7803,15 @@ _bfd_mips_elf_merge_private_bfd_data (ibfd, obfd)
old_flags &= ~EF_MIPS_ABI;
}
+ /* For now, allow arbitrary mixing of ASEs (retain the union). */
+ if ((new_flags & EF_MIPS_ARCH_ASE) != (old_flags & EF_MIPS_ARCH_ASE))
+ {
+ elf_elfheader (obfd)->e_flags |= new_flags & EF_MIPS_ARCH_ASE;
+
+ new_flags &= ~ EF_MIPS_ARCH_ASE;
+ old_flags &= ~ EF_MIPS_ARCH_ASE;
+ }
+
/* Warn about any other mismatches */
if (new_flags != old_flags)
{