Skip to content
Snippets Groups Projects
Commit 8bb0e5e3 authored by Tristan Le Gall's avatar Tristan Le Gall
Browse files

[alias] modified print function so that leafs are not marked as aliases

parent ca7c8a8a
No related branches found
No related tags found
No related merge requests found
Showing
with 26 additions and 140 deletions
...@@ -106,32 +106,32 @@ let print_debug fmt (x:t) = ...@@ -106,32 +106,32 @@ let print_debug fmt (x:t) =
let print_aliases fmt (x:t) = let print_aliases fmt (x:t) =
let iter_vmap v set_lv = let iter_vmap v set_lv =
if G.mem_vertex x.graph v then if G.mem_vertex x.graph v then
let set_lv = match G.succ x.graph v with
match G.succ x.graph v with [] -> ()
[] -> LSet.empty | [_] ->
| [_] -> set_lv begin
| _ -> failwith "this should not happen" let set_pred = ref LSet.empty in
in G.iter_pred
let set_pred = ref LSet.empty in (fun v -> set_pred := LSet.union !set_pred (VMap.find v x.vmap))
G.iter_pred x.graph
(fun v -> set_pred := LSet.union !set_pred (VMap.find v x.vmap)) v;
x.graph if LSet.cardinal set_lv + LSet.cardinal !set_pred >= 2
v; then
if LSet.cardinal set_lv + LSet.cardinal !set_pred >= 2 Format.fprintf fmt "{%a%a} are aliased@."
then (fun fmt s ->
Format.fprintf fmt "{%a%a} are aliased@." LSet.iter
(fun fmt s -> (fun lv -> Format.fprintf fmt "%a; " Lval.pretty lv)
LSet.iter s
(fun lv -> Format.fprintf fmt "%a; " Lval.pretty lv) )
s set_lv
) (fun fmt s ->
set_lv LSet.iter
(fun fmt s -> (fun lv -> Format.fprintf fmt "*%a; " Lval.pretty lv)
LSet.iter s
(fun lv -> Format.fprintf fmt "*%a; " Lval.pretty lv) )
s !set_pred
) end
!set_pred | _ -> failwith "this should not happen"
in in
Format.fprintf fmt "@[<hov 2><list of may-alias>@."; Format.fprintf fmt "@[<hov 2><list of may-alias>@.";
VMap.iter iter_vmap x.vmap; VMap.iter iter_vmap x.vmap;
......
...@@ -11,7 +11,6 @@ ...@@ -11,7 +11,6 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; c; d; } are aliased {a; b; c; d; } are aliased
{*a; *b; *c; *d; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -37,25 +36,21 @@ Before statement a = b; : ...@@ -37,25 +36,21 @@ Before statement a = b; :
Before statement b = c; : Before statement b = c; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement a = d; : Before statement a = d; :
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; c; d; } are aliased {a; b; c; d; } are aliased
{*a; *b; *c; *d; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; c; d; } are aliased {a; b; c; d; } are aliased
{*a; *b; *c; *d; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
[alias] ANALYSING __retres = 0; [alias] ANALYSING __retres = 0;
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{*b; *d; } are aliased
{a; c; } are aliased {a; c; } are aliased
{b; d; *a; *c; } are aliased {b; d; *a; *c; } are aliased
<end of list> <end of list>
...@@ -48,14 +47,12 @@ Before statement a = c; : ...@@ -48,14 +47,12 @@ Before statement a = c; :
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{*b; *d; } are aliased
{a; c; } are aliased {a; c; } are aliased
{b; d; *a; *c; } are aliased {b; d; *a; *c; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{*b; *d; } are aliased
{a; c; } are aliased {a; c; } are aliased
{b; d; *a; *c; } are aliased {b; d; *a; *c; } are aliased
<end of list> <end of list>
......
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; c; } are aliased {a; c; } are aliased
{*a; *c; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -35,13 +34,11 @@ Before statement c = & b; : ...@@ -35,13 +34,11 @@ Before statement c = & b; :
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; c; } are aliased {a; c; } are aliased
{*a; *c; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; c; } are aliased {a; c; } are aliased
{*a; *c; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
[alias] ANALYSING __retres = 0; [alias] ANALYSING __retres = 0;
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{*b; *d; } are aliased
{b; d; *a; *c; } are aliased {b; d; *a; *c; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
...@@ -47,13 +46,11 @@ Before statement b = d; : ...@@ -47,13 +46,11 @@ Before statement b = d; :
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{*b; *d; } are aliased
{b; d; *a; *c; } are aliased {b; d; *a; *c; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{*b; *d; } are aliased
{b; d; *a; *c; } are aliased {b; d; *a; *c; } are aliased
<end of list> <end of list>
......
...@@ -10,9 +10,7 @@ ...@@ -10,9 +10,7 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; c; } are aliased {a; c; } are aliased
{*a; *c; } are aliased
{b; d; } are aliased {b; d; } are aliased
{*b; *d; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -38,23 +36,18 @@ Before statement a = (int *)c; : ...@@ -38,23 +36,18 @@ Before statement a = (int *)c; :
Before statement d = (float *)b; : Before statement d = (float *)b; :
<list of may-alias> <list of may-alias>
{a; c; } are aliased {a; c; } are aliased
{*a; *c; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; c; } are aliased {a; c; } are aliased
{*a; *c; } are aliased
{b; d; } are aliased {b; d; } are aliased
{*b; *d; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; c; } are aliased {a; c; } are aliased
{*a; *c; } are aliased
{b; d; } are aliased {b; d; } are aliased
{*b; *d; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -40,19 +39,16 @@ Before statement a = c; : ...@@ -40,19 +39,16 @@ Before statement a = c; :
Before statement *a = 4; : Before statement *a = 4; :
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -14,9 +14,7 @@ ...@@ -14,9 +14,7 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
{c; d; } are aliased {c; d; } are aliased
{*c; *d; } are aliased
<end of list> <end of list>
[alias] ANALYSING int *z = (int *)0; [alias] ANALYSING int *z = (int *)0;
[alias] Functions done [alias] Functions done
...@@ -27,9 +25,7 @@ Before statement int *z = (int *)0; : ...@@ -27,9 +25,7 @@ Before statement int *z = (int *)0; :
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
{c; d; } are aliased {c; d; } are aliased
{*c; *d; } are aliased
<end of list> <end of list>
Before statement int *z = (int *)0; : Before statement int *z = (int *)0; :
...@@ -43,13 +39,11 @@ Before statement z = x; : ...@@ -43,13 +39,11 @@ Before statement z = x; :
Before statement x = y; : Before statement x = y; :
<list of may-alias> <list of may-alias>
{x; z; } are aliased {x; z; } are aliased
{*x; *z; } are aliased
<end of list> <end of list>
Before statement y = z; : Before statement y = z; :
<list of may-alias> <list of may-alias>
{x; y; z; } are aliased {x; y; z; } are aliased
{*x; *y; *z; } are aliased
<end of list> <end of list>
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -75,21 +69,17 @@ Before statement swap(a,b); : ...@@ -75,21 +69,17 @@ Before statement swap(a,b); :
Before statement swap(c,d); : Before statement swap(c,d); :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
{c; d; } are aliased {c; d; } are aliased
{*c; *d; } are aliased
<end of list> <end of list>
Before statement return; : Before statement return; :
<list of may-alias> <list of may-alias>
{x; y; z; } are aliased {x; y; z; } are aliased
{*x; *y; *z; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -14,15 +14,12 @@ ...@@ -14,15 +14,12 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
{c; d; } are aliased {c; d; } are aliased
{*c; *d; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{x; y; tmp; } are aliased {x; y; tmp; } are aliased
{*x; *y; *tmp; } are aliased
<end of list> <end of list>
Before statement int *tmp = x; : Before statement int *tmp = x; :
...@@ -36,15 +33,12 @@ Before statement while (1) { ...@@ -36,15 +33,12 @@ Before statement while (1) {
} : } :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
{c; d; } are aliased {c; d; } are aliased
{*c; *d; } are aliased
<end of list> <end of list>
Before statement x = y; Before statement x = y;
...@@ -52,31 +46,26 @@ Before statement x = y; ...@@ -52,31 +46,26 @@ Before statement x = y;
break; : break; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement x = y; : Before statement x = y; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement y = tmp; : Before statement y = tmp; :
<list of may-alias> <list of may-alias>
{x; y; tmp; } are aliased {x; y; tmp; } are aliased
{*x; *y; *tmp; } are aliased
<end of list> <end of list>
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{x; y; tmp; } are aliased {x; y; tmp; } are aliased
{*x; *y; *tmp; } are aliased
<end of list> <end of list>
Before statement __retres = (void *)0; : Before statement __retres = (void *)0; :
<list of may-alias> <list of may-alias>
{x; y; tmp; } are aliased {x; y; tmp; } are aliased
{*x; *y; *tmp; } are aliased
<end of list> <end of list>
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -102,15 +91,12 @@ Before statement f1(a,b); : ...@@ -102,15 +91,12 @@ Before statement f1(a,b); :
Before statement f1(c,d); : Before statement f1(c,d); :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
{c; d; } are aliased {c; d; } are aliased
{*c; *d; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement return x; : Before statement return x; :
...@@ -39,13 +38,11 @@ Before statement b = & c; : ...@@ -39,13 +38,11 @@ Before statement b = & c; :
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -11,13 +11,11 @@ ...@@ -11,13 +11,11 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement goto return_label; : Before statement goto return_label; :
<list of may-alias> <list of may-alias>
{x; __retres; } are aliased {x; __retres; } are aliased
{*x; *__retres; } are aliased
<end of list> <end of list>
Before statement __retres = y; Before statement __retres = y;
...@@ -32,13 +30,11 @@ Before statement int c = 0; : ...@@ -32,13 +30,11 @@ Before statement int c = 0; :
Before statement goto return_label; : Before statement goto return_label; :
<list of may-alias> <list of may-alias>
{y; __retres; } are aliased {y; __retres; } are aliased
{*y; *__retres; } are aliased
<end of list> <end of list>
Before statement return_label: return __retres; : Before statement return_label: return __retres; :
<list of may-alias> <list of may-alias>
{x; y; __retres; } are aliased {x; y; __retres; } are aliased
{*x; *y; *__retres; } are aliased
<end of list> <end of list>
Before statement if (c) { Before statement if (c) {
...@@ -55,7 +51,6 @@ Before statement if (c) { ...@@ -55,7 +51,6 @@ Before statement if (c) {
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
Before statement __retres = x; : Before statement __retres = x; :
...@@ -85,7 +80,6 @@ Before statement c = choice(a,b); : ...@@ -85,7 +80,6 @@ Before statement c = choice(a,b); :
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; c; } are aliased {a; b; c; } are aliased
{*a; *b; *c; } are aliased
<end of list> <end of list>
Before statement __retres = x; Before statement __retres = x;
......
...@@ -11,7 +11,6 @@ ...@@ -11,7 +11,6 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; d; } are aliased {a; b; d; } are aliased
{*a; *b; *d; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -50,7 +49,6 @@ Before statement case 1: a = d; : ...@@ -50,7 +49,6 @@ Before statement case 1: a = d; :
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{a; d; } are aliased {a; d; } are aliased
{*a; *d; } are aliased
<end of list> <end of list>
Before statement case 2: b = d; : Before statement case 2: b = d; :
...@@ -60,19 +58,16 @@ Before statement case 2: b = d; : ...@@ -60,19 +58,16 @@ Before statement case 2: b = d; :
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{b; d; } are aliased {b; d; } are aliased
{*b; *d; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; d; } are aliased {a; b; d; } are aliased
{*a; *b; *d; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; d; } are aliased {a; b; d; } are aliased
{*a; *b; *d; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -12,7 +12,6 @@ ...@@ -12,7 +12,6 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; c; d; } are aliased {a; b; c; d; } are aliased
{*a; *b; *c; *d; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -52,7 +51,6 @@ Before statement case 1: a = d; : ...@@ -52,7 +51,6 @@ Before statement case 1: a = d; :
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{a; d; } are aliased {a; d; } are aliased
{*a; *d; } are aliased
<end of list> <end of list>
Before statement case 2: b = d; : Before statement case 2: b = d; :
...@@ -62,7 +60,6 @@ Before statement case 2: b = d; : ...@@ -62,7 +60,6 @@ Before statement case 2: b = d; :
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{b; d; } are aliased {b; d; } are aliased
{*b; *d; } are aliased
<end of list> <end of list>
Before statement default: c = d; : Before statement default: c = d; :
...@@ -72,13 +69,11 @@ Before statement default: c = d; : ...@@ -72,13 +69,11 @@ Before statement default: c = d; :
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; c; d; } are aliased {a; b; c; d; } are aliased
{*a; *b; *c; *d; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; c; d; } are aliased {a; b; c; d; } are aliased
{*a; *b; *c; *d; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -8,13 +8,11 @@ ...@@ -8,13 +8,11 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -48,7 +46,6 @@ Before statement a = b; : ...@@ -48,7 +46,6 @@ Before statement a = b; :
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement while (1) { Before statement while (1) {
...@@ -58,7 +55,6 @@ Before statement while (1) { ...@@ -58,7 +55,6 @@ Before statement while (1) {
} : } :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement break; Before statement break;
...@@ -66,19 +62,16 @@ Before statement break; ...@@ -66,19 +62,16 @@ Before statement break;
break; : break; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -12,13 +12,11 @@ ...@@ -12,13 +12,11 @@
[alias] May-aliases at the end of function main: [alias] May-aliases at the end of function main:
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
[alias] Functions done [alias] Functions done
Before statement __retres = 0; : Before statement __retres = 0; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement int *a = (int *)0; : Before statement int *a = (int *)0; :
...@@ -28,7 +26,6 @@ Before statement int *a = (int *)0; : ...@@ -28,7 +26,6 @@ Before statement int *a = (int *)0; :
Before statement return __retres; : Before statement return __retres; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement int *b = (int *)0; : Before statement int *b = (int *)0; :
...@@ -63,19 +60,16 @@ Before statement while (i < 10) { ...@@ -63,19 +60,16 @@ Before statement while (i < 10) {
} : } :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement if (! (i < 10)) break; : Before statement if (! (i < 10)) break; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement a = b; Before statement a = b;
...@@ -83,32 +77,27 @@ Before statement a = b; ...@@ -83,32 +77,27 @@ Before statement a = b;
a = c; : a = c; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement a = b; Before statement a = b;
goto __Cont; : goto __Cont; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement a = b; : Before statement a = b; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement goto __Cont; : Before statement goto __Cont; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
Before statement __Cont: i ++; : Before statement __Cont: i ++; :
<list of may-alias> <list of may-alias>
{a; b; } are aliased {a; b; } are aliased
{*a; *b; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
...@@ -108,7 +108,6 @@ Before statement b->t1[i] = a->t1[i]; : ...@@ -108,7 +108,6 @@ Before statement b->t1[i] = a->t1[i]; :
Before statement idx = 0; : Before statement idx = 0; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement b->t2[i] = a->t2[i]; : Before statement b->t2[i] = a->t2[i]; :
...@@ -121,7 +120,6 @@ Before statement while (idx < 10) { ...@@ -121,7 +120,6 @@ Before statement while (idx < 10) {
} : } :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement if (*n == 1) *n = 0; else (*n) ++; : Before statement if (*n == 1) *n = 0; else (*n) ++; :
...@@ -143,7 +141,6 @@ Before statement b->n1 = a->n1; : ...@@ -143,7 +141,6 @@ Before statement b->n1 = a->n1; :
Before statement if (! (idx < 10)) break; : Before statement if (! (idx < 10)) break; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement *n = 0; : Before statement *n = 0; :
...@@ -157,7 +154,6 @@ Before statement b->n2 = a->n2; : ...@@ -157,7 +154,6 @@ Before statement b->n2 = a->n2; :
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement (*n) ++; : Before statement (*n) ++; :
...@@ -171,7 +167,6 @@ Before statement f1(a); : ...@@ -171,7 +167,6 @@ Before statement f1(a); :
Before statement *(odata + idx) = (double)3 * *(idata + idx) + (double)1; : Before statement *(odata + idx) = (double)3 * *(idata + idx) + (double)1; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement f2(b); : Before statement f2(b); :
...@@ -181,7 +176,6 @@ Before statement f2(b); : ...@@ -181,7 +176,6 @@ Before statement f2(b); :
Before statement *(odata + idx) = (double)3 * *(idata + idx) + (double)1; : Before statement *(odata + idx) = (double)3 * *(idata + idx) + (double)1; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement __retres = 0; : Before statement __retres = 0; :
...@@ -191,7 +185,6 @@ Before statement __retres = 0; : ...@@ -191,7 +185,6 @@ Before statement __retres = 0; :
Before statement idx ++; : Before statement idx ++; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement ty *tmp = x; : Before statement ty *tmp = x; :
...@@ -201,13 +194,11 @@ Before statement ty *tmp = x; : ...@@ -201,13 +194,11 @@ Before statement ty *tmp = x; :
Before statement swap(tmp->n2); : Before statement swap(tmp->n2); :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement idata = (double *)malloc((unsigned long)10 * sizeof(double)); : Before statement idata = (double *)malloc((unsigned long)10 * sizeof(double)); :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement return; : Before statement return; :
...@@ -230,7 +221,6 @@ Before statement while (1) { ...@@ -230,7 +221,6 @@ Before statement while (1) {
} : } :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement idata = tmp->t2[*(tmp->n2)]; Before statement idata = tmp->t2[*(tmp->n2)];
...@@ -247,7 +237,6 @@ Before statement idata = tmp->t2[*(tmp->n2)]; ...@@ -247,7 +237,6 @@ Before statement idata = tmp->t2[*(tmp->n2)];
swap(tmp->n1); : swap(tmp->n1); :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement a = (ty *)malloc(sizeof(ty)); : Before statement a = (ty *)malloc(sizeof(ty)); :
...@@ -257,7 +246,6 @@ Before statement a = (ty *)malloc(sizeof(ty)); : ...@@ -257,7 +246,6 @@ Before statement a = (ty *)malloc(sizeof(ty)); :
Before statement idata = tmp->t2[*(tmp->n2)]; : Before statement idata = tmp->t2[*(tmp->n2)]; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement b = (ty *)malloc(sizeof(ty)); : Before statement b = (ty *)malloc(sizeof(ty)); :
...@@ -267,7 +255,6 @@ Before statement b = (ty *)malloc(sizeof(ty)); : ...@@ -267,7 +255,6 @@ Before statement b = (ty *)malloc(sizeof(ty)); :
Before statement odata = tmp->t1[*(tmp->n1)]; : Before statement odata = tmp->t1[*(tmp->n1)]; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement i = 0; : Before statement i = 0; :
...@@ -277,7 +264,6 @@ Before statement i = 0; : ...@@ -277,7 +264,6 @@ Before statement i = 0; :
Before statement idx = 0; : Before statement idx = 0; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement while (i < 2) { Before statement while (i < 2) {
...@@ -298,7 +284,6 @@ Before statement while (idx < 10) { ...@@ -298,7 +284,6 @@ Before statement while (idx < 10) {
} : } :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement return __retres; : Before statement return __retres; :
...@@ -312,7 +297,6 @@ Before statement if (! (i < 2)) break; : ...@@ -312,7 +297,6 @@ Before statement if (! (i < 2)) break; :
Before statement if (! (idx < 10)) break; : Before statement if (! (idx < 10)) break; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement break; : Before statement break; :
...@@ -322,7 +306,6 @@ Before statement break; : ...@@ -322,7 +306,6 @@ Before statement break; :
Before statement break; : Before statement break; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double)); Before statement a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double));
...@@ -337,7 +320,6 @@ Before statement { ...@@ -337,7 +320,6 @@ Before statement {
} : } :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double)); : Before statement a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double)); :
...@@ -348,7 +330,6 @@ Before statement tmp_1 = sin(*(idata + idx)); ...@@ -348,7 +330,6 @@ Before statement tmp_1 = sin(*(idata + idx));
*(odata + idx) = 0.5 * tmp_1; : *(odata + idx) = 0.5 * tmp_1; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double)); : Before statement a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double)); :
...@@ -358,7 +339,6 @@ Before statement a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double)) ...@@ -358,7 +339,6 @@ Before statement a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double))
Before statement tmp_1 = sin(*(idata + idx)); : Before statement tmp_1 = sin(*(idata + idx)); :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement i ++; : Before statement i ++; :
...@@ -368,7 +348,6 @@ Before statement i ++; : ...@@ -368,7 +348,6 @@ Before statement i ++; :
Before statement *(odata + idx) = 0.5 * tmp_1; : Before statement *(odata + idx) = 0.5 * tmp_1; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement a->n1 = (int *)malloc(sizeof(int)); : Before statement a->n1 = (int *)malloc(sizeof(int)); :
...@@ -378,7 +357,6 @@ Before statement a->n1 = (int *)malloc(sizeof(int)); : ...@@ -378,7 +357,6 @@ Before statement a->n1 = (int *)malloc(sizeof(int)); :
Before statement idx ++; : Before statement idx ++; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement a->n2 = (int *)malloc(sizeof(int)); : Before statement a->n2 = (int *)malloc(sizeof(int)); :
...@@ -388,7 +366,6 @@ Before statement a->n2 = (int *)malloc(sizeof(int)); : ...@@ -388,7 +366,6 @@ Before statement a->n2 = (int *)malloc(sizeof(int)); :
Before statement swap(tmp->n1); : Before statement swap(tmp->n1); :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement *(a->n1) = 1; : Before statement *(a->n1) = 1; :
...@@ -418,7 +395,6 @@ Before statement while (i < 2) { ...@@ -418,7 +395,6 @@ Before statement while (i < 2) {
Before statement idata = (double *)malloc((unsigned long)10 * sizeof(double)); : Before statement idata = (double *)malloc((unsigned long)10 * sizeof(double)); :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement while (1) { Before statement while (1) {
...@@ -433,7 +409,6 @@ Before statement while (1) { ...@@ -433,7 +409,6 @@ Before statement while (1) {
} : } :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement if (! (i < 2)) break; : Before statement if (! (i < 2)) break; :
...@@ -450,7 +425,6 @@ Before statement idata = tmp->t1[*(tmp->n1)]; ...@@ -450,7 +425,6 @@ Before statement idata = tmp->t1[*(tmp->n1)];
swap(tmp->n2); : swap(tmp->n2); :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement break; : Before statement break; :
...@@ -460,7 +434,6 @@ Before statement break; : ...@@ -460,7 +434,6 @@ Before statement break; :
Before statement idata = tmp->t1[*(tmp->n1)]; : Before statement idata = tmp->t1[*(tmp->n1)]; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
Before statement b->t1[i] = a->t1[i]; Before statement b->t1[i] = a->t1[i];
...@@ -471,7 +444,6 @@ Before statement b->t1[i] = a->t1[i]; ...@@ -471,7 +444,6 @@ Before statement b->t1[i] = a->t1[i];
Before statement odata = tmp->t2[*(tmp->n2)]; : Before statement odata = tmp->t2[*(tmp->n2)]; :
<list of may-alias> <list of may-alias>
{x; tmp; } are aliased {x; tmp; } are aliased
{*x; *tmp; } are aliased
<end of list> <end of list>
[alias] Analysis complete [alias] Analysis complete
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment