summaryrefslogtreecommitdiff
path: root/bfd/elf32-frv.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl@lucon.org>2008-07-21 14:36:07 +0000
committerH.J. Lu <hjl@lucon.org>2008-07-21 14:36:07 +0000
commit16d2765c9f3ad5569f7928ae33d29a22fbf5b7bb (patch)
tree42fc36025bde45a84d41514d241ea9d0b8438483 /bfd/elf32-frv.c
parent948253b5e0f3f434ddae136c4f64787ead93b2d5 (diff)
downloadbinutils-redhat-16d2765c9f3ad5569f7928ae33d29a22fbf5b7bb.tar.gz
2008-07-21 H.J. Lu <hongjiu.lu@intel.com>
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.
Diffstat (limited to 'bfd/elf32-frv.c')
-rw-r--r--bfd/elf32-frv.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/bfd/elf32-frv.c b/bfd/elf32-frv.c
index fab71ad90e..aad8253bbc 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)