public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: "Mark E." <snowball3@bigfoot.com>
To: Ian Lance Taylor <ian@zembu.com>,
	snowball3@bigfoot.com, binutils@sourceware.cygnus.com
Subject: Re: .gnu.linkonce COFF support
Date: Wed, 14 Jul 1999 17:04:00 -0000	[thread overview]
Message-ID: <199907142109.VAA219354@out2.ibm.net> (raw)
In-Reply-To: <19990714175746.12585.qmail@daffy.airs.com>

> I do have some vague memory of that now.  The code implemented by the
> binutils is the approach described in the Microsoft PE documentation--
> I just checked again.  But perhaps the Microsoft tools actually do
> something different.

My understanding comes from coffcode.h and coffgen.c in bfd.
COFF long section names are enabled by defining 
COFF_LONG_SECTION_NAMES. This feature is implemented by 
storing the long names in the string table and storing a pointer to the 
table entry in the section's name field. I assume this would have to 
done in a way compatible with Microsoft since its used with PE 
COMDAT. There also seems to be a long filename feature enabled by 
COFF_LONG_FILE_NAMES which does much the same thing for the 
.file directive.

PE targets define COFF_LONG_SECTION_NAMES because COMDAT 
sections need long section names.  PE COMDAT seems to do more 
than just be a overly complicated way of emulating .gnu.linkonce for 
g++, but isn't currently implemented in binutils (as DJ notes).

So it seems PE COMDAT is dependant on having long names, but 
long names aren't dependant on PE COMDAT. Therefore, DJGPP 
should be able to use long section names in implementing 
.gnu.linkonce support without tangling with PE COMDAT?

Mark

--- 
Mark Elbrecht, snowball3@bigfoot.com
http://snowball.frogspace.net/

  reply	other threads:[~1999-07-14 17:04 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-07-13 14:42 Mark E.
1999-07-13 14:55 ` Ian Lance Taylor
1999-07-13 18:45 ` DJ Delorie
1999-07-13 19:20   ` Ian Lance Taylor
1999-07-14  4:32     ` DJ Delorie
1999-07-14 17:02       ` Ian Lance Taylor
1999-07-14 17:04         ` Mark E. [this message]
1999-07-13 21:22   ` Mark E.

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=199907142109.VAA219354@out2.ibm.net \
    --to=snowball3@bigfoot.com \
    --cc=binutils@sourceware.cygnus.com \
    --cc=ian@zembu.com \
    /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).