[Soot-list] Liveness Analysis

Marc-André Laverdière marc-andre.laverdiere-papineau at polymtl.ca
Tue Sep 24 10:21:58 EDT 2013


Hello,

I don't know enough to tell you precisely, but my impression is that you
will need to write your own Transformer that combines the information of
the liveness when doing PTA.

But I'm surprised that Spark doesn't do it already - did you check?

Marc-André Laverdière-Papineau
Doctorant - PhD Candidate

On 09/14/2013 01:29 AM, Alefiya Lightwala wrote:
> Hello
> 
> Thanks for your reply. I have tried using
> soot.jimple.toolkits.annotation.liveness and is working fine.
> Now I am doing liveness based pointsto analysis using the vasco API.
> Firstly I am running liveness analysis and after that I want to use the
> results of this analysis in the pointsto analysis. And I want to do this
> simultaneously until fixed point is reached.
> 
> 
> What I am currently doing is :
> 
> LivenessAnalysis la=new LivenessAnalysis();
> la.doAnalysis();
> 
> //Here how to perform points to analysis using previously generated
> access graphs?
> PointsToAnalysis pta=new PointsToAnalysis();
> pta.doAnalysis();
> 
> ThankYou
> 
> Regards
> Alefiya Lightwala
> 
> 
> On Fri, Sep 13, 2013 at 7:50 PM, Marc-André Laverdière
> <marc-andre.laverdiere-papineau at polymtl.ca
> <mailto:marc-andre.laverdiere-papineau at polymtl.ca>> wrote:
> 
>     Hello Alefiya,
> 
>     Please keep the discussions in the list - it avoids having emails
>     getting 'lost' for a long time :)
> 
>     Have a look at the soot.jimple.toolkits.annotation.liveness and
>     arraycheck packages. You also have a bit on how to use it from the
>     command line in tutorial/guide/soot.tex.
> 
>     Of course, please use the 'develop' branch from github. A release is
>     coming 'soon'.
> 
>     Marc-André Laverdière-Papineau
>     Doctorant - PhD Candidate
> 
>     On 08/23/2013 01:00 PM, Alefiya Lightwala wrote:
>     > I am trying to implementing liveness based heap pointer analysis
>     in soot.
>     >
>     > Can you please tell me where exactly(in which package) is liveness
>     > analysis in soot present.
>     >
>     >
>     >
>     >
>     > On Fri, Aug 23, 2013 at 10:21 PM, Marc-Andre Laverdiere-Papineau
>     > <marc-andre.laverdiere-papineau at polymtl.ca
>     <mailto:marc-andre.laverdiere-papineau at polymtl.ca>
>     > <mailto:marc-andre.laverdiere-papineau at polymtl.ca
>     <mailto:marc-andre.laverdiere-papineau at polymtl.ca>>> wrote:
>     >
>     >     Hello Alefiya,
>     >
>     >     Soot uses either Jimple or Shimple as its internal representation.
>     >     Jimple is the default.
>     >
>     >     There is nothing you can do about it, and I suggest you spend
>     a bit of
>     >     time getting familiar with Jimple. Every static analysis tool
>     will have
>     >     a different internal representation, Soot is no exception.
>     >
>     >     Also, I think there is already a liveness analysis in Soot. I
>     would
>     >     check the transformers in the jb pack.
>     >
>     >     My question is: what are you really trying to do? What is your
>     actual
>     >     objective for which you wanted a liveness analysis?
>     >
>     >     --
>     >     Marc-André Laverdière-Papineau
>     >     Doctorant - PhD Candidate
>     >
>     >     On 2013-08-22 04:43, Alefiya Lightwala wrote:
>     >     > Hello everyone
>     >     >
>     >     > I am new to soot. I started with developing liveness analysis in
>     >     soot. I
>     >     > want to perform liveness analysis on .java file.
>     >     >
>     >     > So checked I for condition i=a.f(); and made "a" live.
>     >     >
>     >     > But soot converts input .java file into .jimple file and
>     then it is
>     >     > performing liveness analysis.
>     >     > In .jimple file no such line exists i=a.f() It is replaced by:
>     >     >
>     >     >          virtualinvoke a.<LiveTest: int f()>();
>     >     >
>     >     >
>     >     > I have developed complete code with respect to .java file.
>     >     >
>     >     > What can I do with this?
>     >     >
>     >     >
>     >     > _______________________________________________
>     >     > Soot-list mailing list
>     >     > Soot-list at sable.mcgill.ca <mailto:Soot-list at sable.mcgill.ca>
>     <mailto:Soot-list at sable.mcgill.ca <mailto:Soot-list at sable.mcgill.ca>>
>     >     > http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>     >     >
>     >
>     >
>     >
>     >     _______________________________________________
>     >     Soot-list mailing list
>     >     Soot-list at sable.mcgill.ca <mailto:Soot-list at sable.mcgill.ca>
>     <mailto:Soot-list at sable.mcgill.ca <mailto:Soot-list at sable.mcgill.ca>>
>     >     http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>     >
>     >
>     _______________________________________________
>     Soot-list mailing list
>     Soot-list at sable.mcgill.ca <mailto:Soot-list at sable.mcgill.ca>
>     http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
> 
> 
> 
> 
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
> 


More information about the Soot-list mailing list