|
My research focuses on automatically repairing bugs in software. Our source code and benchmarks are available for your perusal. The main project site hosts additional resources for the interested researcher, though the source code/experiments available here have a slightly higher chance of being up-to-date. As of January 2012, the code and experiments here are current as of the TSE extension of the ICSE 2009 publication. Please feel free to email me at legoues at cs dot virginia dot edu with questions, concerns, comments, or problems. Code: Download here (tar.gz). You will need OCaml (anything from 3.09 should work; greater than 3.10 sometimes complicates building CIL; I'm currently using 3.12.) and the CIL Infrastructure for C Program Analysis and Transformation. The source code README focuses on compilation only; instructions on how to run experiments/use the code are found in the experiments tarball. Additional instructions available at the main project page. Experiments: Download a Giant Tarball (~330M) containing everything necessary to reproduce our bugs and repairs: buggy program source, test inputs/outputs/scripts, and overly-verbose READMEs on how to run everything. You may also find this useful if you need buggy C benchmarks for your own research. There exist a few bugs that are not yet included in the giant tarball; some may be found at the main project site. Patches: Download example patches, containing source code and generated patches for several of our benchmarks. Our technique operates on pre-processed source code, making the generated patches a bit difficult to read and less-than-portable between machines; this tarball includes both an automatically-generated patch and a human-generated version translated to the non-preprocessed source (for pedagogical purposes) per benchmark. |