Interprocedural Optimization

  • Helmut SeidlEmail author
  • Reinhard Wilhelm
  • Sebastian Hack


In this chapter, we extend our programming language by procedures. Procedures have declarations and calls. Procedure calls have a complex semantics: The actual computation is interrupted at the call and resumed when the called procedure has terminated. The body of the procedure often forms a new scope for local names, i.e., names that are only visible within the body. Global names are possibly hidden by local names. Upon a procedure call, actual parameters are passed to formal parameters and, upon termination, results are passed back to the caller. Two different names for a variable coexist if the variable is passed to a reference parameter.

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Helmut Seidl
    • 1
    Email author
  • Reinhard Wilhelm
    • 2
  • Sebastian Hack
    • 3
  1. 1.Fakultät für Informatik TechnischeUniversität MünchenGarchingGermany
  2. 2.Compiler Research GroupUniversität des SaarlandesSaarbrückenGermany
  3. 3.Programming GroupUniversität des SaarlandesSaarbrückenGermany

Personalised recommendations