Analyzing Assembler to Eliminate Dead Functions: An Industrial Experience.

Autor: Davis, Ian J., Godfrey, Michael W., Holt, Richard C., Mankovskii, Serge, Minchenko, Nick
Zdroj: 2012 16th European Conference on Software Maintenance & Reengineering; 1/ 1/2012, p467-470, 4p
Abstrakt: Industrial software systems often contain fragments of code that are vestigial, that is, they were created long ago for a specific purpose but are no longer useful within the current design of the system. In this work, we describe how we have adapted some research tools to remove such code, we use a hybrid static analysis approach of both source code and assembler to construct a model of the system, and then use graph querying to detect possible dead functions. Suspected dead functions are then commented out of the source. The system is then rebuilt and run against existing test suites to verify that the removals do not affect the semantics of the system. Finally, we discuss the results of performing this technique on a large and long-lived industrial software system as well as a large open source system. [ABSTRACT FROM PUBLISHER]
Databáze: Complementary Index