Google's Summer Of Code

Thanks for your interest in the GNU Compiler Collection as your mentoring organization in Google's Summer of Code.

Summer of Code 2009 Accepted GCC Projects

Project

Student

Mentor

Automatic parallelization in Graphite

Li Feng

Tobias Grosser

Enable generic function cloning and program instrumentation in GCC to be able to create static binaries adaptable to varying program and system behavior or different architectures at run-time

Liang Peng

Grigori Fursin

gfortran: Procedure Pointer Components & OOP

Janus Weil

Tobias Burnus

Traditional Loop Transformations

pranav garg

Sebastian Pop

Make the OpenCL Platform Layer API and Runtime API for the Cell Processor and CPUs

phil prattszeliga

Paolo Bonzini

Provide fine-grain optimization selection and tuning abilities in GCC to be able to tune default optimization heuristic of the compiler or fine optimizations for a given program on a given architecture entirely automatically using statistical and machine learning techniques from the MILEPOST project.

Yuanjie Huang

Grigori Fursin

Application

The Drupal project has a great page on How to write an SOC application. A gcc Summer of Code participant for 2006, Laurynas Biveinis, wrote a blog about it.

Project Ideas

There are several pages with general ideas for GCC. These ideas are not just one project but many different projects linked here for easy of access.

Relatively simple tasks:

New optimization passes:

Language front-ends and run-time libraries:

Other projects:

If you are interested in learning your way around the GCC codebase, the Partial_Transitions is a good place to start.

Other project ideas can be found in the bug database. Look for old bugs which are still open.

Or invent your own project. We're always open to good ideas. But note that we are probably not too interested in projects to add new extensions to the C or C++ languages. We've found over time that these tend to introduce more problems than they solve.

Thanks, and we look forward to your submissions!

Summer of Code 2008 Accepted GCC Projects

Project

Student

Mentor

GCC Improvements on Windows

Aaron W. LaFramboise

Steven Bosscher

Improving Dead Store Elimination

Jakub Staszak

Daniel Berlin

Extend Fortran 2003 support for gfortran

Daniel Kraft

François-Xavier Coudert

C++0x lambda functions for GCC

John Freeman

Douglas Gregor

Improved GIMPLE to GRAPHITE transformation

Tobias Grosser

Sebastian Pop

Finish work on propagation aliasing and array dependence information from Tree-SSA to RTL.

Alexander Monakov

Diego Novillo

Procedure Pointers for gfortran

Janus Weil

Tobias Burnus

Summer of Code 2007 Accepted GCC Projects

Project

Student

Mentor

Propagating array data dependence information from Tree-SSA to RTL

Alexander Monakov

Daniel Berlin

Better_Uninitialized_Warnings

Manuel López-Ibáñez

Diego Novillo

Speeding up GCC for fun and profit

James Webber

Eric Marshall Christopher

Fortran 2003 features for GCC

Janus Weil

Steven Bosscher

Open Mutliprogramming Interprocedural Analasis and Optimalizations

Jakub Staszak

Daniel Berlin

Integrating OpenJDK's javac bytecode compiler into gcj

Dalibor Topic

Mark J. Wielaard

New static scheduling heuristic for GCC

Dmitry Zhurikhin

Vladimir Makarov

GCC support for Windows-compatible Structured Exception Handling (SEH) on the i386 platform

Michele Cicciotti

Ian Lance Taylor

Summer of Code 2006 Accepted GCC Projects

Project

Student

Mentor

Code parallelization using polyhedral model

Plesco Alexandru

Daniel Berlin

Escape_analysis

Paul Biggar

Daniel Berlin

Garbage_collection_tuning

Laurynas Biveinis

Daniel Berlin

java.lang.management in Classpath

Andrew John Hughes

Mark Wielaard

Lock free C++ containers

Phillip Jordan

Benjamin Kosnik

Wcoercion option

Manuel López-Ibáñez

Ian Lance Taylor

None: SummerOfCode (last edited 2009-04-22 03:00:30 by LiFeng)