There's Interest In Building The Linux Kernel With Clang

Written by Michael Larabel in Software on 5 April 2012 at 02:51 PM EDT. Page 1 of 3. 9 Comments.

There's growing interest in being able to build the mainline Linux kernel with the LLVM/Clang compiler as an alternative to the kernel's long-standing love-affair with GCC.

Mark Charlebois and David Kipping of Qualcomm talked this morning at this week's Linux Foundation Collaboration Summit about their interest in LLVM and Clang for the ARM platform, per Qualcomm's obvious interests. Additionally, Mark Charlebois has been working hard at getting the mainline Linux kernel to build under LLVM/Clang for the ARM architecture.

For those that don't remember, in late 2010 there was the original undertaking of using LLVM Clang to build the Linux kernel. When not building all kernel drivers and other components, plus applying some out-of-tree patches, there was success in building a Clang-ified Linux kernel.

Bryce Lelbach was the developer working on making Clang supported by the Linux kernel. At last year's Linux Foundation Collaboration Summit he presented on this work during the LLVM track, but since then there's been really nothing to report on the matter. Building the mainline Linux kernel with a mainline LLVM/Clang compiler is still not possible.

As far as why Qualcomm's Innovation Center is now getting behind LLVM/Clang for the Linux kernel, there's several reasons, among which is they've always been fond towards LLVM. Of the benefits they see for bringing up their ARM Linux kernel on Clang is that there's better diagnostics (error reporting / warnings, catching things GCC doesn't), Clang provides some level of "fix-it hints", and Clang's static analyzer is extremely powerful.

Mark Charlebois also mentioned how Qualcomm likes LLVM's flexibility, targeting all "cores" of ARM SoCs, having one code generator for many different environments, etc. "We want a single compiler toolchain."


Related Articles