[PATCH 44/57][Arm][OBJDUMP] Add support for MVE instructions: vcvt and vrint
[deliverable/binutils-gdb.git] / bfd / elfxx-mips.c
index dfb36014066e84915c553909249bd4770f47aa0c..74dadf48f7d2f34ea2476af075194bdb6a9c2b78 100644 (file)
@@ -1,5 +1,5 @@
 /* MIPS-specific support for ELF
-   Copyright (C) 1993-2018 Free Software Foundation, Inc.
+   Copyright (C) 1993-2019 Free Software Foundation, Inc.
 
    Most of the information added by Ian Lance Taylor, Cygnus Support,
    <ian@cygnus.com>.
@@ -8992,9 +8992,7 @@ _bfd_mips_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
          /* This relocation describes which C++ vtable entries are actually
             used.  Record for later use during GC.  */
        case R_MIPS_GNU_VTENTRY:
-         BFD_ASSERT (h != NULL);
-         if (h != NULL
-             && !bfd_elf_gc_record_vtentry (abfd, sec, h, rel->r_offset))
+         if (!bfd_elf_gc_record_vtentry (abfd, sec, h, rel->r_offset))
            return FALSE;
          break;
 
@@ -9061,6 +9059,10 @@ _bfd_mips_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
              if (r_symndx == STN_UNDEF)
                break;
 
+             /* Likewise an absolute symbol.  */
+             if (bfd_is_abs_symbol (&h->root))
+               break;
+
              /* R_MIPS_HI16 against _gp_disp is used for $gp setup,
                 and has a special meaning.  */
              if (!NEWABI_P (abfd) && h != NULL
@@ -9077,14 +9079,13 @@ _bfd_mips_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
            case R_MIPS_26:
            case R_MICROMIPS_26_S1:
              howto = MIPS_ELF_RTYPE_TO_HOWTO (abfd, r_type, FALSE);
-             _bfd_error_handler
+             info->callbacks->einfo
                /* xgettext:c-format */
-               (_("%pB: relocation %s against `%s' can not be used"
-                  " when making a shared object; recompile with -fPIC"),
-                abfd, howto->name,
+               (_("%X%H: relocation %s against `%s' cannot be used"
+                  " when making a shared object; recompile with -fPIC\n"),
+                abfd, sec, rel->r_offset, howto->name,
                 (h) ? h->root.root.string : "a local symbol");
-             bfd_set_error (bfd_error_bad_value);
-             return FALSE;
+             break;
            default:
              break;
            }
This page took 0.063406 seconds and 4 git commands to generate.