[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/15057] gld creates SHT_PROGBITS .bss section

From: ro at CeBiTec dot Uni-Bielefeld.DE
Subject: [Bug ld/15057] gld creates SHT_PROGBITS .bss section
Date: Thu, 24 Jan 2013 13:16:08 +0000


--- Comment #2 from Rainer Orth <ro at CeBiTec dot Uni-Bielefeld.DE> 2013-01-24 
13:16:08 UTC ---
> --- Comment #1 from Alan Modra <amodra at gmail dot com> 2013-01-24 01:40:40 
> UTC ---
> Create a link map for one of these failing tests (-Wl,-Map,<somefile>).  Look
> in <somefile> to see what sections (or data!) are going in to .bss.  If you
> find data from a linker script there's your problem, otherwise look at all the
> input objects contributing to .bss to see whether any have a SHT_PROGBITS 
> .bss.
>  If no input objects, then we might have a bug in the linker when eg. the
> linker created .dynbss is the only section in .bss output section.

Thanks, that helped a lot: with Sun as, several .bss.<symbol> sections
in the input object files are marked SHT_PROGBITS (I keep forgetting
about those), unlike Solaris/x86 with Sun as.

On Solaris/x86, gcc generates

        .section        .bss.def,"aw",@nobits

while on Solaris/SPARC we get this instead:

        .section        ".bss.def",#alloc,#write

It turns out that Solaris 10+ as supports the necessary
#nobits/#progbits syntax, while Solaris 9 does not.  gcc/
config/sparc/sparc.c (sparc_solaris_elf_asm_named_section) has

  /* ??? Handle SECTION_BSS.  */

while SECTION_BSS is handled explicitly in gcc/varasm.c

After all, a gcc issue.

Thanks for your help resolving it.


Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]