[LLVMdev] Google Summer of Code 2008
Evan Cheng
evan.cheng at apple.com
Tue Mar 18 17:27:46 PDT 2008
On Mar 18, 2008, at 2:49 PM, Jon Harrop wrote:
> On Tuesday 18 March 2008 20:17:52 Anton Korobeynikov wrote:
>> Hello, Everyone
>>
>> LLVM recently was approved to take part in Google Summer of Code
>> 2008.
>> We welcome everyone to apply for this program.
>>
>> The list of ideas for (possible) projects is located at
>> http://llvm.org/OpenProjects.html. Surely you can suggest any other
>> project, if you feel, that it definitely can be useful.
>
> Just some ideas to add to the mix:
>
> One of the suggestions is to write a code-density optimizer for the
> ARM
> backend. For an interesting alternative, try optimizing for power
> consumption
> instead. If you want something super researchy, try doing this for
> one of the
> clockless (asynchronous) ARM cores:
>
> http://www.arm.com/products/CPUs/ARM996HS.html
While we are talking about ARM. Raul H. worked on ARM JIT support last
summer, it would be nice if someone continues the work.
Evan
>
>
> Another suggestion under "Miscellaneous Additions" was to write a new
> front-end for Java/OCaml/Forth. IMHO, reimplementing Java or OCaml
> from
> scratch is way too much work and a lot of that work is uninteresting
> baggage.
> My personal dream is to implement a higher-level VM that bundles an
> existing
> concurrent GC with an intermediate representation that exposes high-
> level
> language-agnostic features like parametric polymorphism (generics),
> first-class lexical closures (and maybe even pattern matching) and a
> backend
> that type specializes to remove polymorphism (and the associated run-
> time
> performance hit, as seen in OCaml) before LLVM code is generated. I
> would
> like this for two reasons:
>
> a) to provide the foundation for better technical computing
> environments on
> Linux and Mac OS X (like F# for Windows). This could greatly improve
> the open
> source tools that scientists and engineers use for technical
> computing.
>
> b) to provide a CLR. This could make it much easier for industry to
> build and
> sell software written in exotic languages for Linux and Mac OS X.
>
> A tamer but related idea is to implement a Fortran 77 front-end for
> LLVM and
> then get LAPACK into the LLVM benchmark suite. This could help LLVM to
> improve and might provide a faster LAPACK library for the open
> source world.
>
> FFTW is another hugely important numerical library that could be
> used for
> benchmarking. Aside from simply getting FFTW to work using llvm-gcc,
> an
> interesting project might be to rewrite the OCaml source code in
> FFTW to
> generate codelets on-the-fly using LLVM or the CLang front-end. LLVM
> can
> probably beat GCC here, not least because an LLVM-based
> implementation would
> not be limited to a set of precompiled codelets. This could help the
> millions
> of people who use FFTW.
>
> On an unrelated note, LLVM has great potential for improving OCaml's
> FFI. At
> the moment, OCaml programmers are expected to write stubs in C and
> statically
> link them in with their OCaml code. A much better solution would be
> to use
> LLVM to generate the equivalent of the C stubs at run-time. Calling
> OpenGL
> directly from OCaml using LLVM without any existing OpenGL bindings
> would
> make an excellent example. This project could really help the OCaml
> community.
>
> --
> Dr Jon D Harrop, Flying Frog Consultancy Ltd.
> http://www.ffconsultancy.com/products/?e
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
More information about the llvm-dev
mailing list