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

Re: [csmith-dev] Program Hangs



Am 27.04.2011 08:56, schrieb John Regehr:
It's not hard to generate programs that always terminate, for example by
suppressing backwards gotos and loops that modify the induction variable
in unstructured ways. But we haven't felt that this was desirable. We
could add it to our todo list if it would be useful for you. Is there
some reason that timeouts are not acceptable?

From a user's point of view infinite loops are desirable, because they are often a source of bugs. At least in libFirm's case, many of the csmith-discovered bugs we fixed so far were somehow connected to infinite loops.

The point is the content of infinite loops is reachable, but dead, which breaks most definitions of dominance and control dependency,
hence analyses go crazy and the resulting optimizations are bogus.

--
Andreas Zwinkau

 Karlsruhe Institute of Technology (KIT)
 Institut für Programmstrukturen und Datenorganisation (IPD)
 Lehrstuhl Prof. Snelting
 Adenauerring 20a
 76131 Karlsruhe

 Phone:  +49 721 608 48351
 Fax:    +49 721 608 48457
 Email:  zwinkau@kit.edu
 Web:    http://pp.info.uni-karlsruhe.de/person.php?id=107

 KIT – University of the State of Baden-Wuerttemberg and
 National Research Center of the Helmholtz Association