Optimal placement of bank selection instructions in polynomial time

  • Authors:
  • Philipp Klaus Krause

  • Affiliations:
  • Goethe-Universität, Frankfurt am Main, Germany

  • Venue:
  • Proceedings of the 16th International Workshop on Software and Compilers for Embedded Systems
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present the first approach to Optimal Placement of Bank Selection Instructions in Polynomial Time; previous approaches were not optimal or did not provably run in polynomial time. Our approach requires the input program to be structured, which is automatically true for many programming languages and for others, such as C, is equivalent to a bound on the number of goto labels per function. When not restricted to structured programs, the problem is NP-hard. A prototype implementation in a mainstream compiler for embedded systems shows the practical feasibility of our approach. Our approach and implementation are easy to retarget for different optimization goals and architectures.