LLVM Project News and Details from the Trenches

Sunday, February 21, 2010

Dragonegg Successfully Self-Hosts!

The dragonegg GCC plugin can host itself! Dragonegg lets you use the LLVM optimizers with GCC-4.5, much like llvm-gcc, but unlike llvm-gcc does not involve modifying GCC, thanks to the new GCC plugin infrastructure (currently one small patch is required). We built all of GCC-4.5, LLVM and dragonegg with dragonegg, then used the resulting binaries to build them all again. Why? Because we love to build! And because this was a great way of checking that nothing was miscompiled. The final dragonegg plugin was fully functional, successfully passing the entire dragonegg test suite.

Thursday, February 4, 2010

Clang Successfully Self-Hosts!

Today, Clang completed its first complete self-host! We built all of LLVM and Clang with Clang (over 550k lines of C++ code). The resulting binaries passed all of Clang and LLVM's regression test suites, and the Clang-built Clang could then build all of LLVM and Clang again. The third-stage Clang was also fully-functional, completing the bootstrap.

Congratulations to all of the Clang developers on this amazing achievement!