[Soot-list] About reaching definitions analysis in soot

Steven Arzt Steven.Arzt at cased.de
Fri Mar 28 04:48:42 EDT 2014


Hi Steven,

 

if the package soot.jimple.toolkits.ide is missing, you are probably using
an outdated version of Soot. Please make sure to use the “develop” branch on
Github or one of our nightly builds available at
http://vandyk.st.informatik.tu-darmstadt.de/abc/. Do not use the old version
2.5.

 

Heros is a generic IDE/IFDS framework based on a paper by Reps and Horwitz.
It is platform-independent (i.e. could also be used for analyzing C/C++
code), but Soot has some classes based on this framework which provide a
specialization for Java program analysis.

 

The main difference to the SimpleLocalDefs proposed by modhi is that the
Heros-based approach is interprocedural while SimpleLocalDefs is
intraprocedural. It really depends on what you need.

 

Best regards,

  Steven

 

Von: Steven Lee [mailto:Elderry at outlook.com] 
Gesendet: Freitag, 28. März 2014 07:58
An: 'Steven Arzt'
Betreff: RE: [Soot-list] About reaching definitions analysis in soot

 

Hello Steven:

 

I checked soot API but didn’t find soot.jimple.toolkits.ide.*, then I
checked your Heros on Github, do I need it to do what you said? And now I’m
a little confused about the relation of these two projects, I’m still
reading


 

Thanks anyway.

 

From: Steven Arzt [mailto:Steven.Arzt at cased.de] 
Sent: Thursday, March 27, 2014 17:45
To: 'Steven Lee'; 'Soot Group'
Subject: AW: [Soot-list] About reaching definitions analysis in soot

 

Hi Steven,

 

Soot implements an interprocedural reaching definitions analysis based on
the Heros IFDS/IDE framework. Actually, this is one of the example problem
implementations we ship with Soot to show how Heros is used with Soot. You
can find the implementation in class
”soot.jimple.toolkits.ide.exampleproblems. IFDSReachingDefinitions”. What
you need to do to use it, is fairly simple: Create an instance of the
IFDSSolver class, give it an instance of the problem class above, call
“solve” and fetch the results using “resultsAt”.

 

Best regards,

  Steven

 

PS: It’s funny to  reply to someone who has the same first name ^^

 

 

M.Sc. M.Sc. Steven Arzt

Secure Software Engineering Group (SSE)

European Center for Security and Privacy by Design (EC SPRIDE) 

Mornewegstraße 32

D-64293 Darmstadt

Phone: +49 61 51 16-75426

Fax: +49 61 51 16-72118

eMail:  <mailto:steven.arzt at ec-spride.de> steven.arzt at ec-spride.de

Web:  <http://sse.ec-spride.de/> http://sse.ec-spride.de

 

 

 

Von:  <mailto:soot-list-bounces at sable.mcgill.ca>
soot-list-bounces at sable.mcgill.ca [
<mailto:soot-list-bounces at sable.mcgill.ca>
mailto:soot-list-bounces at sable.mcgill.ca] Im Auftrag von Steven Lee
Gesendet: Donnerstag, 27. März 2014 08:00
An: Soot Group
Betreff: [Soot-list] About reaching definitions analysis in soot

 

Hello everyone, would anyone can help me with some questions?

1.      How to do reaching definitions analysis with soot? Does soot already
implement it, or I need to implement it myself with the data-flow framework?


2.      I want to do this analysis for some java source code and then mark
each variables potential definitions, but I find that soot does its main
analysis on the corresponding jimple file. So my question is: if I finished
the analysis on a jimple file, how to I transform these results to my java
source file?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20140328/d2821543/attachment-0001.html 


More information about the Soot-list mailing list