Code Generation
Gough K.J.
his book is an introduction to code generation. Code generation is the process by which the backend of a programming language compiler transforms a parsed and analysed program into object code. We shall assume that the means by which programs are parsed and analysed in the compiler frontend are already understood. Chapter 2 is a short chapter on semantic analysis, which is necessary only for consistency with the rest of the material.Chapter 3 is a fairly comprehensive account of runtime organization, which describes the execution environment for which our compilers generate code. In particular, the different conventions for procedure calling and parameter passing are discussed in some detail.Two different methods of code generation are discussed. The first method involves the generation of an intermediate form and the subsequent generation of code using an interpretive automaton. This method is quite widely used in production compilers, but has been little discussed in the literature. The other method of code generation is bottom-up tree rewriting. This method has a much shorter history, but is the most capable method currently known.A number of chapters deal with the subject of code improvements, or optimizations as they are generally called. Another chapter deals with the critical issue of register allocation. The emphasis is on the global methods of register allocation, which depend on the same kind of computations as the so-called global optimizations.
Ссылка удалена правообладателем
----
The book removed at the request of the copyright holder.