Program interpolation

  • Authors:
  • Andrew Moss;Dan Page

  • Affiliations:
  • University of Bristol, Bristol, United Kingdom;University of Bristol, Bristol, United Kingdom

  • Venue:
  • Proceedings of the 2009 ACM SIGPLAN workshop on Partial evaluation and program manipulation
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Program interpolation is a new type of transformation that given an input program written in a specially constructed Domain Specific Language (DSL), produces a family of functionally equivalent instruction sequences as output. Each sequence is an "interpolation" between the control-flows of implementation strategies supplied in the input program. The purpose of the transformation is to expose behavioural differences (e.g. performance) within the sequences, and thus allow automated optimisation with respect to architectural trade-offs that are difficult to quantify and model. We present results from a prototype compiler that demonstrate a 63% speedup in the domain of multi-precision integer arithmetic.