public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Robert Dewar <dewar@gnat.com>
To: Mike Stump <mrs@apple.com>
Cc: Richard Kenner <kenner@vlsi1.ultra.nyu.edu>,
	gcc@gcc.gnu.org, jsm@polyomino.org.uk
Subject: Re: Ada policy
Date: Mon, 30 Aug 2004 22:56:00 -0000	[thread overview]
Message-ID: <4133AF9E.1020304@gnat.com> (raw)
In-Reply-To: <36FED0BE-FAD5-11D8-8516-000393941EE6@apple.com>

Mike Stump wrote:
> On Aug 30, 2004, at 2:21 PM, Richard Kenner wrote:
> 
>> second that nearly all of the test cases are proprietary code.
> 
> 
> Yes, and this was true of quite a few of the C/C++ testcases too...  
> but, this doesn't relieve the obligation to add a test case.
> 
> Don't start fixing a testcase until after you've trimmed the testcase 
> down, then you will find that all bugs you fix will have cut down test 
> cases.  A few bug fixes will never have testcases, that is fine.  A good 
> example is a memory smasher that randomly goes in and out of workingness 
> as the testcase is changed.  These will not usually have a testcase.  
> However the vast majority of the rest can have a minimal testcase 
> produced.  A few will need 12 hours to cut down the testcase, the bulk 
> of them should be substantially easier.

It's simply a matter of not having the resources to follow this
desirable approach.

> Sometimes there will be areas where the testing infrastructure doesn't 
> support testing, for which you'll just skip adding tests, this too is 
> fine to a degree.  In C/C++, this is done with stuff like cross module 
> or cross shared library issues...  Not perfect, but the best we can do 
> at the moment.  In time, we'll have a driver even for that.
> 
> We can describe the procedure to transform a proprietary testcase in 
> detail into one that isn't, if you want.  There is an algorithm.  
> Roughly, get testcase, remove every function, variable, block, 
> statement, argument that can be that doesn't affect the testcase.  
> Understand why what's left is minimal as you fix the bug, then try and 
> recode the testcase to make the things that happen to be true, to be 
> true.  For example, need register pressure, insert canonical code to 
> increase pressure...  Mostly works for me.  It is greedy, and has near 
> linear cost.  Further, at times, people automate it in various ways 
> (delta, slice)...  If it is a hardship, pick an automation to handle the 
> grunt work, or an intern...  Even a language agnostic one that just runs 
> the algorithm line by line might be enough for you...  One that is done 
> change all variable/function/type names and then examine code to be sure 
> that no trade secrets or original structure or original intent, use or 
> meaning is left that the customer would care about, if in doubt, just 
> ask them directly.

Again, we don't need to know how this is done, we know perfectly
well. We simply don't have the resources to do it (even keeping the
trees syncrhonized is a huge amount of work).

> So, I guess I am confused as to, do you just not want to do the work to 
> produce the testcases, or do you lack the understanding of how to do it?

It is not a matter of what we want, it is a matter of what we have the
resources to provide.

> As for the past, I'd say that while it would be nice to get more of the 
> Ada testcase that you have into the the FSF testsuite, I think it is 
> reasonable to merely require this of _new_ bugfixes to new 
> bugs/regressions.

