OPTVIEW: A New Approach for Examining Optimized Code (1998) [15 citations — 1 self]
Abstract:
The task of mapping between source programs and machine code, once the code has been optimized and transformed by a compiler is often difficult. Yet there are many instances, such as debugging optimized code or attributing performance analysis data to source lines, when it is useful or necessary to understand at the source level what is occurring in the binary. The standard approach has been for tools to attempt to map directly from the optimized binary to the original source. Such mappings are often fragile, and sometimes inaccurate or misleading. We suggest an alternative approach. Rather than mapping directly between the original source and the binary, we create a modified version of the source program, still recognizable, but updated to reflect some of the effects of optimizations, thus facilitating mapping from the binary. We have implemented a tool, Optview, to demonstrate and test these ideas. 1
Citations
| 80 | Binary translation – Sites, Chernoff, et al. - 1993 |
| 58 | Decompilation of binary programs – Cifuentes, Gough - 1995 |
| 57 | A new model of program dependences for reverse engineering – Jackson, Rollins - 1994 |
| 50 | DOC: A practical approach to source-level debugging of globally optimized code – Coutant, Meloy, et al. - 1988 |
| 43 | A new approach to debugging optimized code – Brooks, Hansen, et al. - 1992 |
| 40 | Origin Tracking – Deursen, Klint, et al. - 1993 |
| 27 | Debugging Optimized Code Without Being Misled – Copperman - 1994 |
| 13 | Decompilation: The Enumeration of Types and Grammars – Breuer, Bowen - 1994 |
| 11 | Debugging of Globally Optimized Programs Using Data Flow Analysis – Wismueller - 1994 |
| 9 | Debugging VLIW Code After Instruction Scheduling – Cool - 1992 |
| 4 | High Level Debugging of Optimized Code – Zellweger - 1984 |
| 2 | Source Level Debugging of Globally Optimized Code – Adl-Tabatabai - 1996 |

