[Soot-list] escape analysis

Sangmin Park sangminp at cc.gatech.edu
Fri Mar 13 23:00:24 EDT 2009


Thank you for the information, Richard. I have one quick question. Where
is SynchObliviousMhpAnalysis class? In the soot 2.3 source,
only UnsynchronizedMhpAnalysis is the subclass of MhpTester. Can I simply
use UnsynchronizedMhpAnalysis? If there's big difference between the two,
could you send me SynchObliviousMhpAnalysis class?
Thanks,
Sangmin

On Tue, Mar 10, 2009 at 1:17 PM, Richard L. Halpert <
richard.halpert at mail.mcgill.ca> wrote:

> In soot.jimple.toolkits.thread there is a class called
> ThreadLocalObjectsAnalysis.  This analysis takes an MhpTester as input
> (which provides a list of thread classes), and uses the infoflow package to
> partition an abstract representation of the heap into "thread-local" and
> "thread-shared" segments for each thread class.  It provides APIs to test if
> a local variable or object reference is thread-local.
>
> The analysis is described in detail in my thesis:
> http://www.sable.mcgill.ca/publications/thesis/#richardsMastersThesis.
> The analysis makes some unsafe assumptions about virtual method calls, so
> technically, it's unsound.  For some programs, this analysis may be very
> costly.
>
> Example:
>
> ThreadLocalObjectsAnalysis tlo = new ThreadLocalObjectsAnalysis(new
> SynchObliviousMhpAnalysis());
> tlo.precompute(); // optionally, do calculations up front instead of
> on-the-fly
> tlo.isObjectThreadLocal(myValue, myMethod); // myValue should be a Local or
> FieldRef from the jimple code of myMethod
>
> You will need to use Spark for points-to analysis.
>
> -Richard
>
>
> On Mon, Mar 9, 2009 at 2:17 PM, Sangmin Park <sangminp at cc.gatech.edu>wrote:
>
>> Thanks, Richard.
>> Would you briefly explain what the package
>> does? SmartMethodLocalObjectsAnalysis seems to be the entry class, but I do
>> not know what exactly it does.
>>
>> By the way, I want to use thread escape analysis, not method escape
>> analysis, but I guess it would be helpful to know method escape analysis. I
>> appreciate your help again.
>>
>> Sangmin
>>
>>
>> On Wed, Mar 4, 2009 at 4:32 PM, Richard L. Halpert <
>> richard.halpert at mail.mcgill.ca> wrote:
>>
>>> the soot.jimple.toolkits.infoflow package can be used as an escape
>>> analysis, but it has not yet been shoe-horned into the interface you
>>> mentioned.  How do you need to use it?
>>>
>>> -Richard
>>>
>>> On Tue, Mar 3, 2009 at 4:14 PM, Sangmin Park <sangminp at cc.gatech.edu>wrote:
>>>
>>>>  Hi All,
>>>> Is there an implementation for escape analysis? I found the interface
>>>> (soot.EscapeAnalysis), but couldn't find any implementation in soot library.
>>>>
>>>> Thanks,
>>>> Sangmin
>>>>
>>>> _______________________________________________
>>>> 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/20090313/5a3549dc/attachment.html 


More information about the Soot-list mailing list