PR ld/12152
authorRainer Orth <ro@TechFak.Uni-Bielefeld.DE>
Mon, 5 Mar 2012 16:02:19 +0000 (16:02 +0000)
committerRainer Orth <ro@TechFak.Uni-Bielefeld.DE>
Mon, 5 Mar 2012 16:02:19 +0000 (16:02 +0000)
* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
overflows for R_SPARC_UA32 in .stab sections.

bfd/ChangeLog
bfd/elfxx-sparc.c

index 019a05aee0a4aaf0681c7c5e6fff5fecefddbee7..195424ac0d7e4a3d5459d6b60c74087a94d310c9 100644 (file)
@@ -1,3 +1,9 @@
+2012-03-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR ld/12152
+       * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
+       overflows for R_SPARC_UA32 in .stab sections.
+
 2012-03-01  Alan Modra  <amodra@gmail.com>
 
        * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
index fe18a62cc99a87f45acdf5f80b3eace521367396..355382e5cabf1e70f6924a70c072bb3a27db9297 100644 (file)
@@ -1,5 +1,5 @@
 /* SPARC-specific support for ELF
-   Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011
+   Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
    Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -4069,7 +4069,9 @@ do_relocation:
                   We don't, but this breaks stabs debugging info, whose
                   relocations are only 32-bits wide.  Ignore overflows in
                   this case and also for discarded entries.  */
-               if ((r_type == R_SPARC_32 || r_type == R_SPARC_DISP32)
+               if ((r_type == R_SPARC_32
+                    || r_type == R_SPARC_UA32
+                    || r_type == R_SPARC_DISP32)
                    && (((input_section->flags & SEC_DEBUGGING) != 0
                         && strcmp (bfd_section_name (input_bfd,
                                                      input_section),