[llvmlinux] LLVM/Clang Android AOSP Releases

Renato Golin renato.golin at linaro.org
Sat Nov 2 01:27:28 UTC 2013

Hi folks,

Linaro Connect USA has just finished and I had a very productive week
regarding the kernel and Android. Basically, we finally got a massive
response for LLVM involvement in Android and Linux, from members and
non-members alike, and I just got confirmation that we'll be spending a lot
of quality time on it from now on.

What does it mean?

Well, we all know that we can compile the Android kernel with LLVM
(right?), but the buildbots are mostly testing compilation, not boot, not
execution, not performance. Linaro will work towards that.

The main idea is to clone your git repositories, fetch the latests green
revision from the buildbot and flash an ARM board with it and check some
basic stuff. We'll do that on our LAVA infrastructure that already does the
same with our internal Android images.

On the other hand, Google is very interested in using Clang on Android for
the user-land, too. So they will be moving components to Clang, one by one,
and pushing these patches upstream to AOSP, so we would be able to build
some, but not all, packages with Clang, and use GCC as a fallback. With
time, all user-land should be Clang-ready.

Those images will be tested on the same LAVA infrastructure, and
eventually, we aim to have a full Android release (kernel+user-land)
compiled with Clang, tested and (hopefully benchmarked) on our release

The problems?

That whole process will obviously take several months and have several
impediments which will prove hard to crack. We're all software engineers,
we're used to crack hard nuts, so we'll prevail! But we'll need the help
from as many people as we can get on board.

We'll need Android and kernel folks to work on the regressions, we'll need
to have good cases to convince the kernel and the sub-projects to take our
patches (the work you guys have been doing so well for the last months!),
and we'll need A LOT of testing.

I have a few devices at home (Samsung Galaxy S, ODroid U2, ODroid XU) and
I'll be using them in addition to LAVA build. But because the mobile
industry is so heterogeneous, we'll need anyone with weird devices to try
them, too!

The future!

Since the first time I got exposed to Android/LLVM this year, I immediately
recognized the value that LLVM could have as the standard platform compiler
for Android. It just makes sense! And now, with the support of LLVMLinux
(you guys!) and the kernel folks (Linus et. all) and the Android folks
(Linaro, Google et al.) I think we can actually make it happen!

FreeBSD made it happen, and I hear that FreeBSD 10 will have NO GCC by
default! This is actually happening and we need to get into the bandwagon.
Let's make LLVM a platform compiler for two full Unix systems and show that
the growing up phase is past adolescence and reaching the young adult
stage. I'm sure the FreeBSD folks will be just as thrilled! ;)

I'll update you guys once we start to put the infrastructure in place, so
we can discuss the exact engineering solutions to make it all work.

Thank you all very much for all the hard work, but I assure you, there is
more ahead of us than behind!

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfoundation.org/pipermail/llvmlinux/attachments/20131101/349e0e96/attachment.html>

More information about the LLVMLinux mailing list