gdb/doc: Clarify vCont packet description
[binutils-gdb.git] / bfd / elf32-frv.c
index fa12528b3d11ab9ed7a4d5d894f8b9c1a5e783a9..a84ca7acc96b2d2b33ca969722b13181f2e68d20 100644 (file)
@@ -1,5 +1,5 @@
 /* FRV-specific support for 32-bit ELF.
-   Copyright (C) 2002-2015 Free Software Foundation, Inc.
+   Copyright (C) 2002-2016 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -2561,6 +2561,7 @@ frv_info_to_howto_rela (bfd *abfd ATTRIBUTE_UNUSED,
     default:
       if (r_type >= (unsigned int) R_FRV_max)
        {
+         /* xgettext:c-format */
          _bfd_error_handler (_("%B: invalid FRV reloc number: %d"), abfd, r_type);
          r_type = 0;
        }
@@ -2775,6 +2776,7 @@ elf32_frv_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
        case R_FRV_32:
          if (! IS_FDPIC (output_bfd))
            goto non_fdpic;
+         /* Fall through.  */
 
        case R_FRV_GOT12:
        case R_FRV_GOTHI:
@@ -2825,6 +2827,7 @@ elf32_frv_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
                                                      rel->r_addend))
            {
              info->callbacks->einfo
+               /* xgettext:c-format */
                (_("%H: relocation to `%s+%v'"
                   " may have caused the error above\n"),
                 input_bfd, input_section, rel->r_offset, name, rel->r_addend);
@@ -3911,6 +3914,7 @@ elf32_frv_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
                   && picrel->d.h->root.type == bfd_link_hash_undefined))
            {
              info->callbacks->einfo
+               /* xgettext:c-format */
                (_("%H: reloc against `%s' references a different segment\n"),
                 input_bfd, input_section, rel->r_offset, name);
            }
@@ -4031,13 +4035,13 @@ elf32_frv_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
          switch (r)
            {
            case bfd_reloc_overflow:
-             r = info->callbacks->reloc_overflow
+             (*info->callbacks->reloc_overflow)
                (info, (h ? &h->root : NULL), name, howto->name,
                 (bfd_vma) 0, input_bfd, input_section, rel->r_offset);
              break;
 
            case bfd_reloc_undefined:
-             r = info->callbacks->undefined_symbol
+             (*info->callbacks->undefined_symbol)
                (info, name, input_bfd, input_section, rel->r_offset, TRUE);
              break;
 
@@ -4061,13 +4065,11 @@ elf32_frv_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
          if (msg)
            {
              info->callbacks->einfo
+               /* xgettext:c-format */
                (_("%H: reloc against `%s': %s\n"),
                 input_bfd, input_section, rel->r_offset, name, msg);
              return FALSE;
            }
-
-         if (! r)
-           return FALSE;
        }
     }
 
@@ -4640,7 +4642,7 @@ _frvfdpic_relax_tls_entries (struct frvfdpic_relocs_info *entry,
                            + 32768) < (bfd_vma)65536))
          || (entry->symndx != -1
              && (elf_hash_table (dinfo->info)->tls_sec->size
-                 + abs (entry->addend) < 32768 + FRVFDPIC_TLS_BIAS))))
+                 + entry->addend < 32768 + FRVFDPIC_TLS_BIAS))))
     {
       if (! changed)
        {
@@ -5442,7 +5444,7 @@ elf32_frvfdpic_size_dynamic_sections (bfd *output_bfd,
   if (elf_hash_table (info)->dynamic_sections_created)
     {
       /* Set the contents of the .interp section to the interpreter.  */
-      if (bfd_link_executable (info))
+      if (bfd_link_executable (info) && !info->nointerp)
        {
          s = bfd_get_linker_section (dynobj, ".interp");
          BFD_ASSERT (s != NULL);
@@ -6269,6 +6271,7 @@ elf32_frv_check_relocs (bfd *abfd,
        default:
        bad_reloc:
          info->callbacks->einfo
+           /* xgettext:c-format */
            (_("%B: unsupported relocation type %i\n"),
             abfd, ELF32_R_TYPE (rel->r_info));
          return FALSE;
@@ -6351,8 +6354,9 @@ frv_elf_arch_extension_p (flagword base, flagword extension)
    object file when linking.  */
 
 static bfd_boolean
-frv_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
+frv_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info)
 {
+  bfd *obfd = info->output_bfd;
   flagword old_flags, old_partial;
   flagword new_flags, new_partial;
   bfd_boolean error = FALSE;
@@ -6367,9 +6371,10 @@ frv_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
     new_flags &= ~EF_FRV_PIC;
 
 #ifdef DEBUG
-  (*_bfd_error_handler) ("old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s, filename = %s",
-                        old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no",
-                        bfd_get_filename (ibfd));
+  _bfd_error_handler
+    ("old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s, filename = %s",
+     old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no",
+     bfd_get_filename (ibfd));
 #endif
 
   if (!elf_flags_init (obfd))                  /* First call, no flags set.  */
@@ -6517,7 +6522,8 @@ frv_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
              old_flags &= ~ EF_FRV_PIC_FLAGS;
 #ifndef FRV_NO_PIC_ERROR
              error = TRUE;
-             (*_bfd_error_handler)
+             _bfd_error_handler
+               /* xgettext:c-format */
                (_("%s: compiled with %s and linked with modules that use non-pic relocations"),
                 bfd_get_filename (ibfd),
                 (new_flags & EF_FRV_BIGPIC) ? "-fPIC" : "-fpic");
@@ -6570,7 +6576,8 @@ frv_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
       if (new_opt[0])
        {
          error = TRUE;
-         (*_bfd_error_handler)
+         _bfd_error_handler
+           /* xgettext:c-format */
            (_("%s: compiled with %s and linked with modules compiled with %s"),
             bfd_get_filename (ibfd), new_opt, old_opt);
        }
@@ -6582,7 +6589,8 @@ frv_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
        {
          old_flags |= new_partial;
          error = TRUE;
-         (*_bfd_error_handler)
+         _bfd_error_handler
+           /* xgettext:c-format */
            (_("%s: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)"),
             bfd_get_filename (ibfd), (long)new_partial, (long)old_partial);
        }
@@ -6603,11 +6611,11 @@ frv_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
     {
       error = TRUE;
       if (IS_FDPIC (obfd))
-       (*_bfd_error_handler)
+       _bfd_error_handler
          (_("%s: cannot link non-fdpic object file into fdpic executable"),
           bfd_get_filename (ibfd));
       else
-       (*_bfd_error_handler)
+       _bfd_error_handler
          (_("%s: cannot link fdpic object file into non-fdpic executable"),
           bfd_get_filename (ibfd));
     }