GCC and LLVM - What's in a licence?
Richard Hillesley discusses the pros and cons of the GCC and LLVM compiler collections, and the difference a licence makes.
GCC, the ultimate portable compiler, otherwise known as the GNU Compiler Collection, has been around since 1987. LLVM, first came onto the scene seven years ago in the form of a paper entitled "Architecture for a Next-Generation GCC", which was presented to the 2003 Annual GCC Developers Summit by Chris Lattner and Vikram Adve.
LLVM was conceived as a modular version of GCC, and has had some success as a more malleable alternative to GCC.
GCC is part of the GNU project, and was originally developed by Richard Stallman (with help from Len Tower and others) as a C Compiler and building block for the GNU operating system. The first versions of GCC only supported the C language on a limited number of architectures, but over the years GCC and its spin-offs evolved into a generic compiler for a broad kaleidoscope of programming languages and platforms.
When GCC came on the scene compilers were an expensive commodity. GCC was fast, affordable and extendable and became a ground breaking tool for free software, for mobile device developers, and for those writing software that was intended to be portable across the proprietary implementations of Unix or other OS platforms. GCC brought free software to places it hadn't been before.