This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Does gcc ever use section symbol? (Re: PATCH: Multiple sections with same name don't work)


On Sun, May 02, 2004 at 11:11:10PM +0930, Alan Modra wrote:
> On Sat, May 01, 2004 at 11:42:26AM -0700, Zack Weinberg wrote:
> > Alan Modra <amodra@bigpond.net.au> writes:
> > >> > >      .section .text,"G",symbol_name,comdat
> > >> > >      # code for symbol_name ...
> > >
> > > Hmm, it wouldn't be much harder to use
> > >
> > >      .section .text.symbol_name,"G",symbol_name,comdat
> > >      # code for symbol_name ...
> > 
> > That may not work.  Unfortunately, the HPUX linker's COMDAT-group
> > support is only partially documented, and subtly incompatible with the
> > standard ELF SHT_GROUP notion.  I am having to work things out by
> > reverse engineering what aCC does -- and it uses multiple sections
> > with the same name.
> 
> Ok, a question for you about gcc behaviour, past and present.  Does gcc
> emit code that references section symbols?  If not, I'll glady remove
> support for them in gas, which would simplify the problem of duplicate
> section names.
> 

I never recall gcc uses section symbol. I think at least we should make
it an error and add a linker switch to turn it off.

FIY, I applied

http://sources.redhat.com/ml/binutils/2004-05/msg00032.html
http://sources.redhat.com/ml/binutils/2004-05/msg00022.html
http://sources.redhat.com/ml/binutils/2004-05/msg00026.html

to the current binutils. I modified gcc 3.4 to emit COMDAT group with
the kludge enclosed here. The "make check" results for ia32, ia64 and
x86_64 are at

http://gcc.gnu.org/ml/gcc-testresults/2004-05/msg00076.html
http://gcc.gnu.org/ml/gcc-testresults/2004-05/msg00077.html
http://gcc.gnu.org/ml/gcc-testresults/2004-05/msg00078.html

Those results are very encouraging.


H.J.

Attachment: gcc-3.4-comdat-2.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]