Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/1289881.1289887acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
Article

Non-transparent debugging for software-pipelined loops

Published: 30 September 2007 Publication History

Abstract

This paper tackles the problem of providing correct information about program variable values in a software-pipelined loop through a non-transparent debugging approach. Since modern processors provide instruction level parallelism, software pipelining techniques have been developed to achieve better performances, especially in the context of embedded systems. Indeed, the effectiveness of software pipelining on such systems has been demonstrated both theoretically and experimentally. As it overlaps iterations and reorders statements, it also makes standard debugging information irrelevant. Hence debugging a loop which has been software-pipelined becomes very difficult. In this paper, we propose a solution relying on selected information to be generated by the compiler and an algorithm for the debugger not to mislead the user.

References

[1]
A WORKGROUP OF THE FREE STANDARDS GROUP. The DWARF Debugging Standard. http://dwarf.freestandards.org/.
[2]
ACE ASSOCIATED COMPILER EXPERTS BV. CoSy Compilers, Overview of Construction and Operation. White paper, 24 Apr. 2003.
[3]
ADL-TABATABAI, A.-R. Source Level Debugging of Globally Optimized Code. PhD thesis, Carnegie Mellon University, Pittsburgh PA 15213-3891, June 1996.
[4]
APPEL, A. W. Modern Compiler Implementation in C. Cambridge University Press, 1998.
[5]
BERTIN, V., DAVEAU, J.-M., GUILLAUME, P., LEPLEY, T., PILAT, D., RICHARD, C., SANTANA, M., AND THERY, T. Flexcc2: An optimizing retargetable c compiler for dsp processors. In EMSOFT '02: Proceedings of the Second International Conference on Embedded Software (London, UK, 2002), Springer-Verlag, pp. 382--398.
[6]
BROOKS, G., HANSEN, G. J., AND SIMMONS, S. A new approach to debugging optimized code. In PLDI '92: Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation (New York, NY, USA, July 1992), vol. 27, ACM Press, pp. 1--11.
[7]
COPPERMAN, M., AND MCDOWELL, C. E. A further note on hennessy's "symbolic debugging of optimized code". ACM Trans. Program. Lang. Syst. 15, 2 (1993), 357--365.
[8]
COUTANT, D. S., MELOY, S., AND RUSCETTA, M. Doc: a practical approach to source-level debugging of globally optimized code. In PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation (New York, NY, USA, July 1988), vol. 23, ACM Press, pp. 125--134.
[9]
DHAMDHERE, D. M., AND SANKARANARAYANAN, K. V. Dynamic currency determination in optimized programs. ACM Trans. Program. Lang. Syst. 20, 6 (1998), 1111--1130.
[10]
ELMS, K. Debugging optimised code using function interpretation. In Automated and Algorithmic Debugging (1997), pp. 27--36.
[11]
GOUGH, K., LEDERMANN, J., AND ELMS, K. Interpretive debugging of optimised code. Proceedings of ACSC-17, Christchurch (1994).
[12]
HENNESSY, J. Symbolic debugging of optimized code. ACM Trans. Program. Lang. Syst. 4, 3 (July 1982), 323--344.
[13]
JARAMILLO, C. I. Source Level Debugging Techniques And Tools For Optimized Code. PhD thesis, University of Pittsburgh, 2000.
[14]
PAULIN, P. G., AND SANTANA, M. Flexware: A retargetable embedded-software development environment. IEEE Des. Test 19, 4 (2002), 59--69.
[15]
RAU, B. R. Iterative modulo scheduling: an algorithm for software pipelining loops. In MICRO 27: Proceedings of the 27th annual international symposium on Microarchitecture (New York, NY, USA, 1994), ACM Press, pp. 63--74.
[16]
STALLMAN, R. M. Using and Porting the GNU Compiler Collection, For GCC Version 2.95. Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA, Tel: (617) 876-3296, USA, 1999.
[17]
STALLMAN, R. M., PESCH, R., SHEBS, S., ET AL. Debugging with GDB: The GNU Source-Level Debugger. 2002.
[18]
TICE, C., AND GRAHAM, S. Key Instructions: Solving the Code Location Problem for Optimized Code. Compaq, Systems Research Center, 2000.
[19]
TICE, C., AND GRAHAM, S. L. Optview: A new approach for examining optimized code. In Workshop on Program Analysis For Software Tools and Engineering (1998), pp. 19--26.
[20]
TICE, C. M. Non-transparent debugging of optimized code. Tech. rep., University of California at Berkeley, Berkeley, CA, USA, November 1999.
[21]
WALL, D., SRIVASTAVA, A., AND TEMPLIN, F. A note on hennessy's "symbolic debugging of optimized code". ACM Trans. Program. Lang. Syst. 7, 1 (January 1985), 176--181.
[22]
WISMÜLLER, R. Debugging of globally optimized programs using data flow analysis. ACM SIGPLAN Notices 29, 6(1994), 278--289.
[23]
WU, L.-C., AND MEI W. WHU, W. A new breakpoint implementation scheme for debugging globally optimised code. Urbana 51 (1998), 61801.
[24]
WU, L.-C.,MIRANI, R., PATIL, H., OLSEN, B., AND MEI W. HWU, W. A new framework for debugging globally optimized code. In PLDI '99: Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation (New York, NY, USA, 1999), ACM Press, pp. 181--191.
[25]
ZELLWEGER, P. T. An interactive high-level debugger for control-flow optimized programs. In SIGSOFT '83: Proceedings of the symposium on High-level debugging (New York, NY, USA, August 1983), vol. 18, ACM Press, pp. 159--172.
[26]
ZELLWEGER, P. T. Interactive source-level debugging for optimized programs (compilation, high-level). PhD thesis, 1984.

Cited By

View all
  • (2008)A fully-non-transparent approach to the code location problemProceedings of the 11th international workshop on Software & compilers for embedded systems10.1145/1361096.1361108(61-68)Online publication date: 13-Mar-2008

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
CASES '07: Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems
September 2007
292 pages
ISBN:9781595938268
DOI:10.1145/1289881
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 30 September 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. compiler
  2. debugger
  3. non-transparent debugging
  4. software-pipelining

Qualifiers

  • Article

Conference

ESWEEK07
ESWEEK07: Third Embedded Systems Week
September 30 - October 3, 2007
Salzburg, Austria

Acceptance Rates

Overall Acceptance Rate 52 of 230 submissions, 23%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 21 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2008)A fully-non-transparent approach to the code location problemProceedings of the 11th international workshop on Software & compilers for embedded systems10.1145/1361096.1361108(61-68)Online publication date: 13-Mar-2008

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media