Object-oriented technology for real-time systems: a practical approach using OMT and Fusion
Object-oriented technology for real-time systems: a practical approach using OMT and Fusion
Efficient dynamic dispatch without virtual function tables: the SmallEiffel compiler
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Type Inference for Late Binding: The SmallEiffel Compiler
JMLC '97 Proceedings of the Joint Modular Languages Conference on Modular Programming Languages
Optimizing Dynamically-Typed Object-Oriented Languages With Polymorphic Inline Caches
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
Eliminating Virtual Function Calls in C++ Programs
ECCOP '96 Proceedings of the 10th European Conference on Object-Oriented Programming
Optimizations of Eiffel Programs: Smalleiffel, the GNU Eiffel Compiler
TOOLS '99 Proceedings of the Technology of Object-Oriented Languages and Systems
Effective interprocedural optimization of object-oriented languages
Effective interprocedural optimization of object-oriented languages
Ada-Europe '02 Proceedings of the 7th Ada-Europe International Conference on Reliable Software Technologies
Hi-index | 0.00 |
The increasing complexity and decreasing time-to-market of embedded software forces designers to write more modular and reusable code, using for example object-oriented techniques and languages such as C++. The resulting memory and runtime overhead cannot be removed by traditional optimizing compilers; a global, whole program analysis is required. To evaluate the potential of whole program optimization techniques, we have manually optimized the embedded software of a commercial ADSL modem. Using only techniques that can be automated, a memory footprint reduction of newly 60% has been achieved. We conclude that a consistent and aggressive use of whole system optimization techniques is feasible and worthwhile, and that the implementation of such techniques in a compiler for embedded software will allow software designers to write more modular and reusable code without suffering the associated implementation overhead.