Detection and recovery of endangered variables caused by instruction scheduling
- 1 June 1993
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 28 (6) , 13-25
- https://doi.org/10.1145/155090.155092
Abstract
Instruction scheduling re-orders and interleaves instruction sequences from different source statements. This impacts the task of a symbolic debugger, which attempts to present the user a picture of program execution that matches the source program. At a breakpoint B, if the value in the run-time location of a variable V may not correspond to the value the user expects V to have, then this variable is endangered at B. This paper describes an approach to detecting and recovering endangered variables caused by instruction scheduling. We measure the effects of instruction scheduling on a symbolic debugger's ability to recover source values at a breakpoint. This paper reports measurements for three C programs from the SPEC suite and a collection of programs from the Numerical Recipes, which have been compiled with a variant of a commercial C compiler.Keywords
This publication has 6 references indexed in Scilit:
- Evicted variables and the interaction of global register allocation and symbolic debuggingPublished by Association for Computing Machinery (ACM) ,1993
- Efficient data breakpointsPublished by Association for Computing Machinery (ACM) ,1992
- A new approach to debugging optimized codePublished by Association for Computing Machinery (ACM) ,1992
- Fast breakpoints: design and implementationPublished by Association for Computing Machinery (ACM) ,1990
- DOC: a practical approach to source-level debugging of globally optimized codePublished by Association for Computing Machinery (ACM) ,1988
- Symbolic Debugging of Optimized CodeACM Transactions on Programming Languages and Systems, 1982