[LLVMdev] Potential Google Summer of Code Applicant

Tobias Grosser
Mon, 02 Apr 2012 09:05:39 -0000

On 04/02/2012 05:41 AM, Patrick Edwards wrote:
> Hi, my name is Patrick Edwards, and I'm currently a CS major at Kent
> State University. I have always been interested in doing work with
> compilers and LLVM seems to be a perfect fit for me to learn more over
> the summer, and also contribute to open-source projects at the same
> time. However, while browsing through the project ideas, the only ideas
> I found accessible were the code reduction and compile with/benchmark
> the LLVM compiler. I would really love to help LLVM, as I have used C++
> in quite a few of my classes and side programs, not to mention learning
> other oddball languages as I wanted. If possible, could someone please
> point me in the right direction to contribute to LLVM in the best way I
can?
>
> Thank you in advance,
> Patrick Edwards, potential GSoC applicant

Hi Patrick,

besides the open project pages of the LLVM itself [1], there are also
the ideas list of the subprojects:

- The clang open projects list [2]
- The SAFECode open projects list [3]
- The Polly todo list [4]

As you already realized, not all of them are suiteable for summer of
code, but some of them definitely are.

A topic I personally would think might be an interesting summer of code
project is a clang based gnu 'indent' replacement. Here the idea from
the clang open projects page:

"Use clang libraries to implement better versions of existing tools:
Clang is built as a set of libraries, which means that it is possible to
implement capabilities similar to other source language tools, improving
them in various ways. Three examples are distcc, the delta testcase
reduction tool, and the "indent" source reformatting tool. distcc can
be
improved to scale better and be more efficient. Delta could be faster
and more efficient at reducing C-family programs if built on the clang
preprocessor, indent could do proper formatting for complex C++
features, and it would be straight-forward to extend a clang-based
implementation to handle simple structural rules like those in the LLVM
coding standards."

I am not an expert in clang itself, but on the clang mailing list, you
there are plenty of people who are. I copied Manuel, as I think he was
already planning to work on something like this.

Cheers
Tobi

[1] http://llvm.org/OpenProjects.html
[2] http://clang.llvm.org/OpenProjects.html
[3] http://sva.cs.illinois.edu/projects.html
[4] http://polly.llvm.org/todo.html