aboutsummaryrefslogtreecommitdiff
path: root/bfd/elfxx-mips.c
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2002-07-26 18:56:25 +0000
committerRichard Sandiford <rdsandiford@googlemail.com>2002-07-26 18:56:25 +0000
commitfb39dac1ef45db850a7647f4bf1da52ee5900543 (patch)
treeb92922e90b25ac2c8212ac41cba70f20a2ff24c6 /bfd/elfxx-mips.c
parent7dcd22c2769e452b30edfadba3d98e93ec99aedd (diff)
downloadgdb-fb39dac1ef45db850a7647f4bf1da52ee5900543.zip
gdb-fb39dac1ef45db850a7647f4bf1da52ee5900543.tar.gz
gdb-fb39dac1ef45db850a7647f4bf1da52ee5900543.tar.bz2
[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.
Diffstat (limited to 'bfd/elfxx-mips.c')
-rw-r--r--bfd/elfxx-mips.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 3084885..78b3310 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)
{