Seminar
Thursday 5th of February 2026, 11am - 12pm in N101, 108 North Road
Abstract
Just-in-time (JIT) compilers offer novel ways to optimize programs based on their execution profile and have found significant usage in languages with managed runtimes. However, as JIT compilation directly affects the execution time of a program, precision-enhancement techniques from the static-analysis world seldom find way into these otherwise powerful systems.
In this talk, I first illustrate the above challenge using examples of program analysis aimed at enabling stack allocation of heap objects in Java. I then elaborate our techniques (from PLDI 2024 and OOPSLA 2025) to not only allocate a large number of objects on the stack (leading to reduced garbage collection and improved performance), but also to handle challenges posed by possible dynamism in real-world Java Virtual Machines. In particular, I present static-analysis guided optimistic stack allocation, supported by dynamic heap-ification, as well as usage of speculative JIT information in improving the precision of statically computed results. All parts of the story are bound by the over-arching goal of maintaining precision and efficiency, while being sound, during program execution.
Bio
Manas Thakur is an Assistant Professor in the Department of Computer Science and Engineering at Indian Institute of Technology (IIT) Bombay. His research interests include program analysis, compiler optimizations, and programming languages.
Manas holds PhD and Masters degrees in Computer Science and Engineering from IIT Madras. His thesis titled “Precise and Efficient Analysis of Java Programs” won one of the institute research awards and (jointly) the IBM Best Thesis Award in 2019-20. Prior to joining IITB, Manas was at IIT Mandi for three years, wherein he received the Teaching Honour Roll Award in 2021; and recently, he was honoured with the Faculty of the Year 2024 award by IBM Centre for Advanced Studies, Canada Labs.
Manas’s research group at IIT Bombay, named CompL, specializes in JIT compilers and has developed efficient optimization strategies for Java, JavaScript and R.