Google Summer of Code 2024 Contributor
email: sahilpatidar60@gmail.com
Education: Computer Science and Engineering, Vindhya Institute of Technology, India
Ongoing project:
Advanced symbol resolution and reoptimization for clang-repl
This project aims to enhance Clang-Repl, an interactive C++ interpreter built
on top of LLVM’s ORC JIT infrastructure. Currently, Clang-Repl lacks a
mechanism to automatically load dynamic libraries when encountering unresolved
symbols. As a result, users must manually load the appropriate libraries if a
symbol used in their code resides in a specific dynamic library. To address
this limitation, we propose a solution that enables automatic library loading
for unresolved symbols. Additionally, the second goal of this project is to
introduce support for re-optimization within Clang-Repl, allowing code to
benefit from improved performance through dynamic optimization techniques.
Project Proposal: URL
Mentors: Vassil Vassilev
Completed project:
Out-Of-Process execution for Clang-Repl
This project focuses on enhancing Clang-Repl, an interactive C++ interpreter
that leverages LLVM’s JIT infrastructure. The current in-process execution model
poses challenges, especially for resource-constrained devices and stability.
By transitioning Clang-Repl to an out-of-process execution model, this project
aims to address these limitations. It will improve resource efficiency, making
Clang-Repl usable on devices with limited resources, and enhance crash resilience,
preventing user code failures from crashing the entire interpreter. This shift will
foster a more robust and accessible interactive C++ compilation and execution environment.
Project Proposal: URL
Mentors: Vassil Vassilev, Matheus Izvekov