60 likes | 132 Views
This comprehensive guide explores the structure of an optimizing compiler, from lexical analysis to low-level optimizations, including intermediate code generation and postpass optimization. Learn about source and high-level optimizations, as well as link-time optimizations to improve runtime performance.
E N D
The structure of an optimizing compiler String of characters Lexical analyzer String of tokens Parser Parse tree Semantic analyzer Parse tree Intermediate-code generator Medium-level intermediate code Optimizer Medium-level intermediate code Code Generator Low-level intermediate code Postpass optimizer Relocatable object module or runable machine code
1C 5C 2C 3C Source and high-level optimizations A B 4C D E
1C 5C 2C 3C High and mid-level optimization A B 4C D E
2C 3C Medium and low-level optimizations A B 1C 5C 4C D E
1C 5C 2C 3C Low-level (machine dependent) optimizations A B 4C D E
1C 5C 2C 3C Link-time optimizations A B 4C D E