Part of the Lecture Notes in Computer Science book series (LNCS, volume 1539)


Traditionally, program optimisation stands for various kinds of program transformations intended to improve the run-time performance of the generated code. Optimising transformations are usually applied as intermediate steps within the compilation process. More specifically, an optimising compiler principally proceeds in three stages [Muc97]:
  • The front end translates the source program into an intermediate form. Usually, intermediate level programs are represented in terms of flow graphs built of quite elementary, yet machine-independent instructions.

  • The optimiser performs several transformations on the intermediate level, each addressing a particular optimisation goal of interest.

  • The back end finally translates the transformed intermediate program into machine-specific code. This stage particularly comprises typical machine-dependent tasks like register allocation [Cha82, CH90, Bri92b] and instruction scheduling [BR91, GM86].


Program Optimisation Program Transformation Elementary Transformation Program Point Register Allocation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Personalised recommendations