4 ms·
I wonder what he's doing that csmith[1] doesn't do. I quickly skimmed the paper[2], but nothing jumped out at me. In fact it looks like some of the reducers are
by AngryParsley 15y ago
I wonder what he's doing that csmith[1] doesn't do. I quickly skimmed the paper[2], but nothing jumped out at me. In fact it looks like some of the reducers are implemented as plugins on top of csmith. I guess I'll have to read the whole thing later.
1. http://embed.cs.utah.edu/csmith/ http://embed.cs.utah.edu/csmith/
2. http://www.cs.utah.edu/~regehr/papers/pldi12-preprint.pdf http://www.cs.utah.edu/~regehr/papers/pldi12-preprint.pdf
- neilc 15y agoI wonder what he's doing that csmith doesn't do. The contribution is techniques for reducing the size of test cases, including test cases that might be generated by csmith (you realize the author of the blog post is one of the csmith authors, right?). From the PDLI'12 paper: Using randomized differential testing, Csmith automates the construction of programs that trigger compiler bugs. These programs are large out of necessity: we found that bug-finding was most effective when random programs’ average size was 81 KB. In this paper, we use 98 bug-inducing programs created by Csmith as the inputs to several automated program reducers...
- mansr 15y agoCsmith is a random C program generator, which is useful for finding unknown compiler bugs. Creduce is a test case minimiser for reducing a large C file found to trigger some bug to a minimal test case. The input can be either real-world code or randomly generated by Csmith. Regehr's team is behind both tools.