License: Creative Commons Attribution 4.0 International license (CC BY 4.0)
When quoting this document, please refer to the following
DOI: 10.4230/DagSemProc.05161.4
URN: urn:nbn:de:0030-drops-4244
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2006/424/
Go to the corresponding Portal |
Kraft, Nicholas A. ;
Malloy, Brian A. ;
Power, James F.
g4re: Harnessing GCC to Reverse Engineer C++ Applications
Abstract
In this paper, we describe g4re, our tool chain that
exploits GENERIC, an intermediate format incorporated
into the gcc C++ compiler, to facilitate analysis of real
C++ applications. The gcc GENERIC representation is available
through a file generated for each translation unit (TU), and
g4re reads each TU file and constructs a corresponding
Abstract Semantic Graph (ASG). Since TU files can be
prohibitively large, ranging from 11 megabytes for a
"hello world" program, to 18 gigabytes for a version of
Mozilla Thunderbird, we describe our approach for reducing
the size of the generated ASG.
BibTeX - Entry
@InProceedings{kraft_et_al:DagSemProc.05161.4,
author = {Kraft, Nicholas A. and Malloy, Brian A. and Power, James F.},
title = {{g4re: Harnessing GCC to Reverse Engineer C++ Applications}},
booktitle = {Transformation Techniques in Software Engineering},
pages = {1--11},
series = {Dagstuhl Seminar Proceedings (DagSemProc)},
ISSN = {1862-4405},
year = {2006},
volume = {5161},
editor = {James R. Cordy and Ralf L\"{a}mmel and Andreas Winter},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/opus/volltexte/2006/424},
URN = {urn:nbn:de:0030-drops-4244},
doi = {10.4230/DagSemProc.05161.4},
annote = {Keywords: Reverse engineering, schema, GXL}
}
Keywords: |
|
Reverse engineering, schema, GXL |
Collection: |
|
05161 - Transformation Techniques in Software Engineering |
Issue Date: |
|
2006 |
Date of publication: |
|
07.03.2006 |