A Re-Usable Code Generator for PRIME 50-Series Computers

T. Allen Akin · 1981

This thesis describes the design and implementation of a language- independent reuseable code generator for Prime 400 and 50-Series computers. A code generator is the portion of a compiler that converts an internal representation of the semantics of a program into equivalent machine code. Construction of a code generator requires a major effort, so it should be done as infrequently as possible. One way to make this possible is to build a code generator that may be re-used from compiler to compiler. Several factors influence the design of such a code generator, including the nature of the communications channel between the code generator and the rest of the compiler, the structure of the information passed to the code generator (the 'intermediate form'), the form of output code desired, and finally the limitations of the machine architecture and existing systems software. The code generator implemented processes a high-level, tree-structured intermediate form, performing translation by case analysis and optimization by eliminating redundant load operations. It produces a stream of assembly language source code which may then be assembled, loaded, and executed. Experience with two compiler implementations has shown that the reusable code generator approach is feasibile. However, several improvements in the present code generator would be desirable. (Author)

Read the paper · More papers on PaperTik