LLVMLinux: The Linux Kernel with Dragon Wings
summary
Project compiles the Linux kernel with clang/LLVM by running automated scripts that download, patch, build and test kernels under QEMU + LTP; continuous integration buildbot runs nightly. Works on ARM and x86 (Versatile Express, Raspberry Pi, Nexus 7) but requires external assembler and newer linker because LLVM’s integrated assembler and lld lack needed unified-syntax and 16-bit/boot support. Major blockers: GCC-only extensions (VLA-in-structs, nested functions, named registers, builtin_constant_p) patched or worked around, plus two outstanding clang bugs (strip-attribute/section mismatches and an ARM segfault). clang 3.3 looks close to usable.
AI-written summary · about
chapters (27)
- 0:00Introduction
- 1:15What is LLVM
- 2:12LLVM Tools
- 3:04Why LLVM
- 3:24Compile Faster
- 4:15Faster than GCC
- 6:10Single Tool Chain
- 7:30Licenses
- 8:31Static analyzers
- 9:15Clang vs GCC
- 10:13Compiler Team
- 13:14LLVM Project
- 16:09Targets
- 16:45Continuous Integration
- 17:23Challenges
- 17:34Integrated assembler
- 18:49GCC and clang defaults
- 20:49Unsupported flags
- 21:37Other flags
- 22:00Language extensions
- 28:33Nested functions
- 32:05Named registers
- 35:55Is RC important
- 37:49Building the Kernel with clang
- 39:36Patches
- 42:00Whats Left
- 44:17How Can You Help







