[Soot-list] my StrongLocalMustAliasAnalysis gives unexpected results

Zhoulai zell08v at orange.fr
Sun Oct 21 00:25:18 EDT 2012


Hello, Patrick

Thanks for your reply. Maybe I wrongly understand something. The context
here is *StrongLocalMustAliasAnalysis" .

By your specification in your paper, the strong representative only
must-alias itself at the same program location if it is not guaranteed that
this representative represents a single run-time object.

Here variable 'x'' is associated with  more than 1 run-time objects.  It is
therefore expected to be bound to UNKNOWN.

Zell.


On Sun, Oct 21, 2012 at 4:23 AM, Patrick Lam <p.lam at ece.uwaterloo.ca> wrote:

> On 10/20/2012 01:10 PM, Zhoulai wrote:
> > Hi, Eric,
> >
> > The following test-case is much more realistic
> > ****************
> > 1:     static void test5(int i){
> > 2:         while (i>0){
> > 3:             A x = new A();
> > 4:             A y = x;
> > 5:             String s = "hello";
> >          }
> >      }
> > **************
> >
> > Using the original strong must-alias analysis,  the results before the
> > line "string s = "hello"" show that 'x', 'y' are both bound to 1, which
> > should be unsound. (see the highlighted line of the new attached
> > screenshot ).
> >
> > What do you think?
>
> I don't get it. Why is that unsound? We know exactly what x points to.
> It points to the object you just allocated at line 3 (on each iteration
> of the loop); other objects no longer exist. Then y points to the same
> object as x. I don't see a problem at line 5.
>
> pat
> _______________________________________________
> 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/20121021/358d7851/attachment.html 


More information about the Soot-list mailing list