aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2004-09-16 12:49:56 +0000
committerAlan Modra <amodra@gmail.com>2004-09-16 12:49:56 +0000
commitb6ee372a3e4a3c008d6576e6b5ab51f1cf01bed4 (patch)
treec73f0be784e17bfe5530e97a07b6880e10f8afc6 /bfd/elf32-arm.h
parent * gdb.texinfo (Set Breaks): Add index entry for setting (diff)
downloadbinutils-gdb-b6ee372a3e4a3c008d6576e6b5ab51f1cf01bed4.tar.gz
binutils-gdb-b6ee372a3e4a3c008d6576e6b5ab51f1cf01bed4.tar.bz2
binutils-gdb-b6ee372a3e4a3c008d6576e6b5ab51f1cf01bed4.zip
bfd/
* 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.
Diffstat (limited to 'bfd/elf32-arm.h')
-rw-r--r--bfd/elf32-arm.h22
1 files changed, 16 insertions, 6 deletions
diff --git a/bfd/elf32-arm.h b/bfd/elf32-arm.h
index ac3ec95be3f..93140454d2d 100644
--- a/bfd/elf32-arm.h
+++ b/bfd/elf32-arm.h
@@ -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;