public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: "Kris Warkentin" <kewarken@qnx.com>
To: "Alan Modra" <amodra@bigpond.net.au>
Cc: "Gcc ML" <gcc@gcc.gnu.org>, <binutils@sources.redhat.com>
Subject: Re: ppc problem with .rodata.str1.4. binutils requirement for gcc 3.3.1?
Date: Sat, 29 Nov 2003 18:14:00 -0000	[thread overview]
Message-ID: <002c01c3b6a4$c2232200$6400a8c0@dash> (raw)
In-Reply-To: <20031129014255.GT2508@bubble.sa.bigpond.net.au>

Interesting.  So it might be an issue with gcc but it looks like the linker
can deal with it.  On our end, it actually turned out that the process that
was spawning ld (our bootable image generator) was using a special link
script that wasn't taking into account the presence of these sections.  When
we put them into the link script, the warnings went away and the image could
boot.  Thanks very much for the help.  I'll try out your patch and see if it
cleans up our objects for us.

cheers,

Kris

----- Original Message ----- 
From: "Alan Modra" <amodra@bigpond.net.au>
To: "Kris Warkentin" <kewarken@qnx.com>
Cc: "Gcc ML" <gcc@gcc.gnu.org>; <binutils@sources.redhat.com>
Sent: Friday, November 28, 2003 8:42 PM
Subject: Re: ppc problem with .rodata.str1.4. binutils requirement for gcc
3.3.1?


> On Fri, Nov 28, 2003 at 01:07:21PM -0500, Kris Warkentin wrote:
> > In the course of building some powerpc startup code we found ld
complaining
> > about "allocated section `.rodata.str1.4' not in segment" and "allocated
> > section `.eh_frame' not in segment".  I observed that some of the
objects in
> > the startup had .rodata.str1.4 sections in them.  I also observed that
if I
> > took the ld from binutils 2.12.1 to 2.14, the problem went away.
>
> This is very likely a bug in gcc.  I reckon that if you look at your
> object file with readelf or objdump, you'll find that this .rodata
> section is marked read/write.
>
> The fix is easy.
>
> --- gcc-ppc64-33.orig/gcc/config/rs6000/rs6000.c 2003-09-27
10:07:41.000000000 +0930
> +++ gcc-ppc64-33/gcc/config/rs6000/rs6000.c 2003-11-29 12:04:22.000000000
+1030
> @@ -13138,14 +13659,8 @@ rs6000_elf_section_type_flags (decl, nam
>       const char *name;
>       int reloc;
>  {
> -  unsigned int flags
> -    = default_section_type_flags_1 (decl, name, reloc,
> -     flag_pic || DEFAULT_ABI == ABI_AIX);
> -
> -  if (TARGET_RELOCATABLE)
> -    flags |= SECTION_WRITE;
> -
> -  return flags;
> +  return default_section_type_flags_1 (decl, name, reloc,
> +        flag_pic || DEFAULT_ABI == ABI_AIX);
>  }
>
>  /* Record an element in the table of global constructors.  SYMBOL is
>
>
> > I didn't find any talk of a hard binutils requirement for the 3.3 series
of
> > gcc but perhaps I missed it.  Can anyone shed some light on this?  I
hope
> > I'm not too astonishing in my ignorance but this .rodata.str1.x doesn't
seem
> > to be generated by our older gcc and I don't really know what the
> > significance of it all is.
>
> Sections like .rodata.str1.4 are generated by gcc to support merging of
> duplicate constants and strings by ld.  Older gcc's won't do this, nor
> will a newer gcc built for a system without the requisite ld support.
>
> -- 
> Alan Modra
> IBM OzLabs - Linux Technology Centre
>


  reply	other threads:[~2003-11-29 18:14 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <087e01c3b5da$77d658e0$0202040a@catdog>
2003-11-29  1:42 ` Alan Modra
2003-11-29 18:14   ` Kris Warkentin [this message]
     [not found] <44D2755E.9020600@us.ibm.com>
2006-08-04  1:30 ` Link problems with section anchors Alan Modra
2006-08-04  9:04   ` Richard Sandiford
2006-08-04 13:53     ` Steven Munroe
2006-08-04 13:54     ` David Edelsohn
2006-08-04 14:01       ` Richard Sandiford
2006-08-04 14:12         ` David Edelsohn
     [not found] <3A3FC75F7C72D711A7DC009027AC9C4B1788D9@jupiter>
2004-05-19  3:30 ` Powerpc Linux build fails Alan Modra
2004-05-19  4:27   ` Geoff Keating
2004-05-19  5:10     ` Alan Modra
2004-05-19 16:24       ` Kumar Gala
2004-05-20  0:44         ` Alan Modra
2003-11-28 18:21 ppc problem with .rodata.str1.4. binutils requirement for gcc 3.3.1? Kris Warkentin
  -- strict thread matches above, loose matches on Subject: below --
