Partial Evaluation of Machine Code
Venkatesh Srinivasan† and Thomas Reps†,‡
This paper presents an algorithm for off-line partial evaluation of
machine code. The algorithm follows the classical two-phase approach
of binding-time analysis (BTA) followed by specialization. However,
machine-code partial evaluation presents a number of new challenges,
and it was necessary to devise new techniques for use in each phase.
(Click here to access the paper:
conference version;
extended version.)
†University of Wisconsin
‡GrammaTech, Inc.
Our experiments show that our algorithm can be used to specialize
binaries with respect to commonly used inputs to produce faster
binaries, as well as to extract an executable component from a bloated binary.