From: Alan Modra Date: Thu, 16 Sep 2004 12:49:56 +0000 (+0000) Subject: bfd/ X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b6ee372a3e4a3c008d6576e6b5ab51f1cf01bed4;p=binutils-gdb.git 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. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index eb179d9d1b5..4d4ed463077 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2004-09-16 Alan Modra + + * 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 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update 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; diff --git a/ld/ChangeLog b/ld/ChangeLog index c36ee745c3f..5114aa79888 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2004-09-16 Alan Modra + + * emultempl/armelf_oabi.em (before_allocation): Add extra zero param + to bfd_elf32_arm_process_before_allocation call. + 2004-09-13 Paul Brook * emulparams/armsymbian.sh: Set TARGET1_IS_REL. diff --git a/ld/emultempl/armelf_oabi.em b/ld/emultempl/armelf_oabi.em index 8ff2ad13535..64f908ac161 100644 --- a/ld/emultempl/armelf_oabi.em +++ b/ld/emultempl/armelf_oabi.em @@ -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);