|
ABSTRACT
The transformations performed by an optimizing compiler have traditionally impeded interactive debugging in source language terms. A prototype system called Navigator has been developed for debugging optimized programs written in Cedar, an Algol-like language. Navigator can be used to monitor program execution flow in the presence of two optimizations: inline procedure expansion and cross-jumping (merging identical tails of code paths that join). This paper describes the problems that these two optimizations create for debugging and Navigator's solutions to these problems. The selected approach collects extra information during the optimization phases of compilation. At runtime, Navigator uses the additional information to hide the effects of the optimizations from the programmer.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Allen, F. E., and Cocke, J. A catalogue of optimizing transformations. In Design and Optimization of Compilers, Rustin, R. (Ed.), Prentice-Hall, Englewood Cliffs, NJ, 1972, 1-30.
|
| |
2
|
|
| |
3
|
Evans, T. G., and Darley, D.L. On-line debugging techniques: A survey. AFIPS FJCC Proceedings Vol. 29, 1966, 37-50.
|
| |
4
|
|
 |
5
|
|
 |
6
|
|
 |
7
|
|
 |
8
|
|
| |
9
|
Mitchell, J. G., Maybury, W., and Sweet, R. Mesa language manual, version 5.0. Report CSL-79-3, Xerox PARC, Palo Alto, CA, April 1979.
|
| |
10
|
Myers, B. A. Displaying data structures for interactive debugging. Report CSL-80-7, Xerox PARC, Palo Alto, CA, June 1980.
|
| |
11
|
Teeple, D. W. L., Personal communication. November 26, 1981.
|
| |
12
|
Teeple, D. W. L., and Anderson, J. C. The debugging of optimized code. Unpublished manuscript, MacDonald, Dettwiler & Associates Ltd., Richmond, B.C., Canada, March 1980.
|
| |
13
|
Warren, H. S., Jr. Personal communication. March 3, 1982.
|
| |
14
|
Warren, H. S., Jr., and Schlaeppi, H. P. Design of the FDS interactive debugging system. Report RC7214, IBM T. J. Watson Research Center, Yorktown, NY, June 1978.
|
| |
15
|
|
| |
16
|
Zellweger, P.T. An interactive high-level debugger for control-flow optimized programs. Report CSL-83-1, Xerox PARC, Palo Alto, CA, January 1983.
|
| |
17
|
Zellweger, P.T. Interactions between high-level debugging and optimized code. Ph.D. Dissertation, Computer Science Division—EECS, University of California, Berkeley, to appear in 1983.
|
CITED BY 11
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hugo Venturini , Frederic Riss , Jean-Claude Fernandez , Miguel Santana, Non-transparent debugging for software-pipelined loops, Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems, September 30-October 03, 2007, Salzburg, Austria
|
|
|
|
|