From: Russell Shaw <rjshaw@netspace.net.au>
Cc: gdb@sourceware.org
Subject: Re: Gdb
Date: Wed, 25 Oct 2006 13:38:00 -0000 [thread overview]
Message-ID: <453F68E9.9050800@netspace.net.au> (raw)
In-Reply-To: <20061025124921.GA15974@nevyn.them.org>
Daniel Jacobowitz wrote:
> On Wed, Oct 25, 2006 at 05:05:11PM +1000, Russell Shaw wrote:
>
>>There is far too much complexity for the simple things that gdb does.
>
> I just don't know what to do with this message.
>
> Yes, GDB is a bit crufty and could use some new design in places. But
> calling the target control tasks "simple" is absurd. It is a typical
> fallacy to assume that a task you are only lightly familiar with is
> simple, when in fact most of the existing complexity is necessary.
There are places with long sequences of:
if() {
...
}
if() {
...
}
if() {
...
}
Instead of something more rigorous like:
if() {
...
}
else if {
...
}
else if {
...
}
...
else {
...
}
This makes touching anything unpredictable, as there's too many combinations
of possible code paths that may or may not be valid.
That's only one small example. The code is not well modularized. It's hard to
show that here. When a "run" resets a simple breakpoint, the stack depth is no
less than 35 levels. It also invokes a tortuous 10-level trip thru various
"memory set" functions until it eventually reaches target_xfer_partial or whatever,
intermingled with re-reading symbol files, re-syncing dynamic libraries, and
resetting breakpoints.
>>If there's no plans to redo gdb, i'll do it anyway.
>
> You are welcome to submit individual patches which make areas of GDB
> easier to understand. There are even some suggestions on the wiki.
It's undoable by anyone not intimately familiar with the code which means
weeks of prodding with a second gdb. The payoff is better in making something
totally different and new.
next prev parent reply other threads:[~2006-10-25 13:38 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-10-25 7:05 Gdb Russell Shaw
2006-10-25 12:49 ` Gdb Daniel Jacobowitz
2006-10-25 13:38 ` Russell Shaw [this message]
2006-10-25 14:17 ` Gdb Daniel Jacobowitz
2006-10-25 16:29 ` Gdb Russell Shaw
2006-10-25 20:16 ` Gdb Eli Zaretskii
2006-10-25 20:08 ` Gdb Eli Zaretskii
2006-10-26 2:28 ` Gdb Russell Shaw
2006-10-26 7:11 ` Gdb Eli Zaretskii
2006-10-26 8:16 ` Gdb Russell Shaw
2006-10-26 12:41 ` Cannot get thread event message: debugger service failed Christophe Benoit
2006-10-26 12:45 ` Daniel Jacobowitz
2006-10-26 13:31 ` Christophe Benoit
2006-10-26 20:01 ` Gdb Jim Blandy
2006-10-27 3:29 ` Gdb Russell Shaw
-- strict thread matches above, loose matches on Subject: below --
2002-07-25 19:33 gdb Richard A. Painter
2002-07-30 20:37 ` gdb Daniel Jacobowitz
2002-05-29 13:06 gdb bemis
2002-03-22 7:18 gdb Kees Everaars
2002-03-26 17:04 ` gdb Michael Snyder
[not found] <20011117045052.5412.qmail@web13905.mail.yahoo.com>
2001-11-07 6:01 ` GDB Christopher Faylor
2001-02-27 9:14 gdb Mathieu Dube
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=453F68E9.9050800@netspace.net.au \
--to=rjshaw@netspace.net.au \
--cc=gdb@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