Currently I am working on my GSoC 2016 project on implementing Polly as an Analysis pass in LLVM. LLVM is a compiler infrastructure, which supports code optimization at compile time, link time and at runtime. LLVM is a modular project, consisting of many tools, where writing a new component is straight forward and can be plugged into the toolchain very easily.