[Soot-list] Question about Shimple

Zeinab Lashkaripour lashkaripour at yahoo.com
Thu Feb 21 07:55:25 EST 2013


Hi Marc-Andre,
Thanks for your nice response.

You asked some good questions that I hope we get the answers to them.

Regards,
Zeinab



________________________________
 From: Marc-Andre Laverdiere-Papineau <marc-andre.laverdiere-papineau at polymtl.ca>
To: soot-list at sable.mcgill.ca 
Sent: Thursday, February 21, 2013 4:07 PM
Subject: Re: [Soot-list] Question about Shimple
 
Hello,

I am not conversant in the details of Shimple, but the big picture is 
that Shimple is a SSA representation, meaning that each variable has 
only one assignment. That obviously means that the flow of data is much 
easier to track.

There are old research results that indicate that SSA representations 
give you a much higher level of precision (almost at the level of 
context sensitivity) without a significant increase in the cost in 
processing. I don't remember the reference, but it is in Lhotak's 
masters thesis.

Obviously, you hit some of that cost up-front for transforming into SSA 
form :)

I have a question for the McGillites - how well supported is shimple 
with the rest of soot? I see that recent improvements have all been in 
the Jimple form (geometric pta, Heros). Are the call graph algorithms 
and other transformations working well with Shimple? Is it that the 
benefits were not as big as expected?

I noticed that Wala and a few research papers on static analysis I read 
are using SSA (and even e-SSA) representations.

Is there good technical reasons to guide us in choosing Jimple vs 
Shimple? I wouldn't mind a nice little decision tree ;)


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

On 13-02-21 03:46 AM, Zeinab Lashkaripour wrote:
> Hi dear Reader,
>
> I have a question that I would be grateful if you answered:
> I'm working with Jimple but, the question below came to my mind and I
> didn't find the answer to it so I decided to get help from the list.
> For shimple in order to get the UD or DU chains there is no need to
> implement the DFA analysis (I mean the flowthrough, merge, copy, ...)
> because we can obtain this information by ShimpleLocalDefs/Uses, Is that
> right?
>
> Maybe one of the reasons that we are said Shimple makes analysis (flow
> control sensitive) simple is this.
>
> Regards,
> Zeinab
>
>
> _______________________________________________
> Soot-list mailing list
> 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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20130221/b33a14c1/attachment.html 


More information about the Soot-list mailing list