2016-08-26 Thomas Preud'homme <thomas.preudhomme@arm.com>
[deliverable/binutils-gdb.git] / bfd / coff-arm.c
index d47b77e3509e728d32ee8aad5c170ce94fb6429d..34ae35ce48056e486c6b23728f6bd0a3a49ce98f 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD back-end for ARM COFF files.
-   Copyright (C) 1990-2014 Free Software Foundation, Inc.
+   Copyright (C) 1990-2016 Free Software Foundation, Inc.
    Written by Cygnus Support.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -1222,7 +1222,7 @@ coff_arm_relocate_section (bfd *output_bfd,
          relocations to be reflected in section's data.  */
       if (rel->r_type == ARM_26
           && h != NULL
-          && info->relocatable
+          && bfd_link_relocatable (info)
           && (h->root.type == bfd_link_hash_defined
              || h->root.type == bfd_link_hash_defweak)
           && (h->root.u.def.section->output_section
@@ -1255,7 +1255,7 @@ coff_arm_relocate_section (bfd *output_bfd,
 #ifdef ARM_WINCE
       /* MS ARM-CE makes the reloc relative to the opcode's pc, not
         the next opcode's pc, so is off by one.  */
-      if (howto->pc_relative && !info->relocatable)
+      if (howto->pc_relative && !bfd_link_relocatable (info))
        addend -= 8;
 #endif
 
@@ -1265,7 +1265,7 @@ coff_arm_relocate_section (bfd *output_bfd,
          then we should ignore the symbol value.  */
       if (howto->pc_relative && howto->pcrel_offset)
         {
-          if (info->relocatable)
+          if (bfd_link_relocatable (info))
             continue;
          /* FIXME - it is not clear which targets need this next test
             and which do not.  It is known that it is needed for the
@@ -1311,7 +1311,7 @@ coff_arm_relocate_section (bfd *output_bfd,
              stub generation to the final linker pass. If we fail to
             verify that the name is defined, we'll try to build stubs
             for an undefined name...  */
-          if (! info->relocatable
+          if (! bfd_link_relocatable (info)
              && (   h->root.type == bfd_link_hash_defined
                  || h->root.type == bfd_link_hash_defweak))
             {
@@ -1561,13 +1561,10 @@ coff_arm_relocate_section (bfd *output_bfd,
                     + sec->output_offset);
              }
 
-         else if (! info->relocatable)
-           {
-             if (! ((*info->callbacks->undefined_symbol)
-                    (info, h->root.root.string, input_bfd, input_section,
-                     rel->r_vaddr - input_section->vma, TRUE)))
-               return FALSE;
-           }
+         else if (! bfd_link_relocatable (info))
+           (*info->callbacks->undefined_symbol)
+             (info, h->root.root.string, input_bfd, input_section,
+              rel->r_vaddr - input_section->vma, TRUE);
        }
 
       /* Emit a reloc if the backend thinks it needs it.  */
@@ -1582,7 +1579,7 @@ coff_arm_relocate_section (bfd *output_bfd,
        rstat = bfd_reloc_ok;
 #ifndef ARM_WINCE
       /* Only perform this fix during the final link, not a relocatable link.  */
-      else if (! info->relocatable
+      else if (! bfd_link_relocatable (info)
               && howto->type == ARM_THUMB23)
         {
           /* This is pretty much a copy of what the default
@@ -1698,7 +1695,7 @@ coff_arm_relocate_section (bfd *output_bfd,
         }
 #endif
       else
-        if (info->relocatable && ! howto->partial_inplace)
+        if (bfd_link_relocatable (info) && ! howto->partial_inplace)
             rstat = bfd_reloc_ok;
         else
          rstat = _bfd_final_link_relocate (howto, input_bfd, input_section,
@@ -1706,7 +1703,7 @@ coff_arm_relocate_section (bfd *output_bfd,
                                            rel->r_vaddr - input_section->vma,
                                            val, addend);
       /* Only perform this fix during the final link, not a relocatable link.  */
-      if (! info->relocatable
+      if (! bfd_link_relocatable (info)
          && (rel->r_type == ARM_32 || rel->r_type == ARM_RVA32))
        {
          /* Determine if we need to set the bottom bit of a relocated address
@@ -1764,11 +1761,10 @@ coff_arm_relocate_section (bfd *output_bfd,
                  return FALSE;
              }
 
-           if (! ((*info->callbacks->reloc_overflow)
-                  (info, (h ? &h->root : NULL), name, howto->name,
-                   (bfd_vma) 0, input_bfd, input_section,
-                   rel->r_vaddr - input_section->vma)))
-             return FALSE;
+           (*info->callbacks->reloc_overflow)
+             (info, (h ? &h->root : NULL), name, howto->name,
+              (bfd_vma) 0, input_bfd, input_section,
+              rel->r_vaddr - input_section->vma);
          }
        }
     }
@@ -1968,7 +1964,7 @@ bfd_arm_get_bfd_for_interworking (bfd *            abfd,
 
   /* If we are only performing a partial link do not bother
      getting a bfd to hold the glue.  */
-  if (info->relocatable)
+  if (bfd_link_relocatable (info))
     return TRUE;
 
   globals = coff_arm_hash_table (info);
@@ -2021,7 +2017,7 @@ bfd_arm_process_before_allocation (bfd *                   abfd,
 
   /* If we are only performing a partial link do not bother
      to construct any glue.  */
-  if (info->relocatable)
+  if (bfd_link_relocatable (info))
     return TRUE;
 
   /* Here we have a bfd that is to be included on the link.  We have a hook
This page took 0.026938 seconds and 4 git commands to generate.