A Formal Model of Instruction Set Semantics

  • Robert Giegerich
Conference paper
Part of the Informatik-Fachberichte book series (INFORMATIK, volume 53)


In order to automate compiler construction beyond semantic analysis, it is necessary to have a formal framework wherein the properties of the target machine may be expressed precisely, such that they become amenable to automatic treatment. We present a formal model of instruction sets that defines a precise semantics to the concepts encountered on the machine code level: register and storage structure, addressing modes and side effects, instructions, flag settings and so on. We give a number of examples to illustrate how the model can serve in the automatic generation of target machine dependent compiler parts.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. BeN7H C.G. Bell, A. Newell: Computer Structures: Readings and Examples, McGraw-Hill, 1971Google Scholar
  2. [Cat78]
    R.G.G. Cattell: Formalization and Automatic Derivation of Code Generators, Report CMU-CS-78-115, Carnegie Mellon University, Pittsburgh 1978Google Scholar
  3. [CoC791.
    P. Cousot, R. Cousot: Systematic Design of Program Analysis Frameworks, Proceedings of 6th ACM Symposium on Principles of Programming Languages, 1979, pp. 269–282Google Scholar
  4. [Gan80]
    H. Ganzinger: Some Principles for the Development of Compiler Descriptions from Denotational Language Definitions, TUM-INFO 8006, Institut für Informatik, Technical University Munich, 1980Google Scholar
  5. Gie81] R. Giegerich: Automatische Erzeugung von Maschinencode-Optimierern, TUM-I8112, Institut für Informatik, Technical University Munich, 1981 (an English summary appears in [Gie82])Google Scholar
  6. [Gie82]
    R. Giegerich: Automatic Generation of Machine Specific Code Optimizers, Proceedings of 9th ACM Symposium on Principles of Programming Languages, 1982Google Scholar
  7. [Gla78]
    R.S. Glanville: A Machine Independent Algorithm for Code Generation and its Use in Retargetable Compilers, Technical report UCB-CS-78-01, University of California, Berkeley 1978Google Scholar
  8. [Gnp80]
    M. Ganapathi: Retargetable Code Generation and Optimization Using Attribute Grammars, Computer sciences technical report #406, University of Wisconsin, Madison, 1980Google Scholar
  9. Hil80] W. Hilf, Motorola Munich, private communicationGoogle Scholar
  10. [McK65]
    W.M. McKeeman: Peephole Optimization, CACM 8,7, 1965, pp. 443–444Google Scholar
  11. [Mot791]
    Motorola Inc.: MC68000 16 Bit Microprocessor, User Manual, 1979Google Scholar
  12. [PQC80]
    B.W. Leverett, R.G.G. Cattell, S.O. Hobbs, J.M. Newcomer, A.H. Reiner, B.R. Schatz, W.A. Wulf: An Overview of the Production Quality Compiler-Compiler Project, IEEE Computer, Aug. 1980, pp. 38–49Google Scholar
  13. [Rip77]
    K. Ripken: Formale Beschreibung von Maschinen, Implementierungen und optimie- render Maschinencodeerzeugung aus attributierten Programm-graphen, TUM-INFO 7731. Institut für Informatik, Technical University Munich, 1977Google Scholar
  14. [Sch79]
    W. Schürer: Erarbeitung einer Hierarchie von Schnittstellen für die Codeerzeugung für verschiedene Microcomputer, Diplomarbeit, Institut für Informatik, Technical University Munich, 1979Google Scholar
  15. [Sto77]
    J.E. Stoy: Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory, MIT Press, Cambridge (Mass. ), 1977Google Scholar
  16. [Wai77]
    W.M. Waite: Code Generation, in: F.L. Bauer, J. Eickel (eds.): Compiler Construction — An Advanced Course, Lecture Notes in Computer Science No. 25, Springer 1974Google Scholar
  17. [Wul75]
    W.A. Wulf, R.K. Johnsson. C.B. Weinstock, S.O. Hobbs, C.M. Geschke: The Design of an Optimizing Compiler, American Elsevier, New York 1975zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1982

Authors and Affiliations

  • Robert Giegerich
    • 1
  1. 1.Institut für InformatikTechnische Universität MünchenMünchen 2Germany

Personalised recommendations