[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