Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Ulrich Weigand" <uweigand@de.ibm.com>
To: eliz@gnu.org
Cc: gdb-patches@sourceware.org
Subject: Re: [rfc] Remove current_gdbarch register handling from symbol readers
Date: Thu, 21 May 2009 00:52:00 -0000	[thread overview]
Message-ID: <200905210052.n4L0qMgq002959@d12av02.megacenter.de.ibm.com> (raw)
In-Reply-To: <83eiujpt7n.fsf@gnu.org> from "Eli Zaretskii" at May 20, 2009 08:41:48 PM

Eli Zaretskii wrote:

> What about the COFF related parts? were they tested?

Unfortunately not, as I don't have any platform available that
uses COFF.

> I recently found a few places where COFF support suffered some serious
> bitrot, and I think that's because it is not tested enough.  Is there
> some Posix platform that supports COFF, and where we could run the
> test suite?

I've had a look through current gcc and binutils sources to try to
figure out were COFF is supported.  GCC enables the "SDB" (COFF)
debug format (sdbout.c) for the following platforms:

arm*-wince-pe*)
arm-*-pe*)
i[34567]86-*-pe | i[34567]86-*-cygwin*)
i[34567]86-*-mingw* | x86_64-*-mingw*)
i[34567]86-*-interix3*)
i[34567]86-pc-msdosdjgpp*)

alpha*-*-openbsd*)
mips*-*-openbsd*)

(This is the complete list for mainline GCC.  Past GCC versions
supported additional COFF targets, e.g. i386 a.out Linux, and
some bare-metal COFF targets.  All those have been removed.)

The alpha/mips OpenBSD targets are a bit misleading, as they do
not actually use the COFF file format, but ELF.  However, there's
apparently a hack in GAS for these targets where it expects GCC to
generate COFF/SDB style debugging pseudo-ops, and then translates
those to the ECOFF debugging format embedded in ELF.  As far as GDB
is concerned, such files should be processed by elfread.c/mdebugread.c,
not coffread.c.

Only the Windows/DOS related targets remain.  Of those, all the
-pe / -mingw / -cygwin / -interix targets actually use the PE
file format, not "real" COFF, and GCC will default to generate
stabs or DWARF-2 for those.  It seems possible to use -gcoff to
force GCC to emit COFF/SDB debug info; I'm not sure if this will
actually work with PE files ...

The only target for which GCC by default generates COFF/SDB debug
info does indeed appear to be -msdosdjgpp ...

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  GNU Toolchain for Linux on System z and Cell BE
  Ulrich.Weigand@de.ibm.com


  reply	other threads:[~2009-05-21  0:52 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-20 15:04 Ulrich Weigand
2009-05-20 17:42 ` Eli Zaretskii
2009-05-21  0:52   ` Ulrich Weigand [this message]
2009-05-21  3:27     ` Eli Zaretskii
2009-05-25 13:15       ` Ulrich Weigand
2009-05-25 20:59         ` Eli Zaretskii
2009-05-26 19:01           ` Ulrich Weigand
2009-06-04 12:36 ` Ulrich Weigand

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=200905210052.n4L0qMgq002959@d12av02.megacenter.de.ibm.com \
    --to=uweigand@de.ibm.com \
    --cc=eliz@gnu.org \
    --cc=gdb-patches@sourceware.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