Invited Talk

Special Topics in Computer Science
Department of Computer Science and Information Engineering
National Chung Cheng University
May 12, 2003

High-Level Procedural Abstraction for Reducing Size of Object Code



As the functions of an embedded system become more and more complex, the resources demanded by an embedded system increase by a lot in recent years, although the resources are always limited in practice. One of the eff ective methods proposed to reduce the code size is the procedural abstraction, which is usually applied at the lower levels, such as the assembly level, or the machine code level. Since more and more applications for embedded systems are developed in high-level languages like C, C++, and Java, it is natural that we may reduce the size of object code with applying procedural abstraction at the high-level source code. In this talk, we present our proposed criteria for high-level procedural abstraction in order to eff ectievly reduce the size of object code. We design a new compiler optimization based on the criteria such that the optimized object code is guaranteed to have a reduced size. We implement the proposed optimization in a simple C-to-Thumb compiler. We will show the benchmarks of the experiments on our new optimization at the end of the talk.