Code generation using tree matching and dynamic programming
Open Access
- 1 October 1989
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 11 (4) , 491-516
- https://doi.org/10.1145/69558.75700
Abstract
Compiler-component generators, such as lexical analyzer generators and parser generators, have long been used to facilitate the construction of compilers. A tree-manipulation language called twig has been developed to help construct efficient code generators. Twig transforms a tree-translation scheme into a code generator that combines a fast top-down tree-pattern matching algorithm with dynamic programming. Twig has been used to specify and construct code generators for several experimental compilers targeted for different machines.Keywords
This publication has 23 references indexed in Scilit:
- Integrating code generation and optimizationACM SIGPLAN Notices, 1986
- Optimization of parser tables for portable compilersACM Transactions on Programming Languages and Systems, 1984
- Using dynamic programming to generate optimized code in a Graham-Glanville style code generatorACM SIGPLAN Notices, 1984
- Experience with a Graham-Glanville style code generatorACM SIGPLAN Notices, 1984
- Attributed linear intermediate representations for retargetable code generatorsSoftware: Practice and Experience, 1984
- Retargetable Compiler Code GenerationACM Computing Surveys, 1982
- Automatic Derivation of Code Generators from Machine DescriptionsACM Transactions on Programming Languages and Systems, 1980
- Code Generation for Expressions with Common SubexpressionsJournal of the ACM, 1977
- Code Generation for a One-Register MachineJournal of the ACM, 1976
- Deterministic parsing of ambiguous grammarsCommunications of the ACM, 1975