John Regehr is a computer science professor at the University of Utah with over 15 years of academic experience and a strong practical background in compiler tooling, program reduction, and automated testing. He contributes to prominent open-source projects such as Csmith and C-Reduce, where he has improved test automation, introduced clang-delta based reduction features, and implemented transformation passes reflecting deep compiler-internals knowledge. His work on Google’s Souper added in-memory and Redis-based caching to accelerate LLVM IR superoptimization, showing a focus on performance-sensitive backend engineering. Combining rigorous research credentials (PhD, University of Virginia) with hands-on systems development, he blends teaching, publishing, and high-impact open-source contributions that help find and shrink real-world compiler bugs. An unusual strength is his sustained attention to test-harness and reduction tooling—areas that disproportionately improve software reliability yet often remain underappreciated.
15 years of coding experience
12 years of employment as a software developer
Bachelor of Science (BS), Mathematics and Computer Science, Bachelor of Science (BS), Mathematics and Computer Science at Kansas State University
Doctor of Philosophy (PhD), Computer Science, Doctor of Philosophy (PhD), Computer Science at University of Virginia
Contributions:35 reviews, 292 commits, 692 PRs in 8 years 7 months
Contributions summary:John primarily focused on implementing and refactoring core backend logic. They introduced in-memory caching to optimize the performance of Souper, a superoptimizer for LLVM IR, by utilizing a proxy Solver class that intercepts and caches results. This change involved refactoring code related to query building and candidate map entries. Additionally, the user implemented a Redis caching mechanism to store and retrieve Souper query results, further improving efficiency.
Contributions:343 commits, 13 PRs, 14 pushes in 6 years 11 months
Contributions summary:John focused on enhancing and maintaining the Csmith project's testing framework and underlying code generation logic. Their work involved modifying test scripts, particularly those related to automated crash and wrong-code detection. They also introduced features like automated reduction via clang_delta and improved the overall effectiveness and coverage of the automated testing procedures by adding and adapting scripts for frama-c.
c-programsrandom-generatorprograms
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.