From 50403a1fdba7b2750890718f02db106387a583f8 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 21 Jul 2008 14:36:07 +0000 Subject: [PATCH] 2008-07-21 H.J. Lu PR ld/6747 * elf32-frv.c (elf32_frv_relocate_section): Revert the change for PR ld/6446 checked in by accident on May 21, 2008. --- bfd/ChangeLog | 6 ++++++ bfd/elf32-frv.c | 11 +---------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 2e677da..c2e14fb 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2008-07-21 H.J. Lu + + PR ld/6747 + * elf32-frv.c (elf32_frv_relocate_section): Revert the change + for PR ld/6446 checked in by accident on May 21, 2008. + 2008-07-21 Nick Clifton * coff-sh.c (bfd_pe_print_pdata): Define to NULL for non diff --git a/bfd/elf32-frv.c b/bfd/elf32-frv.c index fab71ad..aad8253 100644 --- a/bfd/elf32-frv.c +++ b/bfd/elf32-frv.c @@ -2728,14 +2728,7 @@ elf32_frv_relocate_section (output_bfd, info, input_bfd, input_section, check_segment[2]; int silence_segment_error = !(info->shared || info->pie); unsigned long insn; - static bfd_boolean ef_frv_pic_flag_set = FALSE; - if (! ef_frv_pic_flag_set && IS_FDPIC (output_bfd)) - { - elf_elfheader (output_bfd)->e_flags |= EF_FRV_PIC; - ef_frv_pic_flag_set = TRUE; - } - symtab_hdr = & elf_tdata (input_bfd)->symtab_hdr; sym_hashes = elf_sym_hashes (input_bfd); relend = relocs + input_section->reloc_count; @@ -3992,9 +3985,7 @@ elf32_frv_relocate_section (output_bfd, info, input_bfd, input_section, } if (!silence_segment_error && (info->shared || info->pie)) return FALSE; - /* PR 6446: EF_FRV_PIC should be cleared if - there are any inter-segment relocations. */ - elf_elfheader (output_bfd)->e_flags &= ~ EF_FRV_PIC; + elf_elfheader (output_bfd)->e_flags |= EF_FRV_PIC; } switch (r_type) -- 2.7.4