[LLVMdev] GSOC - HLVM Work

Chris Lattner sabre at nondot.org
Wed Mar 21 23:44:54 PDT 2007


On Thu, 22 Mar 2007, Christopher Lamb wrote:
> I'm quite new to hacking on LLVM, but I'll give you an idea I had reading 
> some of the recent dev list posts. I think investigating concurrency with 
> regards to LLVM would be very useful (what with multi-cores and all). This 
> could be concurrency in regards to GC, or it could be simply looking at how 
> LLVM can best interface with standard concurrency paradigms (OpenMP, MPI) for 
> the languages it supports. With a GCC 4.2 front-end port of the front-end 
> available what is necessary to enable OpenMP support? Given a FORTRAN 
> front-end based on GCC is being considered how could high performance numeric 
> codes benefit from some aspect of LLVM?

Concurrency support would be a very welcome contribution.  I'd suggest 
starting with the GCC builtins for atomic operations that the newer GCC's 
support.  This is mostly middle-end and codegen work.

-Chris

> On Mar 21, 2007, at 11:22 PM, Gabe McArthur wrote:
>
>>  Hello,
>> 
>>  I would also like to apply for Google's Summer of Code, but I am
>>  having difficulty finding a concrete project idea to tackle.  (Though
>>  certainly interesting, a new front-end or a compiler optimization
>>  pass seem like to large as projects for a single summer -- and
>>  certainly something I couldn't accomplish given my lack of
>>  familiarity with the code-base.)
>> 
>>  I have read the 'projects' pages for both the LLVM and the HLVM, and
>>  I am quite intrigued by all of the various options (particularly
>>  those on the HLVM page).  In addition, I feel that work on the HLVM
>>  would give me some insight into how the LLVM works; however, I also
>>  understand that the HLVM/LLVM projects are in flux, and some of the
>>  goals/projects may change.
>> 
>>  I would appreciate some direction in going forward: what's more, I
>>  would like to know what 'need', 'should', or 'want' project could be
>>  done -- just as long as that project allows me to learn about the
>>  internals of the compiler and contribute in some substantive way.
>>  Just to get familiar with the code, I am interested in doing some of
>>  the work that perhaps sometimes gets forgotten or glossed over
>>  because others are too busy.
>> 
>>  I would like to contribute even if I don't get accepted, so please
>>  just supply me a direction, and I will gladly go there.  Please feel
>>  free to send me on cleanups or directions to places in the code that
>>  are helpful starting places, if you feel that would be helpful.
>> 
>>  Sincerely,
>>  -Gabe McArthur
>> 
>>  P.S.  Some of my background/interests:
>>  * I have familiarity with Lex, Yacc, and the java equivalents
>>     Jflex and Cup.  I also have a book on Antlr I'm trying to
>>     get into.
>>  * This is my first large-scale coding/code reading attempt --
>>     I found the GCC (and large projects in C in general)
>>     bewildering after a certain point (I love C for it's simple
>>     beauty, but despise it when it's over 2,000 lines).
>>  * I am a language junky, so I have:
>>     * a relatively extensive knowledge of C, Objective-C,
>>      Java, Ruby, and x86 assembler;
>>     * a proficient knowledge of C++, D, C#, Python,
>>      Scheme, and [bleh-ick-yuck] VB; and,
>>     * a moderate to low knowledge of Common Lisp, Haskell,
>>      and Erlang (the latter two I am currently learning).
>>  * Have written part of a small, functional compiler as
>>    part of a university course; I understand the architecture.
>>  * Big fan of GC (written a small collector)
>>  * Intrigued by concurrency features in software/languages,
>>    particularly message passing/actor models
>>  * Familiarity with XML, YAML, CSS, & JavaScript; some reasonable
>>     website skills and some slight design skills (I could try
>>     my hand at a logo)
>>  * I enjoy documentation, so I don't mind writing it.
>>  * At present, I only have a PPC Mac and limited access to
>>     my wife's Intel Mac (I've been sworn not to play with it);
>>     I have access to  x86 Linux machines through school and
>>     FreeBSD through my website, so I might be able to do some
>>     basic build testing on those platforms.
>> 
>>  _______________________________________________
>>  LLVM Developers mailing list
>>  LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>  http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>

-Chris

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



More information about the llvm-dev mailing list