[LLVMdev] Targeting ARM Cortex-a9 from x86_64 with clang

Dimitry Andric dimitry at andric.com
Wed Nov 27 14:52:35 PST 2013


On 27 Nov 2013, at 11:00, David Chisnall <David.Chisnall at cl.cam.ac.uk> wrote:
> On 26 Nov 2013, at 19:10, Joerg Sonnenberger <joerg at britannica.bec.de> wrote:
...
>> I know that FreeBSD limits the set of targets by default mostly for
>> compile reasons, the size difference is not that big. The trade off is
>> *much* better with LLVM.
> 
> We only do it, I believe, for the bootstrap build.  When you build FreeBSD, you first build the toolchain that you'll build the system with (from the source tree that you're going to build, for the host arch), then you build the tree with that toolchain (for whatever your target arch is).  Given how much of the total build time LLVM / Clang accounts for, building it twice caused a lot of irritating.  We quite aggressively stripped down the bootstrap build, so that it only supports the specified target (unless requested otherwise), doesn't include the Clang rewriter, the static analyser, and a few other things.  Removing the JIT would probably also make sense.

Not entirely, yet.  We do strip out the static analyzer, arcmigrate, and the rewriter during the bootstrap build, and only enable them for the second (target system) build.  Stripping out unused target arches during the bootstrap would be nice to have, but the work has not been done yet. :-)

Stripping out the JIT might indeed also be interesting, though I guess stripping out unused arches will save more compile time?

-Dimitry

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 203 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131127/ddad3466/attachment.sig>


More information about the llvm-dev mailing list