[Soot-list] Help with Soot/Indus - retain variable & method names

Venkatesh Prasad Ranganath vranganath at sbcglobal.net
Sat May 26 18:19:33 EDT 2007


On May 25, 2007, at 4:39 PM, Fayezin wrote:

> Hello,
>
> I am trying to use the Indus Java Slicer (which uses Soot) for  
> Program Slicing.
>
> Unfortunately, the resulting class file obtained from Indus  
> discards variable and method name information.
> Ironically, that is what I need - variable and method names from  
> the program slices.
>
> The makers of Indus say that variable and method names are  
> discarded by Soot which is used inside the Indus slicer.

I don't recall seeing this information.  If so, it needs  
qualification/clarification.

My understanding is that using the "local variable splitting"  
transformation can result in a perceived loss of variable names as  
new intermediate variables may be introduced.  I guess this is the  
case in Soot.  As for method names, to the best of my knowledge, Soot  
retains method names as recorded in the class files.  As for Indus,  
it does not introduce new identifiers; it relies entirely on Soot to  
decompile class files and create their Jimple representation.

As Eric mentioned, you should be able to change the Soot loading  
options and control variable (re)naming.  Please refer to  
edu.ksu.cis.indus.commons.soot.Utils.getSootOptions() method in Indus  
source base to implement this change.

Hope that helps,

  - Venkatesh Prasad Ranganath




More information about the Soot-list mailing list