COMPILER CONSTRUCTION Principles and practice Kenneth C. louden
COMPILER CONSTRUCTION Principles and Practice Kenneth C. Louden
7. Runtime environments PART ONE
7. Runtime Environments PART ONE
Contents Part One 7.1 Memory Organization during Program Execution 7.2 Fully Static Runtime Environments 7.3 Stack-Based runtime environments Part Two 7.4 Dynamic Memor 7.5 Parameter Passing Mechanisms 7.6 A Runtime Environment for the TINY Language
Contents Part One 7.1 Memory Organization During Program Execution 7.2 Fully Static Runtime Environments 7.3 Stack-Based Runtime Environments Part Two 7.4 Dynamic Memory 7.5 Parameter Passing Mechanisms 7.6 A Runtime Environment for the TINY Language
The precious chapters studied the phases of a compiler that perform static analysis of the source language Scanning, parsing, and static semantic analysis Depends only on the properties of the source language This chapter and the next turn to the task of studying how a compiler generates executable code Additional analysis such as that performed by an optimizer Some of this can be machine independent, but much of the task of code generation is dependent on the details of the target machine
• The precious chapters studied the phases of a compiler that perform static analysis of the source language – Scanning, parsing, and static semantic analysis – Depends only on the properties of the source language • This chapter and the next turn to the task of studying how a compiler generates executable code – Additional analysis, such as that performed by an optimizer – Some of this can be machine independent, but much of the task of code generation is dependent on the details of the target machine
Runtime environment The structure of the target computer's registers and memory that serves to manage memory and maintain the information needed to guide the execution process TThree kinds of runtime environments (1) Fully static environment; FORTRAN77 (2) Stack-Based environment; CC++ (3)Fully dynamic environment; LISP
• Runtime Environment The structure of the target computer’ s registers and memory that serves to manage memory and maintain the information needed to guide the execution process • Three kinds of runtime environments (1) Fully static environment; FORTRAN77 (2) Stack-Based environment; C C++ (3) Fully dynamic environment; LISP