Vladimir Makarov

Senior Principal Software Engineer at RedHat

Old Toronto, Ontario, Canada
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
Vladimir Makarov is a Senior Principal Software Engineer with 28 years of experience specializing in compilers, interpreters, and programming language research, currently maintaining and advancing GCC at Red Hat. He is the author of global and local register allocators and a DFA-based pipeline hazard recognizer and register-pressure sensitive instruction scheduler, driving critical backend optimizations used in a widely adopted open-source compiler. His work on GCC’s register allocation and instruction scheduling tackles NP-complete optimization problems, blending theoretical research with production-hardened engineering. Earlier roles include leading an optimizing C/C++/Fortran90 backend for DEC/Alpha and designing hardware and PCB description languages during foundational research at the USSR Academy of Sciences. Based in Old Toronto, he pairs a Ph.D. in Computer Science with deep low-level systems expertise and a history of practical cross-compiler and language toolchain implementations. Notably, his contributions to the gcc-mirror repository focus on improving correctness and efficiency in register allocation and code generation, reducing regressions in a mission-critical compiler component.
code28 years of coding experience
job10 years of employment as a software developer
bookMaster's degree, Aerodynamics and Thermodynamics, Master's degree, Aerodynamics and Thermodynamics at Moscow Institute of Physics and Technology (State University) (MIPT)
bookPh.D., Computer Science, Ph.D., Computer Science at post-graduate school of USSR Academy of Sciences
languagesEnglish, Russian
github-logo-circle

Github Skills (17)

c1110
allocation10
gcc10
c1710
code-generation10
compiler-optimization10
registers10
assembly9
assemble9
assembler9
arm6
x86-646
x866
avr5
risc-v5

Programming languages (4)

C++CSWIGRuby

Github contributions (5)

github-logo-circle
gcc-mirror/gcc

Oct 2016 - Jan 2023

Role in this project:
userBack-end Developer
Contributions:12 commits in 6 years 3 months
Contributions summary:Vladimir's contributions primarily involve modifying the GCC compiler's register allocation (RA) and related components. They focused on improving the efficiency and correctness of the LRA (Linear Register Allocation) pass, including handling specific cases with assembler code, memory reloads, and code generation issues. The changes involve modifying code related to secondary memory reloads and memory address manipulation, with an emphasis on addressing potential code generation bugs. The work involved optimizing register class selection, and addressing potential regressions to ensure compiler stability and efficiency.
vnmakarov/yaep

Nov 2012 - Apr 2020

Yet Another Earley Parser
Contributions:44 commits, 6 PRs, 16 pushes in 7 years 6 months
earley-parsergrammarasterror-recoveryambiguous-grammars
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