[Soot-list] Usage of context-sensitive PTAs
Quentin Sabah
quentin.sabah at inria.fr
Wed Feb 6 04:04:09 EST 2013
Hi Xiao, thanks for your feedbacks,
> Have you tried directly calling pta.reachingObjects(r5) with cs-demand
> and geom-pta? These two analyses will return the merged context
> sensitive results (but the analysis is still context sensitive, hereby
> the result is more precise). Maybe that can serve your purpose.
>
Ok, it makes sense.
So basically calling reachingObjects with a context is not supported in
spark currently ?
I am building an analysis that uses the pta, and just looking for the
most precise I can get from Soot.
Using the ptas without context, I experience two strange behaviours:
- with cs-demand, reachingObjects(Local) is fine but
reachingObjects(PTS, SootField) is an UnsupportedOperation.
- with geom-pta, reachingObjects(Local) looks also fine but
reachinObjectsArrayElements(PTS) always returns an empty pts where the
vanilla Spark returns the proper set of AllocNode corresponding to
objects stored in the array.
> Another issue is that, have you updated your soot code to the newest
> version? Many changes have made since soot 2.5 for geom-pta.
I'm working above the up-to-date develop branch of the git repository.
> And, if you wish, you can send me your test code and I can have a look
> for you with geom-pta.
I have that piece of code gathering all the transitively-reachable
runtime objects from a specified Local using a specified
PointsToAnalysis and optionaly a Context (although I did not find out
how to use that feature yet):
http://pastebin.com/2sAvytUS
Regards.
--
Quentin Sabah, CIFRE Ph.D. student
Grenoble University
INRIA-SARDES | STMicroelectronics/AST
Montbonnot, France | Grenoble, France
mailto:quentin.sabah at inria.fr | mailto:quentin.sabah at st.com
phone: +33 476 61 54 57 | phone: +33 476 58 44 14
More information about the Soot-list
mailing list