TY - GEN
T1 - Vista
T2 - Joint Conference on Languages, Compilers and Tools for Embedded Systems and Software and Compilers for Embedded Systems
AU - Zhao, Wankang
AU - Cai, Baosheng
AU - Whalley, David
AU - Bailey, Mark W.
AU - Van Engelen, Robert
AU - Yuan, Xin
AU - Hiser, Jason D.
AU - Davidson, Jack W.
AU - Gallivan, Kyle
AU - Jones, Douglas L
PY - 2002/12/1
Y1 - 2002/12/1
N2 - Software designers face many challenges when developing applications for embedded systems. A major challenge is meeting the conflicting constraints of speed, code density, and power consumption. Traditional optimizing compiler technology is usually of little help in addressing this challenge. To meet speed, power, and size constraints, application developers typically resort to hand-coded assembly language. The results are software systems that are not portable, less robust, and more costly to develop and maintain. This paper describes a new code improvement paradigm implemented in a system called vista that can help achieve the cost/performance trade-offs that embedded applications demand. Unlike traditional compilation systems where the smallest unit of compilation is typically a function and the programmer has no control over the code improvement process other than what types of code improvements to perform, the vista system opens the code improvement process and gives the application programmer, when necessary, the ability to finely control it. In particular, vista allows the application developer to (1) direct the order and scope in which the code improvement phases are applied, (2) manually specify code transformations, (3) undo previously applied transformations, and (4) view the low-level program representation graphically. vista can be used by embedded systems developers to produce applications, by compiler writers to prototype and debug new low-level code transformations, and by instructors to illustrate code transformations (e.g., in a compilers course).
AB - Software designers face many challenges when developing applications for embedded systems. A major challenge is meeting the conflicting constraints of speed, code density, and power consumption. Traditional optimizing compiler technology is usually of little help in addressing this challenge. To meet speed, power, and size constraints, application developers typically resort to hand-coded assembly language. The results are software systems that are not portable, less robust, and more costly to develop and maintain. This paper describes a new code improvement paradigm implemented in a system called vista that can help achieve the cost/performance trade-offs that embedded applications demand. Unlike traditional compilation systems where the smallest unit of compilation is typically a function and the programmer has no control over the code improvement process other than what types of code improvements to perform, the vista system opens the code improvement process and gives the application programmer, when necessary, the ability to finely control it. In particular, vista allows the application developer to (1) direct the order and scope in which the code improvement phases are applied, (2) manually specify code transformations, (3) undo previously applied transformations, and (4) view the low-level program representation graphically. vista can be used by embedded systems developers to produce applications, by compiler writers to prototype and debug new low-level code transformations, and by instructors to illustrate code transformations (e.g., in a compilers course).
KW - User-directed code improvement
UR - http://www.scopus.com/inward/record.url?scp=0036977872&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0036977872&partnerID=8YFLogxK
M3 - Conference contribution
AN - SCOPUS:0036977872
SN - 1581135270
T3 - Joint COnference on Languages, Compilers and Tools for Embedded Systems and Software and Compilers for Embedded Systems
SP - 155
EP - 164
BT - Joint COnference on Languages, Compilers and Tools for Embedded Systems and Software and Compilers for Embedded Systems
A2 - Marwedel, P.
A2 - Devadas, S.
A2 - Marwedel, P.
A2 - Devadas, S.
Y2 - 19 June 2002 through 21 June 2002
ER -