SPLASH 2026
Sun 4 - Fri 9 October 2026 Oakland, California, United States
co-located with SPLASH/ISSTA 2026

This program is tentative and subject to change.

Tue 6 Oct 2026 13:30 - 13:48 at East Hall 1 - Dynamic Language Compilers and VMs Chair(s): Jonathan Bell

Just-in-time (JIT) compilers are key components for many popular programming languages with managed runtimes (e.g., Java and JavaScript). JIT compilers perform optimizations and generate native code at runtime based on dynamic profiling data, to improve the execution performance of the running application. Like other software systems, JIT compilers might have software bugs, and prior work has developed a number of automated techniques for detecting correctness bugs (i.e., generated native code does not semantically match that of the original code). However, no prior work has targeted JIT compiler performance bugs, which can cause significant performance degradation in a running application. These performance bugs are challenging to detect due to the complexity and dynamic nature of JIT compilers. In this paper, we present the first work on demystifying JIT compiler performance bugs. First, we perform an empirical study across four widely used JIT compilers for the Java and JavaScript languages. Our manual analysis of 191 bug reports uncovers common patterns in how performance bugs manifest, their symptoms, and their root causes. Second, informed by these insights, we propose a lightweight technique, which we call tiered differential performance testing, to automatically detect JIT compiler performance bugs. We further introduce practical optimizations such as test prioritization, which reduces testing time by 92.4% without compromising bug-detection capability, and automatic false-positive and duplicate filtering, which substantially reduce manual inspection effort. Our work discovered 12 previously unknown performance bugs in the Oracle HotSpot and Graal JIT compilers, with 11 confirmed or fixed by developers.

This program is tentative and subject to change.

Tue 6 Oct

Displayed time zone: Pacific Time (US & Canada) change

13:30 - 15:00
Dynamic Language Compilers and VMsOOPSLA at East Hall 1
Chair(s): Jonathan Bell Northeastern University
13:30
18m
Talk
Understanding and Finding JIT Compiler Performance Bugs
OOPSLA
Zijian Yi The University of Texas at Austin, Cheng Ding The University of Texas at Austin, August Shi The University of Texas at Austin, Milos Gligoric The University of Texas at Austin
13:48
18m
Talk
IRIDIUM: A Framework for Statically Optimizing JavaScript Programs
OOPSLA
Meetesh Kalpesh Mehta IIT Bombay, Anirudh Garg IIT Bombay, Aneeket Yadav IIT Delhi, Manas Thakur IIT Bombay
14:06
18m
Talk
Pyriscope: Precise and Low-overhead Python Control Flow Tracing via Sparse Hardware-based Events
OOPSLA
Xinchen Yao Nanjing University, Wu Daiyou Nanjing University, China, Zhiqiang Zuo Nanjing University
14:24
18m
Talk
TwinString: Preserving String Semantics with Off-Heap Data on the JVM
OOPSLA
Júnior Löff Università della Svizzera italiana, Daniele Bonetta VU Amsterdam, Walter Binder USI Lugano
14:42
18m
Talk
Experimental Evaluation Methodology for The Era of No Steady Performance
OOPSLA
Jaromír Antoch Charles University, Walter Binder USI Lugano, Lubomír Bulej Charles University, Francois Farquet Oracle Labs, Vojtech Horky Charles University, Aleksandar Prokopec Oracle Labs, Andrea Rosà Università della Svizzera italiana, Petr Tuma Charles University