Vista: A system for interactive code improvement

Wankang Zhao, Baosheng Cai, David Whalley, Mark W. Bailey, Robert Van Engelen, Xin Yuan, Jason D. Hiser, Jack W. Davidson, Kyle Gallivan, Douglas L Jones

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

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).

Original languageEnglish (US)
Title of host publicationJoint COnference on Languages, Compilers and Tools for Embedded Systems and Software and Compilers for Embedded Systems
EditorsP. Marwedel, S. Devadas, P. Marwedel, S. Devadas
Pages155-164
Number of pages10
StatePublished - Dec 1 2002
EventJoint Conference on Languages, Compilers and Tools for Embedded Systems and Software and Compilers for Embedded Systems - Berlin, Germany
Duration: Jun 19 2002Jun 21 2002

Publication series

NameJoint COnference on Languages, Compilers and Tools for Embedded Systems and Software and Compilers for Embedded Systems

Other

OtherJoint Conference on Languages, Compilers and Tools for Embedded Systems and Software and Compilers for Embedded Systems
CountryGermany
CityBerlin
Period6/19/026/21/02

Keywords

  • User-directed code improvement

ASJC Scopus subject areas

  • Engineering(all)

Fingerprint Dive into the research topics of 'Vista: A system for interactive code improvement'. Together they form a unique fingerprint.

Cite this