A Portable Compiler for the Language C

Abstract

This paper describes the implementation of a compiler for the programming language C. The compiler has been designed to be capable of producing assembly-language code for most register-oriented machines with only minor recoding. Most of the machine-dependent information used in code generation is contained in a set of tables which are constructed automatically from a machine description provided by the implementer. In the machine description, the implementer models the target machine by defining a machine- dependent abstract machine for which the code generator produces intermediate code. The implementer defines the translation from an abstract machine program to a target machine program by providing in the machine description a set of simple macro definitions for the abstract machine instructions. In addition, macro definitions may be provided in the form of C routines where additional processing capability is needed.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
May 01, 1975
Accession Number
ADA010218

Entities

People

  • Alan Snyder

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • C4I

DTIC Thesaurus Topics

  • Abstracts
  • Assembly
  • Assembly Languages
  • Compilers
  • Computer Languages
  • Computer Programming
  • Computer Science
  • Computers
  • Floating Point Operations
  • Grammars
  • Instructions
  • Language
  • Machine Languages
  • Operating Systems
  • Programming Languages
  • Software Development
  • Translations

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computer Science.