public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Mark Mitchell <mark@codesourcery.com>
To: dan@cgsoftware.com
Cc: wilson@cygnus.com, gcc@gcc.gnu.org
Subject: Re: Bootstrap failure of gcc-ss-20010409 in ia64
Date: Tue, 17 Apr 2001 16:36:00 -0000	[thread overview]
Message-ID: <20010417163553W.mitchell@codesourcery.com> (raw)
In-Reply-To: <m21yqrung8.fsf@dynamic-addr-83-177.resnet.rochester.edu>

>>>>> "Daniel" == Daniel Berlin <dan@cgsoftware.com> writes:

    Daniel> This is the only case that is "unattainable".  You can

I'm all for all the fancy DWARF2 stuff; I'd love to have it, and I'm
glad you're working on it.  (I was actually an advocate of getting rid
of stabs, in favor of DWARF, a couple of years ago on these lists).

But, there are other things that are very hard to do, often because
something is just not there in the compiler output.  Like instantiate
a class that the compiler didn't see a use of, and therefore didn't
emit debugging information for.  Or set a breakpoint at a line that
has been optimized away.  Or call an inlined function from the
debugger if no out-of-line instance was emitted by the compiler.  Or
making it easy for a programmer to follow the control flow with `step'
in the debugger when the compiler has reordered the code.

Some of these things might be important; some might not.  Some, you
could simulate.  But, there are problems that are hard.

Bottom line: a statement like this

  Please, don't claim something is unattainable when i've *seen* it
  done with my own eyes.

is more inflammatory than it needs to be, and suggests that I don't
know about these things.

The point is that debugging optimized code will always be harder thatn
debugging unoptimized code.  It would be good if are debug information
was perfect for optimized code.  But, it's more important that it be
perfect for unoptimized code (and I bet it's not!), and it's even more
important that we generate correct code (which I know we don't
always).  Not to mention improving GDB to have a better user
interface, better stability, etc.  (Thanks to you for working on
this!)

It's a question of priorities, cost-benefit analysis, etc.  Is it
worth the effort (both programmer-time and compiler-time) to do what
Jim suggested, or is better just to punt?  I think we all agree
punting is OK for the 3.0 branch.  

The question is whether to punt on the 3.1 mainline, or not.  If we
do, then some people argue that we are less likely to fix the bug.  On
the other hand, if we do not punt, then if we don't fix the bug, we
must remember to insall the punt again on the 3.1 release branch, when
we get there.  And meanwhile some programs will crash on the mainline.

Personally, I would prefer that we file a bug in GNATS (debugging info
wrong; here's a test-case) and install the punt on both the mainline
and the branch.  That adheres to the principle of trying to keep
things working as much as possible so that a) it's easier to do
releases, and b) it's easier for everyone to test the compiler and
work to improve it.  A broken compiler may serve as a good reminder,
but it also makes life difficult for people working on unrelated
tasks.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

  reply	other threads:[~2001-04-17 16:36 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-04-11  6:56 Andreas Schwab
2001-04-11 12:47 ` Jim Wilson
2001-04-11 17:31   ` Mark Mitchell
2001-04-11 17:43   ` Mark Mitchell
2001-04-11 18:28     ` Daniel Berlin
2001-04-11 18:34       ` Mark Mitchell
2001-04-11 20:24         ` Daniel Berlin
2001-04-11 21:19           ` Mark Mitchell
2001-04-11 21:36             ` Daniel Berlin
2001-04-12 12:27               ` Bill Nottingham
2001-04-12 15:03                 ` Daniel Berlin
2001-04-12 21:07                   ` Bill Nottingham
2001-04-12 21:46                     ` Daniel Berlin
2001-04-12 13:04             ` Jim Wilson
2001-04-12 15:06               ` Daniel Berlin
2001-04-13  8:49           ` Andreas Schwab
2001-04-13 10:04             ` Daniel Berlin
2001-04-13 10:23               ` Andreas Schwab
2001-04-13 12:20                 ` Daniel Berlin
2001-04-13 12:39                   ` Andreas Schwab
2001-04-13 12:56                     ` Daniel Berlin
2001-04-13 13:06                       ` Andreas Schwab
2001-04-13 19:13     ` Jim Wilson
2001-04-13 19:59     ` Jim Wilson
2001-04-14  2:01       ` Jim Wilson
2001-04-14  4:08         ` Sam TH
2001-04-14  8:27           ` cvs (was: Bootstrap failure of gcc-ss-20010409 in ia64) Fergus Henderson
2001-04-14 11:28             ` Sam TH
2001-04-14 22:20             ` Jim Wilson
2001-04-14 23:48               ` Russ Allbery
2001-04-16 15:39         ` Bootstrap failure of gcc-ss-20010409 in ia64 Jim Wilson
2001-04-16 17:22           ` Mark Mitchell
2001-04-16 17:45             ` Jim Wilson
2001-04-17  8:22               ` Mark Mitchell
2001-04-17  8:57                 ` Daniel Berlin
2001-04-17 11:01                 ` Jim Wilson
2001-04-17 15:38                   ` Mark Mitchell
2001-04-17 16:16                     ` Daniel Berlin
2001-04-17 16:36                       ` Mark Mitchell [this message]
2001-04-18 14:35                       ` debugging optimized programs (Was: Re: Bootstrap failure of gcc-ss-20010409 in ia64) Joern Rennecke
2001-04-18 15:12                         ` Daniel Berlin
2001-04-18 15:49                           ` Joern Rennecke
2001-04-18 17:06                             ` Daniel Berlin
2001-04-18 17:18                               ` Daniel Berlin
2001-04-18 12:41                     ` Bootstrap failure of gcc-ss-20010409 in ia64 Jim Wilson
2001-04-18 13:49                       ` Mark Mitchell
2001-04-18 14:34                         ` Jim Wilson
2001-04-18 15:31                           ` Mark Mitchell
2001-04-17 18:12 Mike Stump
2001-04-17 19:01 ` Joe Buck
2001-04-17 20:38   ` Daniel Berlin

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=20010417163553W.mitchell@codesourcery.com \
    --to=mark@codesourcery.com \
    --cc=dan@cgsoftware.com \
    --cc=gcc@gcc.gnu.org \
    --cc=wilson@cygnus.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).