Function inlining under code size constraints for embedded processors

  • Authors:
  • Rainer Leupers;Peter Marwedel

  • Affiliations:
  • University of Dortmund, Dept. of Computer Science 12, 44221 Dortmund, Germany;University of Dortmund, Dept. of Computer Science 12, 44221 Dortmund, Germany

  • Venue:
  • ICCAD '99 Proceedings of the 1999 IEEE/ACM international conference on Computer-aided design
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

Function inlining is a compiler optimization that generally increases performance at the expense of larger code size. However, current inlining techniques do not meet the special demands in the design of embedded systems, since they are based on simple heuristics, and they generate code of unpredictable size. This paper presents a novel approach to function inlining in C compilers for embedded processors, which aims a maximum program speedup under a global limit on code size. The core of this approach is a branch-and-bound algorithm which allows to quickly explore the large search space. In an application study we show how this algorithm can be applied to maximize the execution speed of an application under a given code size constraint.