DocumentCode
3305648
Title
Procedural Abstraction with Reverse Prefix Trees
Author
Schaeckeler, Stefan ; Shang, Weijia
Author_Institution
Dept. of Comput. Eng., Santa Clara Univ., Santa Clara, CA
fYear
2009
fDate
22-25 March 2009
Firstpage
243
Lastpage
253
Abstract
For memory constrained environments like embedded systems, optimization for size is often as important as, if not more important than, optimization for execution speed. A common technique for compacting code is procedural abstraction. Equivalent code fragments are identified and abstracted into a procedure. The standard algorithm for identifying these fragments is based on suffix trees. We propose in this paper the calculation of suffix trees over the program text not in the common top-down fashion, but reversed, i.e. bottom-up. With this simple modification, not only equivalent fragments can be identified, but also fragments equivalent to (possibly often differently long) suffixes of the longest fragments. A longest fragment is then abstracted, and all fragments are replaced by procedure calls to their corresponding start instruction somewhere in the abstracted procedure. This allows us to harvest more and longer fragments than with standard suffix trees, improving code size reductions on average by 8.277% over standard suffix trees.
Keywords
embedded systems; optimising compilers; tree data structures; code compaction; code execution speed optimization; code size optimization; embedded system; memory constrained environment; post-pass optimization; procedural abstraction; procedure call; reverse prefix tree; suffix tree; Assembly; Code standards; Compaction; Constraint optimization; Costs; Embedded computing; Embedded system; Personal digital assistants; Random access memory; Visualization; code compaction; code size reduction; embedded systems; post-pass optimization; procedural abstraction; program visualization; reverse prefix tree; suffix tree;
fLanguage
English
Publisher
ieee
Conference_Titel
Code Generation and Optimization, 2009. CGO 2009. International Symposium on
Conference_Location
Seattle, WA
Print_ISBN
978-0-7695-3576-0
Type
conf
DOI
10.1109/CGO.2009.25
Filename
4907668
Link To Document