SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Sun 22 Oct 2023 11:22 - 11:45 at Room II - MPLR Session 2 Chair(s): Matthew J. Parkinson

Inline Caching is an important technique used to accelerate operations in dynamically typed language implementations by creating fast paths based on observed program behaviour.
Most software stacks that support inline caching use low-level, often ad-hoc, Inline-Cache (ICs) data structures for code generation.
This work presents CacheIR, a design for inline caching built entirely around an intermediate representation (IR) which: (i) simplifies the development of ICs by raising the abstraction level; and (ii) enables reusing compiled native code through IR matching techniques.
Moreover, this work describes WarpBuilder, a novel design for a Just-In-Time (JIT) compiler front-end that directly generates type-specialized code by lowering the CacheIR contained in ICs; and Trial Inlining, an extension to the inline-caching system that allows for context-sensitive inlining of context-sensitive ICs.
The combination of CacheIR and WarpBuilder have been powerful performance tools for the SpiderMonkey team, and have been key in providing improved performance with less security risk.

CacheIR: The Benefits of a Structured Representation for Inline Caches (CacheIR The Benefits of a Structured Representation for Inline Caches.pdf)555KiB

Sun 22 Oct

Displayed time zone: Lisbon change

11:00 - 12:30
MPLR Session 2MPLR at Room II
Chair(s): Matthew J. Parkinson Microsoft Azure Research
11:00
22m
Talk
Evaluating YJIT’s Performance in a Production Context: A Pragmatic Approach
MPLR
DOI
11:22
22m
Talk
CacheIR: The Benefits of a Structured Representation for Inline Caches
MPLR
Jan de Mooij Mozilla, Matthew Gaudet Mozilla, Iain Ireland Mozilla, Nathan Henderson University of Alberta, Jose Nelson Amaral University of Alberta
DOI File Attached
11:45
22m
Talk
Diagnosing Compiler Performance by Comparing Optimization Decisions
MPLR
Andrej Pečimúth Oracle Labs; Charles University, David Leopoldseder Oracle Labs, Petr Tuma Charles University
DOI
12:07
22m
Talk
Morello MicroPython: A Python Interpreter for CHERI
MPLR
Duncan Lowther University of Glasgow, Dejice Jacob University of Glasgow, Jeremy Singer University of Glasgow
DOI Pre-print