Points-to Analysis y = &z; y z
Points-to Analysis y = &z; x = &y; x y z
Points-to Analysis y = &z; w x = &y; w = &x; x y z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; y z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; y z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; b = *w; b y z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; b = *w; b y z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; b = *w; b y c = **a; c z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; b = *w; b y c = **a; c z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; b = *w; b y c = **a; ***w = b; c z
Points-to Analysis y = &z; w x = &y; w = &x; a x a = w; b = *w; b y c = **a; ***w = b; c z
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {} pt(c) = {} pt(b) = {} pt(d) = {} pt(e) = {}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {} pt(a) = {b} pt(c) = {} pt(b) = {} pt(d) = {} pt(e) = {}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {} pt(a) = {b} pt(c) = {} pt(c) = {b} pt(b) = {} pt(d) = {} pt(e) = {}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {} pt(a) = {b} pt(a) = {b,d} pt(c) = {} pt(c) = {b} pt(b) = {} pt(d) = {} pt(e) = {}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {} pt(a) = {b} pt(a) = {b,d} pt(c) = {} pt(c) = {b} pt(b) = {} pt(d) = {} pt(e) = {} pt(e) = {b,d}
Andersen Example End of first iteration pt(a) = {b,d} pt(c) = {b} pt(b) = {} pt(d) = {} pt(e) = {b,d}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {b,d} pt(c) = {b} pt(b) = {} pt(d) = {} pt(e) = {b,d}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {b,d} pt(c) = {b} pt(c) = {b,d} pt(b) = {} pt(d) = {} pt(e) = {b,d}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {b,d} pt(c) = {b} pt(c) = {b,d} pt(b) = {} pt(d) = {} pt(e) = {b,d}
Andersen Example pt(a) ⊇ {b} a = &b; pt(c) ⊇ pt(a) c = a; a = &d; pt(a) ⊇ {d} e = a; pt(e) ⊇ pt(a) pt(a) = {b,d} pt(c) = {b} pt(c) = {b,d} pt(b) = {} pt(d) = {} pt(e) = {b,d}
Andersen Example End of second iteration (finished) pt(a) = {b,d} pt(c) = {b,d} pt(b) = {} pt(d) = {} pt(e) = {b,d}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {} pt(d) = {} pt(b) = {} pt(e) = {} pt(c) = {} pt(f) = {}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {} pt(a) = {b} pt(d) = {} pt(b) = {} pt(e) = {} pt(c) = {} pt(f) = {}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {} pt(a) = {b} pt(d) = {} pt(b) = {} pt(e) = {} pt(c) = {} pt(c) = {d} pt(f) = {}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {} pt(a) = {b} pt(d) = {} pt(b) = {} pt(e) = {} pt(e) = {a} pt(c) = {} pt(c) = {d} pt(f) = {}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {} pt(a) = {b} pt(d) = {} pt(b) = {} pt(e) = {} pt(e) = {a} pt(c) = {} pt(c) = {d} pt(f) = {b} pt(f) = {}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {} pt(a) = {b} pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {} pt(e) = {a} pt(c) = {} pt(c) = {d} pt(f) = {b} pt(f) = {}
Andersen Example (2) End of first iteration pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {a} pt(c) = {d} pt(f) = {b}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {a} pt(c) = {d} pt(f) = {b}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {a} pt(c) = {d} pt(f) = {b}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {a} pt(c) = {d} pt(f) = {b}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {a} pt(c) = {d} pt(f) = {b} pt(f) = {b,d}
Andersen Example (2) pt(a) ⊇ {b} a = &b; pt(c) ⊇ {d} c = &d; pt(e) ⊇ {a} e = &a; pt(f) ⊇ pt(a) f = a; pt(e) ⊇ {z} ⟹ pt(z) ⊇ pt(c) *e = c; pt(a) ⊇ pt(c) pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {a} pt(c) = {d} pt(f) = {b} pt(f) = {b,d}
Andersen Example (2) End of second iteration (finished) pt(a) = {b,d} pt(d) = {} pt(b) = {} pt(e) = {a} pt(c) = {d} pt(f) = {b,d}
Recommend
More recommend