LLVM Compiler Infrastructure GSoC projects
Every Google Summer of Code project accepted at LLVM Compiler Infrastructure, grouped by program year. Open a project to see its contributor, mentors, technologies, and source code.
Back to LLVM Compiler InfrastructureGSoC 2026
13 projects- Incremental build support for the modules driver
Aadarsh Keshri
- Adding native Fortran support in LLDB
Iason Karaprodromidis
- Static Memory Planner for MLIR
KrishGupta
- Enable clangd support for HLSL
Maria Fernanda Guimaraes
- Upstreaming -fbounds-safety
Mohammed.Ashraf
- Improving Clang-Doc
NeilN
- Improving lit
prasoon054
- Enable float80/float128 on Unsupported Targets for LLVM libc
Sukumar Sawant
GSoC 2025
13 projects- Rich Disassembler for LLDB
Abdullah_Amin
- ClangIR upstreaming
Amr Hesham Gaber
- Improving Core Clang-Doc Functionality
Erick Velez
- Improve Rust-Enzyme Reliability and Compile Times
Karan Janthe
- Bfloat16 in LLVM libc
Krishna Pandey
- LLVM Compiler Remarks Visualization Tool for Offloading
Miguel Cárdenas
- Introduce an ABI lowering library
Narayan Sreekumar
- Byte type
Pedro Lobo
GSoC 2024
12 projects- GPU Libc Benchmarking
James Hu
- Support clang plugins on Windows
thomas fransham
- Improve Clang-Doc
Peter Chou
- Out of process execution for Clang-Repl
Sahil Patidar
- Reviving NewGVN
Manuel Brito
- LLVM.org Website Redesign
Chaitanya Shahare
- Half precision in LLVM libc
Nicolas Celik
- Addition of 3-way comparison intrinsic to LLVM
Volodymyr Vasylkun
- Build & Run SingleSource Benchmarks with ClangIR - Part 2
Vinicius Espindola
GSoC 2023
20 projects- Re-optimization using JITLink
Sunho Kim
- Build & Run SingleSource Benchmarks with ClangIR
Vinicius Espindola
- Improvements in Clang Diagnostics
Takuya Shimizu
- ExtractAPI while building
Ankur Saini
- Autocompletion in Clang-REPL
Yuquan Fu
- Interactive MLIR query tool to make exploring the IR easier
Devajith Valaparambil Sreeramaswamy
- Tutorial development with clang-repl
Krishna Narayanan
- Fix Handling of Undefined Behavior in NewGVN
Manuel Brito
- Adding C++ Support to Clang's ExtractAPI
Erick Velez
- Better Performance Models for MLGO Training
Viraj Shah
- Addressing Rust optimization failures in LLVM
Kohei Asano
- WebAssembly Support for clang-repl
Anubhab Ghosh
- Improving Compile Times
Dhruv Chawla (0xdc03)
- Patch based test coverage for quick test feedback
ShivamGupta123
GSoC 2022
13 projects- Improving Clang Diagnostics
Muhammad Usman
- Moving Instruction Rules to Tablegen
Manuel Drehwald
- Learning Live Ranges Priority Policy
Eric Wang
- Shared Memory Based JITLink Memory Manager
Anubhab Ghosh
- Instrumentation of Clang/LLVM for Compile Time
Junduo Dong
GSoC 2021
16 projects- Fix Fundamental Issues in LLVM IR
Krishna Kariya
- Machine Learning Guided Ordering of Compiler Optimization Passes
Tarindu Jayatilaka
- Learning Loop Transformation Heuristics
Ali Sedaghati
- Improving OpenMP code generation with prediction of runtime parameters
Konstantin Sidorov
- Distributed lit testing
Soham Dixit
- Utilize LoopNest Pass
Toshiki Maekawa
- Use official isl C++ bindings for polly
Riccardo Mori
- Integrating Enzyme into Rust
Manuel Drehwald
- Evolving the LLDB GUI
Omar Emara
GSoC 2020
15 projects- Improve Parallelism-Aware Analyses and Optimizations
Stefan Stipanovic
- Add DWARF Support for yaml2obj
Xing GUO
- Advanced Heuristics for Ordering Compiler Optimization Passes
Tarindu Jayatilaka
- SPIR-V to LLVM IR dialect conversion in MLIR
George Mitenkov
- Find null smart pointer dereferences with the Static Analyzer
Nithin V Rajendrakumar
- Improve inter-procedural analyses and optimizations
Shinji Okumura
- Latency Hiding for Host to Device Memory Transfers
Hamilton Tobon Mosquera
- Deduce attributes for non-exact functions
Luofan Chen
GSoC 2019
8 projects- libObjectcopy
Alex Brachet
- Improve (function) attribute inference
Hideto Ueno
- Improve (function) attribute inference
Stefan Stipanovic
- Generation of Annotated Sources
William Moses
- Improve LLVM binary utilities
Seiya Nuta
- Enhancing bug reports in the Clang Static Analyzer
Kristóf Umann
GSoC 2018
8 projects- Implement a single updater class for Dominators
Chijun Sima
- Re-implement lldb-mi on top of the LLDB public API
Alexander Polyakov
- Using the Z3 SMT Solver to Validate Bugs Reported by the Clang Static Analyzer
Mikhail Y R Gadelha
- Move the apt.llvm.org CI to OBS
Reshabh Sharma
- A checker for dangling string pointers in C++
Réka Nikolett Kovács
- Improve Debugging of Optimized Code
gramanas
- Devirtualization v2
Piotr Padlewski
- Command line replacements for GNU Binutils
Paul Semel
GSoC 2017
8 projects- ThinLTO Optimizations
Charles Saternos
- Clang-based C/C++ diff tool
Johannes Altmanninger
- Building bash-completion for clang
Yuka Takahashi
- Enable Polyhedral Optimizations in XLA through LLVM/Polly
Annanay Agarwal
- Enabling Julia to target GPGPUs using Polly
Singapuram Sanjay S.V.
GSoC 2016
7 projects- Interprocedural Register Allocation in LLVM
Vivek Pandya
- SAFECode’s Memory Policy Hardening
Zhengyang Liu
- Better Alias Analysis By Default
grievejia