[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [csmith-dev] Floating-point support in csmith

Hi all

Sorry for the delay in responding.

On 06/11/2015 22:03, Shafiul Azam wrote:
Thank you All very much for responses! To summarize, csmith with --float can be used to detect crash bugs for the moment, and should NOT be used for wrong code bugs. Please correct me if I got it wrong.



On Wed, Nov 4, 2015 at 3:23 PM, John Regehr <regehr@cs.utah.edu> wrote:
  - Floating-point support was introduced in version 2.2.0 according to
the release note [1]. Floating point support must be turned on passing
--float command-line option. This note acknowledges work of Dr. Alastair
Donaldson for the initial implementation.

Yes, please check with Ally, he and his people have been doing this.  I think basically all of us are interested but it's been a matter of making time to work on it.

We submitted a pull request, and I believe it still needs to be reviewed.  Yang, is this something you might be able to look at if you haven't already?  Our pull request fixed some bugs with the way floats were handled, and also added the option of tracking floats via intervals.

It would be good to get this in and I can devote some time to helping with it in a couple of weeks.


  - I conducted a run of csmith 2.2.0 with --float argument on Ubuntu
10.04 (gcc 4.4.3). Number of crash-programs is significantly more now.
Running csmith without --float found 3 crash-bugs, while running with
--float found more than 300 crash-bugs within the (almost) same runtime.

Nice.  There are a few things going on here.  As Yang observes, there's some number <300 of bugs that are getting triggered multiple times.  To find the true set of bugs you can start to report them, one at a time.

Another thing that is going on is that GCC has built up a huge resistance to Csmith.   We've beaten it up for years now.  We have not beaten on its FP code so of course there's more low-hanging fruit.

I am interested to know current support-level for floating points, any
limitations and any future works you plan regarding float-point support.

I'll also appreciate any source which explains current support level of
floating-point in csmith.

Hopefully Ally will chime in.  You should the source code too, there's not that much that deals with FP, as far as I know.