SPLASH 2025
Sun 12 - Sat 18 October 2025 Singapore
co-located with ICFP/SPLASH 2025
Fri 17 Oct 2025 14:15 - 14:30 at Orchid East - Analysis 2 Chair(s): V Krishna Nandivada

Just-in-time (JIT) compilers typically sacrifice the precision of program analysis for efficiency, but are capable of performing sophisticated speculative optimizations based on run-time profiles to generate code that is specialized to a given execution. On the contrary, ahead-of-time static compilers can often afford precise flow-sensitive interprocedural analysis, but produce conservative results in scenarios where higher precision could be derived from run-time specialization. In this paper, we propose the first-of-its-kind approach to enrich static analysis with the possibility of speculative optimization during JIT compilation, as well as its usage to perform aggressive stack allocation on a production Java Virtual Machine.

Our approach of combining static analysis with JIT speculation – named CoSSJIT – involves three key contributions. First, we identify the scenarios where a static analysis would make conservative assumptions but a JIT could deliver precision based on run-time speculation. Second, we present the notion of “speculative conditions” and plug them into a static interprocedural dataflow analyzer (whose aim is to identify heap objects that can be allocated on stack), to generate partial results that can be specialized at run-time. Finally, we extend a production JIT compiler to read and enrich static-analysis results with the resolved values of speculative conditions, leading to a practical approach that efficiently combines the best of both worlds. Cherries on the cake: Using CoSSJIT, we obtain 5.7x improvement in stack allocation (translating to performance), while building on a system that ensures functional correctness during JIT compilation.

Fri 17 Oct

Displayed time zone: Perth change

13:45 - 15:30
Analysis 2OOPSLA at Orchid East
Chair(s): V Krishna Nandivada IIT Madras
13:45
15m
Talk
ApkDiffer: Accurate and Scalable Cross-Version Diffing Analysis for Android Applications
OOPSLA
Jiarun Dai Fudan University, Mingyuan Luo Fudan University, Yuan Zhang Fudan University, Min Yang Fudan University, Minghui Yang OPPO
14:00
15m
Talk
Combining Formal and Informal Information in Bayesian Program Analysis via Soft Evidences
OOPSLA
Tianchi Li Peking University, China, Xin Zhang Peking University
14:15
15m
Talk
CoSSJIT: Combining Static Analysis and Speculation in JIT Compilers
OOPSLA
Aditya Anand Indian Institute of Technology Bombay, Vijay Sundaresan IBM Canada, Daryl Maier IBM Canada, Manas Thakur IIT Bombay
14:30
15m
Talk
On Abstraction Refinement for Bayesian Program Analysis
OOPSLA
Yuanfeng Shi Peking University, Yifan Zhang Peking University, Xin Zhang Peking University
14:45
15m
Talk
Sound and Modular Activity Analysis for Automatic Differentiation in MLIR
OOPSLA
Mai Jacob Peng McGill University, William S. Moses University of Illinois Urbana-Champaign, Oleksandr Zinenko Brium, Christophe Dubach McGill University
15:00
15m
Talk
Towards a Theoretically-Backed and Practical Framework for Selective Object-Sensitive Pointer Analysis
OOPSLA
Chaoyue Zhang Nanjing University, Longlong Lu State Key Laboratory for Novel Software Technology, Nanjing University, China, Yifei Lu State Key Laboratory for Novel Software Technology, Nanjing University, China, Minxue Pan Nanjing University, Xuandong Li Nanjing University
15:15
15m
Talk
Universal Scalability in Declarative Program Analysis (with Choice-Based Combination Pruning)
OOPSLA
Anastasios Antoniadis University of Athens, Greece, Ilias Tsatiris Dedaub, Neville Grech Dedaub Limited, Yannis Smaragdakis University of Athens
Link to publication DOI