[LLVMdev] Assuring ARM code quality in LLVM

Renato Golin renato.golin at arm.com
Tue Apr 12 01:25:47 PDT 2011


On 11 April 2011 21:24, Galina Kistanova <gkistanova at gmail.com> wrote:
> It is possible.

Good news! ;)


> We host several build slaves which cross compile. The issue with cross
> compilation is that tests do [not] support well the cross scenario. We are
> working on this but it moves slower then we wish it would be.

Thought so. Again, this is something we can help, because this is very
important for us. Running Linux tests is also important, of course,
but mostly for A* targets.

Since we want the support for (at least) A, R and M families to be as
good as possible, bare-metal tests are fundamental.

We can continue off-list on how can we help to make that easier for
cross-compilation tests.


> Llvm lab seems is the right place to put them, so people could get an
> access to boards for debugging.

Agreed!


> As a general note, my observations shows that slow builds gets less
> attention from the community then fast ones.
> This could be an issue with small boards.

Unfortunately, this will always be an issue with embedded systems. Not
that they're slow themselves, but the debug connection is never as
fast as we'd like.

If we had multiple boards, say 6 mBeds, we could run 6 tests in
parallel if the LIT tests could do cross-tests easily.

We do that with models already and it works perfectly (and fast). That
could be another solution we should try...


> I have been tried native builds on a beagleboard, it took about 4
> hours to build without the tests which is a bit too slow.

Yes. Beagle board is single-core and it does take a long time to
compile. This is why we need cross-tests, we compile in a quad-core
machine and test on 4 beagleboards at the same time.


> We will need to find a way to make ARM builds faster.

Overclock? :D

Now seriously, I think cross-compilation + parallelization (hardware
or models) should do the trick.

cheers,
--renato



More information about the llvm-dev mailing list