2009-02-23 Christophe Lyon <christophe.lyon@st.com>
[deliverable/binutils-gdb.git] / bfd / elf32-frv.c
index fab71ad90e4a4090257597fad13b2dc95caa5f78..01e15f9604430f54be6e69c80ce34c5558f572e4 100644 (file)
@@ -1,5 +1,5 @@
 /* FRV-specific support for 32-bit ELF.
-   Copyright 2002, 2003, 2004, 2005, 2006, 2007
+   Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008
    Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -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)
@@ -6847,7 +6838,7 @@ frv_elf_print_private_bfd_data (abfd, ptr)
   _bfd_elf_print_private_bfd_data (abfd, ptr);
 
   flags = elf_elfheader (abfd)->e_flags;
-  fprintf (file, _("private flags = 0x%lx:"), (long)flags);
+  fprintf (file, _("private flags = 0x%lx:"), (unsigned long) flags);
 
   switch (flags & EF_FRV_CPU_MASK)
     {
This page took 0.024569 seconds and 4 git commands to generate.