From 42e654f9aa349230e47237252275c5e7ae79e3f8 Mon Sep 17 00:00:00 2001 From: Per Fogelstrom Date: Sun, 29 Sep 1996 20:26:46 +0000 Subject: On popular demand: annoying kernel link messages fixed :-) --- gnu/usr.bin/binutils/bfd/elf32-mips.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'gnu/usr.bin/binutils') diff --git a/gnu/usr.bin/binutils/bfd/elf32-mips.c b/gnu/usr.bin/binutils/bfd/elf32-mips.c index 1bc95b8d06f..d018c6901c8 100644 --- a/gnu/usr.bin/binutils/bfd/elf32-mips.c +++ b/gnu/usr.bin/binutils/bfd/elf32-mips.c @@ -1730,12 +1730,23 @@ _bfd_mips_elf_merge_private_bfd_data (ibfd, obfd) } /* Warn about any other mismatches */ - if (new_flags != old_flags) + if ((new_flags & ~(EF_MIPS_ARCH | EF_MIPS_NOREORDER)) != + (old_flags & ~(EF_MIPS_ARCH | EF_MIPS_NOREORDER))) (*_bfd_error_handler) ("%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)", bfd_get_filename (ibfd), (unsigned long) new_flags, (unsigned long) old_flags); + /* Warn about ISA LEVEL mismatch */ + if ((new_flags & EF_MIPS_ARCH) > (old_flags & EF_MIPS_ARCH)) { + (*_bfd_error_handler) + ("%s: increases ISA level to ISA%d from ISA%d", + bfd_get_filename (ibfd), (unsigned long) new_flags >> 28, + (unsigned long) old_flags >> 28); + elf_elfheader (obfd)->e_flags &= ~EF_MIPS_ARCH; + elf_elfheader (obfd)->e_flags |= new_flags & EF_MIPS_ARCH; + } + bfd_set_error (bfd_error_bad_value); return false; } -- cgit v1.2.3