John Regehr

Professor at University of Utah

Salt Lake City, Utah, United States
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
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.
code15 years of coding experience
job12 years of employment as a software developer
bookBachelor of Science (BS), Mathematics and Computer Science, Bachelor of Science (BS), Mathematics and Computer Science at Kansas State University
bookDoctor of Philosophy (PhD), Computer Science, Doctor of Philosophy (PhD), Computer Science at University of Virginia
stackoverflow-logo

Stackoverflow

Stats
123reputation
7kreached
0answers
2questions
github-logo-circle

Github Skills (31)

code-optimization10
caching10
c-language10
llvm10
testing10
c1110
intermediate-code10
c1710
compiler-design10
automated-tests10
irr10
cprogramming-language10
llvm-ir10
optimization10
redis9

Programming languages (12)

TypeScriptC++RustCCoqLLVMSCSSJavaScript

Github contributions (5)

github-logo-circle
google/souper

May 2014 - Nov 2022

A superoptimizer for LLVM IR
Role in this project:
userBack-end Developer
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.
llvm-ircompilersclangstatic-analysisbazel-rules
csmith-project/csmith

Apr 2011 - Feb 2018

Csmith, a random generator of C programs
Role in this project:
userBack-end Developer & Test Automation Engineer
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.
Request Free Trial
John Regehr - Professor at University of Utah