IT Pro is supported by its audience. When you purchase through links on our site, we may earn an affiliate commission. Learn more

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.

LLVM compiles faster, but benchmarks of LLVM and clang against the GCC C compiler, show GCC compiled code to be 10 per cent faster, indicating more comprehensive optimisation of the code both at the language and machine levels of the code.

GCC remains the popular choice because of its extreme portability and proven history. Over recent years GCC has taken a stance in support of programming language standards, even where this has caused friction among developers. The virtue of a portable compiler is that it aids the portability of your software.

The virtue of standards is that unexpected language extensions don't produce unexpected results. An uncompromisingly 'free' compiler discourages the inclusion of proprietary extensions.

There will always be arguments over which licence is more useful and/or 'free'. BSD-style licences offer greater short term freedoms, but can be diverted for proprietary ends. The GPL guarantees continued and extensible freedom for the code, but should architectural considerations be subsumed by the greater need for freedom of the code?

Nonetheless, healthy competition between GCC and LLVM has improved the possibilities for everyone. The GCC developers may not have been persuaded to modularise the code base, but have been persuaded to allow plug-ins, after much discussion on mailing lists about the pros and cons of doing so. Plug-ins allow for other licences, and offer a semblance of modularity to third party developers.

GCC's greatest asset, however, may be its independence from any single commercial entity, which ensures adherence to standards and support from all sectors of industry, and freedom from arguments and worries, spurious or otherwise, about patents and proprietary control of the programming languages which are the ultimate instrument of a programmer's freedom of expression.

Featured Resources

Accelerating AI modernisation with data infrastructure

Generate business value from your AI initiatives

Free Download

Recommendations for managing AI risks

Integrate your external AI tool findings into your broader security programs

Free Download

Modernise your legacy databases in the cloud

An introduction to cloud databases

Free Download

Powering through to innovation

IT agility drive digital transformation

Free Download

Most Popular

Former Uber security chief to face fraud charges over hack coverup
data breaches

Former Uber security chief to face fraud charges over hack coverup

29 Jun 2022
Macmillan Publishers hit by apparent cyber attack as systems are forced offline
Security

Macmillan Publishers hit by apparent cyber attack as systems are forced offline

30 Jun 2022
FCC commissioner urges Apple and Google to remove TikTok from app stores
data protection

FCC commissioner urges Apple and Google to remove TikTok from app stores

29 Jun 2022