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

Unleashing the power of AI initiatives with the right infrastructure

What key infrastructure requirements are needed to implement AI effectively?

Download now

Achieve today. Plan tomorrow. Making the hybrid multi-cloud journey

A Veritas webinar on implementing a hybrid multi-cloud strategy

Download now

A buyer’s guide for cloud-based phone solutions

Finding the right phone system for your modern business

Download now

The workers' experience report

How technology can spark motivation, enhance productivity and strengthen security

Download now

Most Popular

How to move Windows 10 from your old hard drive to SSD
operating systems

How to move Windows 10 from your old hard drive to SSD

21 Jan 2021
Hackers are actively exploiting three Apple iOS flaws
exploits

Hackers are actively exploiting three Apple iOS flaws

27 Jan 2021
16 ways to speed up your laptop
Laptops

16 ways to speed up your laptop

26 Jan 2021