Abstract
Many retargetable production compilers use some form on intermediate code for applying global optimizations. The compilers of the Amsterdam Compiler Kit use a low-level, language- and machine-independent, intermediate code called EM. The choice of intermediate code has impact on both the effectiveness of a global optimizer and on the ease of achieving a machine-independent implementation. These effects have been studied by implementing several global optimization techniques for EM. Comparisons are made with optimizing codes of a higher-level (e.g. trees) or of a lower level (e.g. assembly code). It is also shown what kind of knowledge about the source language and target machine a global optimizer should have, to be effective. © 1986.
Original language | English |
---|---|
Pages (from-to) | 105-121 |
Number of pages | 17 |
Journal | Computer Languages |
Volume | 11 |
Issue number | 2 |
DOIs | |
Publication status | Published - 1986 |
Keywords
- Global optimizer
- Intermediate code
- Retargetable compiler