Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Concise specifications of locally optimal code generators Andrew W. Appel

Summary: Concise specifications of locally optimal code generators
Andrew W. Appel
Department of Computer Science
Princeton University
Princeton, NJ 08544
Dynamic programming allows locally optimal instruction selection for expression
trees. More importantly, the algorithm allows concise and elegant specification of code
generators. Aho, Ganapathi, and Tjiang have built the Twig code­generator­generator,
which produces dynamic­programming code­generators from grammar­like
Encoding a complex architecture as a grammar for a dynamic­programming code­
generator­generator shows the expressive power of the technique. Each instruction,
addressing mode, register and class can be expressed individually in the grammar. The
grammar can be factored much more readily than with the Graham­Glanville LR(1) algo­
rithm, so it can be much more concise. Twig specifications for the VAX and MC68020
are described, and the corresponding code generators select very good (and under the
right assumptions, optimal) instruction sequences.
Limitations and possible improvements to the specification language are discussed.
1. Introduction


Source: Appel, Andrew W. - Department of Computer Science, Princeton University


Collections: Computer Technologies and Information Sciences