[Soot-list] A little lost, whole program analysis!

Eric Bodden eric.bodden at mail.mcgill.ca
Fri May 19 00:54:43 EDT 2006


Hello.


> I have been following the localdefs / simplelivelocals 
> examples that showed me how to implement something like this 
> intRA-procedurally, but I reckon that I need to to do a 
> interprocedural analysis? 

Well this depends on what results you wanna get, really. First of all:
What do you mean by a variable? There are local variables and fields
(static and per object). If you only care about local variables, an
intraprocedural analysis certainly suffices - although you might
generally get into trouble because local variables are not persisted in
bytecode (it is stack-based). Soot reconstructs "dummy" local variables,
though. I am not sure how accurately those model the actual local
variables of a program. If you care about fields, you certainly need to
do a whole program analysis, which detects field writes. If you care
about non-static fields, you have to track individual objects, for which
you need a points-to analysis, which basically tells you for an
assignment "o.f = v", what objects o might point to. Without such an
analysis, you might not even have a clue about the exact type of o. 

Does that help? Guess we could give more specific help if you made up
your mind about the actual *exact* questions you want to answer.

Cheers,
Eric

--
Eric Bodden
Sable Research Group, McGill University
Montreal, Canada
http://bodden.de



More information about the Soot-list mailing list