We present a new approach to the debugging of optimized code through comparison checking. In this scheme, both the unoptimized and optimized versions of an application execute, and values they compute are compared in order to ensure that the behaviors of the two versions are the same. To determine what values should be compared and where the comparisons must take place, statement instances in the unoptimized code are mapped to statement instances in the optimized code. The mappings are derived automatically as optimizations are performed. Annotations for both versions of the code are developed from the mappings. Using the annotations, a driver checks, while the programs are executing, that both programs are producing the same values. If val...
Abstract. Software fault localization involves locating the exact cause of error for a “failing ” ex...
Despite the advancements in software testing, bugs still plague deployed software and result in cras...
Although compiler optimizations play a crucial role in the performance of modern computer systems, d...
Abstract. We present a novel approach to avoid the debugging of op-timized code through comparison c...
AbstractWe present a novel technique called comparison checking that helps optimizer writers debug o...
This paper describes our experience of testing and debugging an optimizer using comparison checking....
Correct optimization can change the behavior of an incorrect program; therefore at times it is neces...
This paper describes a tool for debugging programs which develop faults after they have been modifie...
This paper describes a tool for debugging programs which have been developed using evolutionary soft...
This paper describes a tool for debugging programs which have been developed using evolutionary soft...
This paper describes a tool for debugging programs which develop faults after they have been modifie...
Optimizing compilers and source-level debuggers have become essential for program development. Howev...
Relative Debugging is a paradigm that assists users to locate errors in programs that have been corr...
This paper discusses the use of "relative debugging" as a technique for locating errors in...
Detecting and isolating bugs that arise only at high processor counts is a challenging task. Over a ...
Abstract. Software fault localization involves locating the exact cause of error for a “failing ” ex...
Despite the advancements in software testing, bugs still plague deployed software and result in cras...
Although compiler optimizations play a crucial role in the performance of modern computer systems, d...
Abstract. We present a novel approach to avoid the debugging of op-timized code through comparison c...
AbstractWe present a novel technique called comparison checking that helps optimizer writers debug o...
This paper describes our experience of testing and debugging an optimizer using comparison checking....
Correct optimization can change the behavior of an incorrect program; therefore at times it is neces...
This paper describes a tool for debugging programs which develop faults after they have been modifie...
This paper describes a tool for debugging programs which have been developed using evolutionary soft...
This paper describes a tool for debugging programs which have been developed using evolutionary soft...
This paper describes a tool for debugging programs which develop faults after they have been modifie...
Optimizing compilers and source-level debuggers have become essential for program development. Howev...
Relative Debugging is a paradigm that assists users to locate errors in programs that have been corr...
This paper discusses the use of "relative debugging" as a technique for locating errors in...
Detecting and isolating bugs that arise only at high processor counts is a challenging task. Over a ...
Abstract. Software fault localization involves locating the exact cause of error for a “failing ” ex...
Despite the advancements in software testing, bugs still plague deployed software and result in cras...
Although compiler optimizations play a crucial role in the performance of modern computer systems, d...