bfd/
authorAlan Modra <amodra@gmail.com>
Thu, 16 Sep 2004 12:49:56 +0000 (12:49 +0000)
committerAlan Modra <amodra@gmail.com>
Thu, 16 Sep 2004 12:49:56 +0000 (12:49 +0000)
* elf32-arm.h (elf32_arm_gc_sweep_hook): Add #ifndef OLD_ARM_ABI
around uses of R_ARM_TARGET1.
(elf32_arm_check_relocs): Likewise.
ld/
* emultempl/armelf_oabi.em (before_allocation): Add extra zero param
to bfd_elf32_arm_process_before_allocation call.

bfd/ChangeLog
bfd/elf32-arm.h
ld/ChangeLog
ld/emultempl/armelf_oabi.em

index eb179d9d1b54a140ed797d05f8a3c2ee4edb7fd0..4d4ed463077e8dee41169383d506fb7011436cee 100644 (file)
@@ -1,3 +1,9 @@
+2004-09-16  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-arm.h (elf32_arm_gc_sweep_hook): Add #ifndef OLD_ARM_ABI
+       around uses of R_ARM_TARGET1.
+       (elf32_arm_check_relocs): Likewise.
+
 2004-09-13  Paul Brook  <paul@codesourcery.com>
 
        * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
index ac3ec95be3f579309604eb15e53f7ea08755bdf6..93140454d2dd91e97625ad6854e68890da62ed5a 100644 (file)
@@ -2759,7 +2759,9 @@ elf32_arm_gc_sweep_hook (bfd *                     abfd ATTRIBUTE_UNUSED,
 
       case R_ARM_ABS32:
       case R_ARM_REL32:
+#ifndef OLD_ARM_ABI
       case R_ARM_TARGET1:
+#endif
       case R_ARM_PC24:
       case R_ARM_PLT32:
        r_symndx = ELF32_R_SYM (rel->r_info);
@@ -2775,8 +2777,10 @@ elf32_arm_gc_sweep_hook (bfd *                     abfd ATTRIBUTE_UNUSED,
              h->plt.refcount -= 1;
 
            if (ELF32_R_TYPE (rel->r_info) == R_ARM_ABS32
-               || ELF32_R_TYPE (rel->r_info) == R_ARM_REL32
-               || ELF32_R_TYPE (rel->r_info) == R_ARM_TARGET1)
+#ifndef OLD_ARM_ABI
+               || ELF32_R_TYPE (rel->r_info) == R_ARM_TARGET1
+#endif
+               || ELF32_R_TYPE (rel->r_info) == R_ARM_REL32)
              {
                eh = (struct elf32_arm_link_hash_entry *) h;
 
@@ -2887,7 +2891,9 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
 
          case R_ARM_ABS32:
          case R_ARM_REL32:
+#ifndef OLD_ARM_ABI
          case R_ARM_TARGET1:
+#endif
          case R_ARM_PC24:
          case R_ARM_PLT32:
            if (h != NULL)
@@ -2930,8 +2936,10 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
                && (sec->flags & SEC_ALLOC) != 0
                && ((ELF32_R_TYPE (rel->r_info) != R_ARM_PC24
                     && ELF32_R_TYPE (rel->r_info) != R_ARM_PLT32
-                    && ELF32_R_TYPE (rel->r_info) != R_ARM_REL32
-                    && ELF32_R_TYPE (rel->r_info) != R_ARM_TARGET1)
+#ifndef OLD_ARM_ABI
+                    && ELF32_R_TYPE (rel->r_info) != R_ARM_TARGET1
+#endif
+                    && ELF32_R_TYPE (rel->r_info) != R_ARM_REL32)
                    || (h != NULL
                        && (! info->symbolic
                            || (h->elf_link_hash_flags
@@ -3016,8 +3024,10 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
                  }
 
                if (ELF32_R_TYPE (rel->r_info) == R_ARM_ABS32
-                   || ELF32_R_TYPE (rel->r_info) == R_ARM_REL32
-                   || ELF32_R_TYPE (rel->r_info) == R_ARM_TARGET1)
+#ifndef OLD_ARM_ABI
+                   || ELF32_R_TYPE (rel->r_info) == R_ARM_TARGET1
+#endif
+                   || ELF32_R_TYPE (rel->r_info) == R_ARM_REL32)
                  p->count += 1;
              }
            break;
index c36ee745c3fb6af5ce06eb10139375dd7a3f48b1..5114aa79888bd26f73ee54e8d4c555f68f9aa7e3 100644 (file)
@@ -1,3 +1,8 @@
+2004-09-16  Alan Modra  <amodra@bigpond.net.au>
+
+       * emultempl/armelf_oabi.em (before_allocation): Add extra zero param
+       to bfd_elf32_arm_process_before_allocation call.
+
 2004-09-13  Paul Brook  <paul@codesourcery.com>
 
        * emulparams/armsymbian.sh: Set TARGET1_IS_REL.
index 8ff2ad135352bf6735bd5cdf8fab25a98cf4e955..64f908ac1616f4f765a31c26240ed6973279b1fd 100644 (file)
@@ -68,7 +68,8 @@ gld${EMULATION_NAME}_before_allocation (void)
   {
     LANG_FOR_EACH_INPUT_STATEMENT (is)
       {
-       if (!bfd_elf32_arm_process_before_allocation (is->the_bfd, &link_info, 0, 0))
+       if (!bfd_elf32_arm_process_before_allocation (is->the_bfd, &link_info,
+                                                     0, 0, 0))
          {
            /* xgettext:c-format */
            einfo (_("Errors encountered processing file %s"), is->filename);