Some new approaches to partial inlining

  • Authors:
  • Bowen Alpern;Anonthy Cocchi;David Grove

  • Affiliations:
  • Lehman College, CUNY, New York, NY, USA;Lehman College, CUNY, New York, NY, USA;IBM Research, Yorktown Heights, NY, USA

  • Venue:
  • Proceedings of the sixth ACM workshop on Virtual machines and intermediate languages
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper proposes two novel techniques for partial inlining. Context-driven partial inlining uses information available to the compiler at a call site to prune the callee prior to assessing whether the (pruned) body of the callee should be inlined. Guarded partial inlining seeks to inline the frequently taken fast path through the callee along with a test and a call to the original method to handle those instances where the fast path is not taken. A fragile implementation of guarded partial inlining is described. An example, very loosely based on a simplified web server, is fabricated. Experimental evidence establishes the superiority of partial inlining over no inlining and over complete inlining on this contrived example. We show that these approaches to partial inlining are applicable in situations where previous approaches are not. Potential effects of the widespread availability of partial inlining on software development are considered.