[Soot-list] my StrongLocalMustAliasAnalysis gives unexpected results
Patrick Lam
plam at sable.mcgill.ca
Sun Oct 21 07:04:40 EDT 2012
As I said, variable redefinition only gives UNKNOWN if the redefinition
is not mandatory.
pat
On 10/21/2012 01:26 AM, Zhoulai wrote:
> Thanks Patrick. I see your point. Don't forget that your
> StrongMustAliasAnalysis, as described by your 2008's paper, is supposed
> to consider variable redefinition in loops!
>
> For the k-th iteration of the loop, a new object o_k is created and
> bound to x (which overwrites its earlier state) , so the "*states
> history* " related to x will be
> x->o_0, x -> o_2, x->o_k....
> which mean that ***Over time*** x is bound to {o_0,o_1,o_2 ...}. I
> believe this is the way your StrongMustAliasAnalysis in your paper
> reasons, right?
>
> My apologies for any misunderstandings.
> Zell.
>
> On Sun, Oct 21, 2012 at 6:33 AM, Patrick Lam <plam at sable.mcgill.ca
> <mailto:plam at sable.mcgill.ca>> wrote:
>
> On 10/21/2012 12:25 AM, Zhoulai wrote:
> > > ****************
> > > 1: static void test5(int i){
> > > 2: while (i>0){
> > > 3: A x = new A();
> > > 4: A y = x;
> > > 5: String s = "hello";
> > > }
> > > }
> > > **************
>
> > 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.
>
> x only points to one object at a time in this case. The only way that x
> might point to more than one object is if there are two different
> definitions that reach x (perhaps from different iterations of the
> loop), like if you had this program instead:
>
> A x = null;
> if (...) x = new A();
> A y = x;
>
> Then you should not get UNKNOWN. But in the program you wrote, there's
> only one object that x could possibly contain.
>
> pat
>
> _______________________________________________
> 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
>
>
More information about the Soot-list
mailing list