2001-12-31 19:09 Compiling kernel 2.4.17 fails at link stage Krishnakumar B
2002-01-04  3:50 ` Alan Modra
2002-01-04 12:39   ` [Linux-ia64] " Alan Modra
2001-10-24 18:26 Release 2.12 Hans-Peter Nilsson
2001-10-24 18:38 ` Alan Modra
2001-10-24 18:43   ` David O'Brien
2001-10-24 19:30     ` Alan Modra
2001-10-24 19:35       ` MMIX (was: Re: Release 2.12) Hans-Peter Nilsson
2001-10-24 21:45       ` Release 2.12 Eric Christopher
2001-10-25  8:41         ` H . J . Lu
2001-10-25  8:47       ` H . J . Lu
2001-10-24 18:49   ` Daniel Jacobowitz
2001-10-24 19:43     ` Alan Modra
2001-10-24 20:10       ` Daniel Jacobowitz
2001-10-24 20:35         ` Alan Modra
2001-10-24 20:44           ` Daniel Jacobowitz
2001-10-25  5:09         ` Christopher C. Chimelis
2001-10-25  1:56       ` Philip Blundell
2001-10-25  8:30         ` H . J . Lu
2001-10-25  8:47           ` David O'Brien
     [not found]       ` <amodra@bigpond.net.au>
2002-01-04 17:42         ` [Linux-ia64] Compiling kernel 2.4.17 fails at link stage Grant Grundler
2002-01-04 17:59           ` H . J . Lu
2002-01-04 20:37             ` Grant Grundler
2002-01-04 22:39               ` H . J . Lu
2002-01-07 12:52                 ` Grant Grundler
2002-01-04 19:21           ` Alan Modra
2003-11-29  2:33         ` ppc problem with .rodata.str1.4. binutils requirement for gcc 3.3.1? David Edelsohn
2003-11-29  3:05           ` Alan Modra
2003-11-29  4:06         ` David Edelsohn
2003-11-29  4:10           ` Andrew Pinski
2003-11-29  4:20             ` David Edelsohn
2003-11-29  6:47               ` Alan Modra
2003-11-29 19:40         ` David Edelsohn
2004-05-19 15:19         ` Powerpc Linux build fails David Edelsohn
2004-05-20  0:39           ` Alan Modra
2004-05-20  1:24             ` Alan Modra
2004-05-20  1:46               ` Alan Modra
2004-05-20  2:29         ` David Edelsohn
2004-05-20  3:10           ` Alan Modra
2006-08-04  1:49         ` Link problems with section anchors David Edelsohn
2006-08-04  2:04           ` Alan Modra
2001-10-24 19:37   ` Release 2.12 Russ Allbery
2001-10-24 19:52     ` Alan Modra
2001-10-25  0:46 ` H . J . Lu
2001-10-25  8:57   ` David O'Brien
2001-10-25  9:38     ` H . J . Lu
2001-10-25  9:44       ` H . J . Lu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='002c01c3b6a4$c2232200$6400a8c0@dash' \
    --to=kewarken@qnx.com \
    --cc=amodra@bigpond.net.au \
    --cc=binutils@sources.redhat.com \
    --cc=gcc@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).