Abstract | ||
---|---|---|
Current link-time optimization techniques can reduce the power consumption and code size of embedded software [2]. Due to a lack of information, the stack frames of procedures are left untouched by link-time program optimizers. In this paper we present a practical whole-program linear-constant analysis [9] that allows to analyze the stack layout of a procedure. The analysis deals with the peculiarities of link-time program representation, namely the lack of high-level information and the huge size of the control flow graph. Even on a complete linux kernel, our analysis is practical in terms of computation time. The collected information consists of restricted affine equations between two registers, but it enables optimizations complementary to existing link-time optimization techniques. On a set of ARM benchmarks, the number of store operations decreases by up to 7% while the execution time, program size and power consumption are all further improved. This paper discusses both the practical issues of applying whole-program linear-constant propagation as well as its use in program optimization and understanding. |
Year | DOI | Venue |
---|---|---|
2007 | 10.1145/1269843.1269853 | SCOPES |
Keywords | Field | DocType |
program size,link-time optimization technique,analysis deal,link-time program representation,current link-time optimization technique,program optimization,whole-program linear-constant analysis,code size,power consumption,high-level information,link-time program optimizers,embedded software,constant propagation,control flow graph | Program optimization,Affine transformation,Embedded software,Control flow graph,Computer science,Parallel computing,Real-time computing,Program analysis,Link time,Linux kernel,Computation | Conference |
Citations | PageRank | References |
1 | 0.35 | 7 |
Authors | ||
3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Ludo Van Put | 1 | 127 | 6.83 |
Dominique Chanet | 2 | 120 | 6.71 |
Koen De Bosschere | 3 | 1659 | 117.74 |