[LLVMdev] LLVM / Elkhound / ARM

Chris Lattner sabre at nondot.org
Tue Oct 31 17:01:31 PST 2006


On Wed, 1 Nov 2006, Guillaume FORTAINE wrote:
>  I am French Engineer in Informatics and I would want to build a start
>  up to  manufacture mobile phones ( OEM level ). I am currently in discussion
> with investors.

Welcome.

> We would want to use LLVM as our main compiler but we will need to complete it
> to have a "commercial grade" one.

ok.

> Here are our goals :
>
> -Use a modified Elkhound as C/C++ front-end :
> http://www.cs.berkeley.edu/~smcpeak/elkhound/

As Reid mentioned, using llvm-gcc/g++ would make a lot more sense and be a 
lot easier to do.  If you don't like llvm-gcc/llvm-g++ for some 
reason, and have the resources, you could also couple the EDG C/C++ 
front-end to LLVM.

> -Complete the ARM back-end

This should not be terribly hard.  I believe it is still fairly early in 
development, but is high quality so far and could be easily/rapidly 
extended ifdesired.

> -Fix the bugs to be able to compile a complete Cross Linux from scratch for
> arm with uclibc-nptl.
>
> http://trac.cross-lfs.org/milestone/CLFS 3.0.0

Ok.

> We believe that we will be able to speak of LLVM 2.0. :)
>
> How many people/much time ( full-time developers) are/is needed to success in
> this enterprise ?

It is hard to estimate specifics.  However, LLVM already is robust and is 
most of the way there.  If you choose to use llvm-gcc/llvm-g++4 (which 
would be wise), the magor missing thing is the ARM backend.

LLVM is been used to compile many large projects, including itself (which 
is ~400,000 lines of C++) and the Qt toolkit (another large C++ library). 
It has also been used to compile a large quantity of C code as well.  LLVM 
is in use by several commercial organizations.

> What is the best background they need to have to work on this ? ( C, gcc,
> lcc ? )

They need to be familiar with C++ programming, and they need to be 
familiar with the area they plan to contribute to (e.g. the ARM 
architecture).  The rest is relatively easy to pick up.

> It's a million dollars project and the stuff will be released under GPL.

Please consider licensing it under the current LLVM license, which is 
basically the BSD license without the advertising clause: 
http://llvm.org/releases/1.8/LICENSE.TXT

If you choose not to release your code under this license, we will not be 
able to incorporate it into the mainline LLVM distribution, which would 
mean that you will incur a significant ongoing maintenance burden.

Welcome to the LLVM community,

-Chris

-- 
http://nondot.org/sabre/
http://llvm.org/


More information about the llvm-dev mailing list