Affiliation:
1. Xerox Palo Alto Research Center, 3333 Coyote Hill Road, Palo Alto, CA
Abstract
Work with compiler compilers has dealt principally with automatic generation of parsers and lexical analyzers. Until recently, little work has been done on formalizing and generating the back end of a compiler, particularly an optimizing compiler. This paper describes formalizations of machines and code generators and describes a scheme for the automatic derivation of code generators from machine descriptions. It was possible to separate all machine dependence from the code generation algorithms for a wide range of typical architectures (IBM-360, PDP-11, PDP-10, Intel 8080) while retaining good code quality. Heuristic search methods from work in artificial intelligence were found to be both fast and general enough for use in generation of code generators with the machine representation proposed. A scheme is proposed to perform as much analysis as possible at code generator generation time, resulting in a fast pattern-matching code generator. The algorithms and representations were implemented to test their practicality in use.
Publisher
Association for Computing Machinery (ACM)
Reference27 articles.
1. ALLEN F. CARTER J. HARRISON W. LOEWNER P. TAPSCOTT R. TREVILLYAN L. AND WECMAN M. The experimental compiling systems project. IBM Res. Rep. RC 6718 (#28922) IBM Yorktown Heights N. Y. 1977. ALLEN F. CARTER J. HARRISON W. LOEWNER P. TAPSCOTT R. TREVILLYAN L. AND WECMAN M. The experimental compiling systems project. IBM Res. Rep. RC 6718 (#28922) IBM Yorktown Heights N. Y. 1977.
Cited by
64 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Lightweight, Modular Verification for WebAssembly-to-Native Instruction Selection;Proceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 1;2024-04-17
2. Unveiling the Potential of Large Language Models in Generating Semantic and Cross-Language Clones;2023 IEEE 17th International Workshop on Software Clones (IWSC);2023-10-01
3. Bibliography;Engineering a Compiler;2023
4. Instruction Selection;Engineering a Compiler;2023
5. VeGen: a vectorizer generator for SIMD and beyond;Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems;2021-04-17