]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
* elf32-arm.c (elf32_arm_check_relocs): Increment count for all
authorDaniel Jacobowitz <drow@false.org>
Tue, 29 Mar 2005 16:41:40 +0000 (16:41 +0000)
committerDaniel Jacobowitz <drow@false.org>
Tue, 29 Mar 2005 16:41:40 +0000 (16:41 +0000)
relocation types.  Don't count relocations which will use a PLT.

bfd/ChangeLog
bfd/elf32-arm.c

index b29e7c6bfe25d73d3ce4dc0c7432c5758cf2e8e7..992499d29d21e9be3f26bd23a2b63af31d4d82c7 100644 (file)
@@ -1,3 +1,8 @@
+2005-03-29  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * elf32-arm.c (elf32_arm_check_relocs): Increment count for all
+       relocation types.  Don't count relocations which will use a PLT.
+
 2005-03-22  Bob Wilson  <bob.wilson@acm.org>
 
        * xtensa-isa.c (xtensa_opcode_lookup, xtensa_state_lookup,
index 63452ca57fb1664b5ba11918c8d944aa3ade0fe9..2c88fe4c879701b619e8e6872620d271bd18cba5 100644 (file)
@@ -4096,18 +4096,9 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
                relocs_copied field of the hash table entry.  */
            if ((info->shared || htab->root.is_relocatable_executable)
                && (sec->flags & SEC_ALLOC) != 0
-               && ((r_type != R_ARM_PC24
-                    && r_type != R_ARM_PLT32
-#ifndef OLD_ARM_ABI
-                    && r_type != R_ARM_CALL
-                    && r_type != R_ARM_JUMP24
-                    && r_type != R_ARM_PREL31
-#endif
-                    && r_type != R_ARM_REL32
-                    && r_type != R_ARM_THM_PC22)
-                   || (h != NULL
-                       && (! info->symbolic
-                           || !h->def_regular))))
+               && (r_type == R_ARM_ABS32
+                   || (h != NULL && ! h->needs_plt
+                       && (! info->symbolic || ! h->def_regular))))
              {
                struct elf32_arm_relocs_copied *p, **head;
 
@@ -4187,9 +4178,7 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
                    p->count = 0;
                  }
 
-               if (r_type == R_ARM_ABS32
-                   || r_type == R_ARM_REL32)
-                 p->count += 1;
+               p->count += 1;
              }
            break;