Roadmap

This project involves different code bases with many inter-dependencies. As a result todo items can be in different categories: LLVM, Clang, Linux Kernel, etc.

I you want to work on something from the list below, please assign it to yourself. Probably best first to discuss it on the mailing list or IRC Channel (#llvmlinux on OFTC).

This page is implemented with Todo Lists. Get help on Todo Lists here.

LLVM

LLVM Todos
Name Status Assigned Description
upstream Completed Upstream LLVM Patches (mostly x86 patches)

(high priority)

Enable IA Unassigned File bugs for missing functionality to enable IA for kernel build

Clang

Clang Todos
Name Status Assigned Description
unused warnings Completed Add option to clang to remove excess return value unused warnings
upstream Completed Upstream Clang Patches (pending.patch)

(high priority)

unpatches Completed Unpatched Clang to test clang patches

(high priority)

missing opts Completed Determine if there are any missing important, GCC compiler options

(medium priority)

We have turned things off.

gdb support Completed Improved GDB debugging of Clang generated executables (or ELF and remote-gdb support for LLDB)

(low priority - unlikely to be fixed soon)

this is postponed as is more related to Clang

Unsupported flags Completed Clang has the opposite behavior to GCC for unsupported flags. GCC returns fail and Clang returns pass. Chris Latner agreed Clang should return fail.

Verified this is fixed in LLVM 3.4 branch (high priority)

MCLinker

MCLinker
Name Status Assigned Description
Use MCLinker Unassigned Enable using MCLinker

Clang Static Analyzer

Clang Static Analyzer Todos
Name Status Assigned Description
analyzer output crash Completed wash Investigate CSA crashes when output is turned on

(high priority)

pthread lock checker wrong locations Completed wash File upstream patch for the bug in PthreadLockChecker causing the wrong location to be returned

(high priority)

Clang ARM Support

Clang ARM Todos
Name Status Assigned Description
64-bit types Completed QuIC Proper fix for 64-bit type handling in ARM

(fix being submitted upstream)

gcc inline Completed Proper fix for 64-bit type GCC inline ASM syntax

Kernel

Kernel Todos
Name Status Assigned Description
tracing In Progress Randy Test tracing/profiling: probes, ftrace, perf, etc (easiest to test on X86)

(high priority)

GCC dependencies Unassigned Determine what code still depends on GCC

(medium priority) Broken_kernel_options

ARM Kernel

Kernel ARM Todos
Name Status Assigned Description
RPi Support In Progress Tinti Update support for Raspberry Pi

(high priority)

Unwind Warning Patch Unassigned Upstream Unwind Warning patch for GCC version that clang reports

Raspberry Pi Kernel

Kernel rpi Todos
Name Status Assigned Description
rpi kernel 3.6 Completed tinti Update to 3.6 kernel tree

Update to 3.11 kernel tree

Update for clang-3.4 In Progress tinti Update overlay patches to work with 3.4 compiler

x86 Kernel

Kernel x86 Todos
Name Status Assigned Description
Turn on Integrated AS (IA) again Completed Macro support WIP upstream block use of IA.

(split up of patches, then rebase to master)

Split up patchset. Completed jsm Split into smaller patches and group by context.

(high priority)

Rebase to HEAD. Completed jsm x86 build based on v3.3 for now. Rebase to upstream/master.

(medium priority)

Triage for upstream submission. Completed jsm Select patches for upstream inclusion.

(high priority)

Kernel module unloading Completed jsm Kernel crashes when module is unloaded

(high priority)

Documentation

LLVM Project Documentation
Name Status Assigned Description
commit -s Completed behanw Documentation on how to set up your git to warn you if you forget to "git commit -s" to add your sign-off
target makefile Completed behanw Documentation on target Makefile settings, and how to make a new target.
target template Completed behanw Target template which includes all options (commented out if good defaults).

Test Infrastructure

Test Infrastructure Todos
Name Status Assigned Description
buildbot In Progress jsm, behanw Check buildbot scripts into git
AArch64 target Unassigned Add AArch64 as nightly build target
ltp image Completed behanw Create LTP SD Image
linaro tools Completed behanw Support using Linaro tools for test SD Image creation
automate kernel tests Completed behanw Automate testing of clang and gcc built kernels
display kernel test results In Progress behanw Display automatic tests results of clang and gcc built kernels

(needs to be part of the buildbot rewrite)

debug tools Completed Mark C Add staticly linked debugging tools to initramfs (gdb, strace, etc)

(high priority)

prebuilt arch Completed behanw Reorganize prebuilt test images directory on webserver by arch

General Infrastructure

General Infrastructure Todos
Name Status Assigned Description
irc - xmpp bridge Completed jsm Find and setup irc - xmpp bridge (needed to allow projects participants behind corporate firewalls to participate on the #llvmlinux IRC channel)

(high priority)

Project Hosting

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More about the foundation...