This program is tentative and subject to change.
One of the key implementation challenges for higher-order functional languages is managing the representation of first-class function values. The standard approach to this problem is \emph{closure conversion}, which is a compiler transformation that introduces an explicit data structure to represent the environment of a function value. Constructing the closure for a nested function usually involves copying data from the enclosing function's closure. To avoid this copying, one might use linked representations, but that choice makes variable access slow and can introduce space leaks. Shao and Appel developed an effective closure converter that reduces copying and is safe-for-space, but their converter is based on a weak, first-order analysis.
In this paper, we present a new safe-for-space closure converter that uses a higher-order flow analysis to inform closure-representation decisions. We describe how this information can be used to improve two aspects of closure optimization: sharing heap-allocated tuples of variables and spreading variables into argument registers. We have implemented our converter in the Standard ML of New Jersey system and demonstrated that it produces better code on average than the Shao and Appel converter, with significant performance gains for some benchmarks.
This program is tentative and subject to change.
Wed 17 JunDisplayed time zone: Mountain Time (US & Canada) change
13:40 - 15:20 | |||
13:40 20mTalk | Flow-Analysis-Based Closure Optimization PLDI Research Papers John Reppy University of Chicago, Olin Shivers Northeastern University, Byron Zhong University of Chicago DOI | ||
14:00 20mTalk | SSA without Dominance for Higher-Order Programs PLDI Research Papers DOI Pre-print | ||
14:20 20mTalk | Analyzing Bytes: Pre-Disassembly Static Binary Analysis PLDI Research Papers Huan Nguyen Google, Soumyakant Priyadarshan Stony Brook University, Chencheng Jiang Stony Brook University, R. Sekar Stony Brook University DOI | ||
14:40 20mTalk | Exploiting Sophisticated Static Analysis for Verilog PLDI Research Papers Qinlin Chen Nanjing University, Nairen Zhang Nanjing University, Jinpeng Wang Nanjing University, Jiacai Cui Nanjing University, Tian Tan Nanjing University, Xiaoxing Ma Nanjing University, Chang Xu Nanjing University, Jian Lu Nanjing University, Yue Li Nanjing University DOI | ||
15:00 20mTalk | Bridging Coverage and Confidence: Reliable Static False Alarm Elimination via Input-Agnosticity PLDI Research Papers Jiayi Wang Nanjing University, Yu Wang Nanjing University, Linzhang Wang Nanjing University, Ke Wang Nanjing University DOI | ||