I'm the original author and chief architect of the LLVM Compiler Infrastructure, an ambitious project to build a system of reusable compiler components that let you build all kinds of tools: compilers, debuggers, JIT systems, optimizers, static analysis systems, etc. LLVM is most often used as an aggressive optimizer for C and C++, which can produce machine code for many different architectures. The "Clang" frontend (which I also started) is now an industry leading C, Objective-C, and C++ compiler widely used by academia and industry alike, and the LLDB Debugger is breaking new ground in language support and other features. LLVM is being extended and enhanced in a tremendous number of directions to support new optimizations, new targets, new domains, and to get new features. I have won two major ACM awards for my work on LLVM.
At Apple, I have served in various roles over the years, including engineer, first line manager, and second level manager. Over the years I have driven LLVM technology through the Apple ecosystem, replacing GCC as the system compiler, making LLDB real, and driving various initiatives with internal hardware teams. I am now the Director of the Developer Tools department, leading the Xcode, Instruments and Compiler teams (among others).
Before I started work on compilers, I was an operating system developer. At Sequent Computer Systems, I worked on the Dynix/PTX kernel debugger, helped add POSIX threads to Dynix/PTX, ported the Linux kernel to run in user space of Dynix/PTX (providing compatibility with Linux user-space applications). I was also one of the primary conspirators on the Linux Kernel Corba ORB (kORBit) project, and collected the Operating Systems Resource Center.
I completed a Ph.D. in Computer Science at the University of Illinois at Urbana Champaign in 2005. In addition to my technical interests, I enjoy bicycling, skiing, classical fencing, and woodworking.
Finally, more details about my professional life can be found in my resume.
Return to my main page.