[Soot-list] Retaining debug information through Soot?
Nathan Deisinger
ndeisinger at wisc.edu
Sun Nov 10 18:02:31 EST 2013
Hi folks,
I'm an undergraduate at the University of Wisconsin-Madison; the group
I've been working with has recently developed a method for performing
lightweight path profiling and call coverage instrumentation to aid in
debugging (see Ohmann 2013
<http://pages.cs.wisc.edu/%7Eliblit/ase-2013/ase-2013.pdf>). This
instrumentation is applied through a transformation in the LLVM compiler
framework which adds both instrumentation to perform the actual
profiling and variables which store the results. These variables can
then be observed in a crash dump to reconstruct useful information about
the program's execution.
As part of my work with the group, I'm investigating extending this
concept to Java programs. In my time experimenting with Soot it seems
like an excellent fit for creating the necessary instrumentation;
however, it seems like Soot discards all debug information (eg. local
variable tables) as it runs. As the intended use of this program is to
recover information from a crash dump (in the Java case, an uncaught
exception or other error), losing the debug symbols makes it extremely
difficult to extract the information we collect.
Is there some known way for Soot to maintain debug information
throughout its transformations? More importantly, debug symbols for
variables added through Soot would also have to be included in the final
class file.
Thanks very much in advance.
-Nate
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20131110/bef68845/attachment.html
More information about the Soot-list
mailing list