But as I mentioned before, the practical effect of this requirement, if
you make it a requirement is that fixes will simply not get transferred
to the FSF tree in many cases. Mike, I encourage you to examine, in
detail, typical front end fixes, which is what we are talking about
here. I think the concern is more theoretical than actual.

  reply	other threads:[~2004-08-30 22:52 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-30 21:41 Richard Kenner
2004-08-30 21:53 ` Joseph S. Myers
2004-08-30 22:28   ` Florian Weimer
2004-08-30 22:30     ` Joseph S. Myers
2004-08-30 23:01       ` Florian Weimer
2004-08-31 18:45         ` Laurent GUERBY
2004-08-30 22:43     ` Robert Dewar
2004-08-30 23:01       ` Florian Weimer
2004-08-31  0:11         ` Robert Dewar
2004-08-31  0:14           ` Florian Weimer
2004-08-30 22:34   ` Robert Dewar
2004-08-30 22:31 ` Robert Dewar
2004-08-30 22:48   ` Joseph S. Myers
2004-08-30 22:52     ` Mike Stump
2004-08-30 23:00       ` Robert Dewar
2004-08-30 22:55     ` Robert Dewar
2004-08-30 22:52 ` Mike Stump
2004-08-30 22:56   ` Robert Dewar [this message]
  -- strict thread matches above, loose matches on Subject: below --
2004-09-11 14:29 Ada Policy Richard Kenner
2004-09-11 10:43 Nathanael Nerode
2004-09-01 20:48 Ada policy Richard Kenner
2004-09-01 18:19 Robert Dewar
2004-09-01 18:51 ` Joe Buck
2004-09-01 20:21   ` Robert Dewar
2004-09-01 20:44     ` Joe Buck
2004-09-01 20:52       ` Robert Dewar
2004-09-01 20:53       ` Robert Dewar
2004-08-31 12:53 Richard Kenner
2004-08-31  3:34 Richard Kenner
2004-08-31  3:31 Richard Kenner
2004-08-31  4:07 ` Zack Weinberg
2004-08-31 22:06   ` Kai Henningsen
2004-08-31 22:19     ` Robert Dewar
2004-08-31 23:15       ` Florian Weimer
2004-09-01  1:23         ` Robert Dewar
2004-09-01 12:36           ` Florian Weimer
2004-09-01 12:51             ` Robert Dewar
2004-09-02 13:42               ` Florian Weimer
2004-09-03  7:54                 ` Robert Dewar
2004-09-09 21:00                   ` Florian Weimer
2004-09-09 21:15                     ` Robert Dewar
2004-08-31  3:22 Richard Kenner
2004-08-31  3:29 ` Zack Weinberg
2004-08-31  4:05   ` Robert Dewar
2004-08-31  4:05     ` Robert Dewar
2004-08-31  4:38       ` Zack Weinberg
2004-08-31  5:01   ` Matt Austern
2004-08-31 13:08     ` Robert Dewar
2004-08-31  1:25 Richard Kenner
2004-08-31  1:57 ` Zack Weinberg
2004-08-30 23:06 Richard Kenner
2004-08-31  2:59 ` Mike Stump
2004-08-31  3:10   ` Robert Dewar
2004-08-31  8:16 ` Per Bothner
2004-08-31 13:22   ` Robert Dewar
2004-08-30 22:18 Richard Kenner
2004-08-30 22:38 ` Robert Dewar
2004-08-30 22:01 Richard Kenner
2004-08-30 22:02 ` Laurent GUERBY
2004-08-30 10:44 GCC 3.5 Status (2004-08-29) Richard Kenner
2004-08-30 11:27 ` Laurent GUERBY
2004-08-30 13:05   ` Jakub Jelinek
2004-08-30 18:28     ` Laurent GUERBY
2004-08-30 20:14       ` Florian Weimer
2004-08-30 20:34         ` Ada policy (was: GCC 3.5 Status (2004-08-29)) Laurent GUERBY
2004-08-30 20:53           ` Ada policy Zack Weinberg
2004-08-30 20:55             ` Richard Guenther
2004-08-30 21:04             ` Richard Henderson
2004-08-30 21:24               ` Diego Novillo
2004-08-30 22:25               ` Robert Dewar
2004-08-31  1:13                 ` Zack Weinberg
2004-08-31  2:37                   ` Robert Dewar
2004-08-31  2:54                     ` Zack Weinberg
2004-08-31  3:00                       ` Robert Dewar
2004-08-31  3:28                         ` Zack Weinberg
2004-08-31  3:41                           ` Robert Dewar
2004-08-31  4:22                             ` Zack Weinberg
2004-08-31 12:55                               ` Robert Dewar
2004-08-31 15:02                                 ` Gabriel Dos Reis
2004-08-31 15:36                                   ` Robert Dewar
2004-08-31 13:06                               ` Robert Dewar
2004-08-31 15:10                                 ` Gabriel Dos Reis
2004-08-31 18:10                                   ` Laurent GUERBY
2004-08-31 18:30                                     ` Zack Weinberg
2004-08-31 18:55                                       ` Robert Dewar
2004-09-01 17:12                                         ` Kai Henningsen
2004-09-01 17:32                                           ` Robert Dewar
2004-08-31 18:59                                       ` Robert Dewar
2004-08-31 20:05                                         ` Scott Robert Ladd
2004-08-31 20:26                                           ` Robert Dewar
2004-08-31 20:53                                             ` Scott Robert Ladd
2004-08-31 20:56                                               ` Joseph S. Myers
2004-08-31 21:11                                             ` Florian Weimer
2004-08-31 21:50                                               ` Robert Dewar
2004-08-31 19:02                                       ` Robert Dewar
2004-08-31 19:28                                       ` Laurent GUERBY
2004-08-31 19:36                                         ` Robert Dewar
2004-08-31 18:42                                     ` Robert Dewar
2004-08-31 13:10                               ` Florian Weimer
2004-08-31 13:47                                 ` Robert Dewar
2004-08-30 21:05             ` Joseph S. Myers
2004-08-31 22:02             ` Geoffrey Keating
2004-08-31 22:11               ` Florian Weimer
2004-08-31 22:14               ` Robert Dewar
2004-08-31  0:13           ` Florian Weimer

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=4133AF9E.1020304@gnat.com \
    --to=dewar@gnat.com \
    --cc=gcc@gcc.gnu.org \
    --cc=jsm@polyomino.org.uk \
    --cc=kenner@vlsi1.ultra.nyu.edu \
    --cc=mrs@apple.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).