summaryrefslogtreecommitdiffstats
path: root/development/csmith/README
blob: c244b3c26bc26c5804c36e05e095a01651473ea8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
csmith (generates random C programs)

Csmith is a random generator of C programs. Its primary purpose is to
find compiler bugs with random programs, using differential testing as
the test oracle. Csmith outputs C programs free of undefined behaviors
(believe us, that's not trivial), and the statistics of each generated
program (as comments at the end of the code).

It is useful for stress-testing compilers, static analyzers, and other
tools that process C code. Csmith has found bugs in every tool that
it has tested, and has been used to find and report more than 400
previously unknown compiler bugs.