Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Ulrich Weigand" <uweigand@de.ibm.com>
To: eliz@gnu.org
Cc: muller@ics.u-strasbg.fr, brobecker@adacore.com,
	gdb-patches@sourceware.org,         gdb@sourceware.org
Subject: Re: [RFC] GDB ARIndex Linux rule cleanup
Date: Wed, 15 Apr 2009 15:23:00 -0000	[thread overview]
Message-ID: <200904151523.n3FFNIY9025877@d12av02.megacenter.de.ibm.com> (raw)
In-Reply-To: <831vrum1u5.fsf@gnu.org> from "Eli Zaretskii" at Apr 15, 2009 05:24:50 PM

Eli Zaretskii wrote:

> I think GDB's "target" is always the OS kernel, not the OS itself.
>
> The distinction FSF asks for is between the GNU/Linux as a whole
> system, which includes all the main applications and libraries, and
> Linux as the bare-bones OS.  GDB targets the latter, not the former.

Huh?  I'd say a large part of what makes up a GDB target is unrelated
to the OS kernel:
- Processor properties (register names/types/groups)
- ABI elements (data types, function calling convention, stack unwinding,
  C++ ABI, platform-specific debug format details, ...)
- Shared library support, thread support (those may depend on kernel
  details, but may also -in particular on Linux- depend on strictly
  user-space library-implemented details ...)

If you were to write a program using a completely different user-space
ABI, it might run just fine on the Linux kernel, but GDB configured
for a -linux target would not really be able to successfully debug the
program.

It seems to me that configuring GDB for, say, the powerpc-linux target,
has the effect of preparing GDB to debug programs on the GNU/Linux OS
on the PowerPC platform, assuming the GNU/Linux ABI for the platform
as well as the core GNU/Linux system libraries (libc, ld.so, libpthread)
to be used, of course *in addition* to the Linux kernel.

> > Compare for example the usage in linux-nat.c:
> > 
> > /* Create a prototype generic GNU/Linux target.  
> 
> That's a mistake, IMO.  There's no need for GNU here.

This is common usage throughout the Linux target and native files.
Even looking just at the very first lines of those files:

[uweigand@blc4eb184639574 gdb]$ head -1 *-linux-tdep.c | grep Linux
/* Target-dependent code for GNU/Linux on Alpha.
/* Target-dependent code for GNU/Linux x86-64.
/* GNU/Linux on ARM target support.
/* Target-dependent code for GNU/Linux running on the Fujitsu FR-V,
/* Target-dependent code for GNU/Linux running on PA-RISC, for GDB.
/* Target-dependent code for GNU/Linux i386.
/* Target-dependent code for GNU/Linux m32r.
/* Target-dependent code for GNU/Linux on MIPS processors.
/* Target-dependent code for GNU/Linux Super-H.
/* Target-dependent code for GNU/Linux UltraSPARC.
/* Target-dependent code for GNU/Linux SPARC.
/* Target-dependent code for GNU/Linux on Xtensa processors.
[uweigand@blc4eb184639574 gdb]$ head -1 *-linux-nat.c | grep Linux
/* Low level Alpha GNU/Linux interface, for GDB when running native.
/* Native-dependent code for GNU/Linux x86-64.
/* GNU/Linux on ARM native support.
/* Functions specific to running GDB native on HPPA running GNU/Linux.
/* Native-dependent code for GNU/Linux i386.
/* Native-dependent code for GNU/Linux m32r.
/* Native-dependent code for GNU/Linux on MIPS processors.
/* PPC GNU/Linux native support.
/* Native-dependent code for GNU/Linux UltraSPARC.
/* Native-dependent code for GNU/Linux SPARC.
/* Xtensa GNU/Linux native support.

Bye,
Ulrich

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


  parent reply	other threads:[~2009-04-15 15:23 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-26 15:29 GDB ARIndex cleanup Pierre Muller
2009-03-26 20:53 ` Eli Zaretskii
2009-03-27  8:23   ` Pierre Muller
2009-03-27  8:47     ` Eli Zaretskii
2009-03-27 14:12       ` Eli Zaretskii
2009-03-27 15:35         ` Eli Zaretskii
2009-04-02 15:12         ` Thiago Jung Bauermann
2009-04-02 19:40           ` Eli Zaretskii
2009-04-02 20:34             ` Joel Brobecker
2009-03-26 23:18 ` Joel Brobecker
2009-03-27  2:22   ` Daniel Jacobowitz
2009-03-27  8:43   ` Pierre Muller
2009-03-27 16:04     ` Joel Brobecker
2009-03-27 16:46       ` Daniel Jacobowitz
2009-04-14 23:06   ` [RFC] GDB ARIndex Linux rule cleanup Pierre Muller
2009-04-14 23:23     ` Mark Kettenis
2009-04-14 23:38       ` Pedro Alves
2009-04-14 23:41         ` Joel Brobecker
2009-04-15  7:06           ` Pierre Muller
2009-04-15  7:33           ` Eli Zaretskii
2009-04-15 14:00     ` Ulrich Weigand
2009-04-15 14:21       ` Pedro Alves
2009-04-15 15:32         ` Ulrich Weigand
2009-04-15 15:54           ` Pedro Alves
2009-04-15 14:25       ` Eli Zaretskii
2009-04-15 15:15         ` Daniel Jacobowitz
2009-04-15 15:23         ` Ulrich Weigand [this message]
2009-04-15 15:34           ` Mark Kettenis
2009-04-15 16:00             ` Eli Zaretskii
2009-04-15 16:04           ` Eli Zaretskii
2009-04-15 17:34             ` Ulrich Weigand
2009-04-15 18:07               ` Eli Zaretskii
2009-04-15 18:55                 ` 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=200904151523.n3FFNIY9025877@d12av02.megacenter.de.ibm.com \
    --to=uweigand@de.ibm.com \
    --cc=brobecker@adacore.com \
    --cc=eliz@gnu.org \
    --cc=gdb-patches@sourceware.org \
    --cc=gdb@sourceware.org \
    --cc=muller@ics.u-strasbg.fr \
    /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