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

[alias] update oracles

parent d6661f28
No related branches found
No related tags found
No related merge requests found
Showing
with 313 additions and 175 deletions
......@@ -8,12 +8,8 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: a = & b;
[alias] May-aliases at the end of instruction:
{a, &b} are aliased
[alias] analysing instruction: c = & b;
[alias] May-aliases at the end of instruction:
{a, c, &b} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{a, c, &b} are aliased
[alias] May-aliases at the end of function main:
{a, c, &b} are aliased
......@@ -2,32 +2,17 @@
[alias] analysing function: main
[alias] analysing instruction: b = & c;
[alias] May-aliases at the end of instruction:
{b, &c} are aliased
[alias] analysing instruction: c = & d;
[alias] May-aliases at the end of instruction:
{b, &c} are aliased
{c, &d} are aliased
[alias] analysing instruction: d = & e;
[alias] May-aliases at the end of instruction:
{b, &c} are aliased
{c, &d} are aliased
{d, &e} are aliased
[alias] analysing instruction: a = b;
[alias] May-aliases at the end of instruction:
{d, &e} are aliased
{a, b, &c} are aliased
{c, &d} are aliased
{a, b} are aliased
[alias] analysing instruction: a = & c;
[alias] May-aliases at the end of instruction:
{d, &e} are aliased
{a, b, &c} are aliased
{c, &d} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{d, &e} are aliased
{a, b, &c} are aliased
{c, &d} are aliased
{a, b} are aliased
[alias] May-aliases at the end of function main:
{d, &e} are aliased
{a, b, &c} are aliased
{c, &d} are aliased
{a, b} are aliased
......@@ -10,12 +10,8 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: a = addr(& c);
[alias] May-aliases at the end of instruction:
{a, &c} are aliased
[alias] analysing instruction: b = & c;
[alias] May-aliases at the end of instruction:
{a, b, &c} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{a, b, &c} are aliased
[alias] May-aliases at the end of function main:
{a, b, &c} are aliased
......@@ -2,31 +2,17 @@
[alias] analysing function: main
[alias] analysing instruction: a = & x;
[alias] May-aliases at the end of instruction:
{a, &x} are aliased
[alias] analysing instruction: b = & y;
[alias] May-aliases at the end of instruction:
{a, &x} are aliased
{b, &y} are aliased
[alias] analysing instruction: y = & z;
[alias] May-aliases at the end of instruction:
{a, &x} are aliased
{b, &y} are aliased
{y, &z} are aliased
[alias] analysing instruction: y = & x;
[alias] May-aliases at the end of instruction:
{b, &y} are aliased
{a, y, &x} are aliased
[alias] analysing instruction: c = & y;
[alias] May-aliases at the end of instruction:
{x, z} are aliased
{b, c, &y} are aliased
{a, y, &x, &z} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{x, z} are aliased
{b, c, &y} are aliased
{a, y, &x, &z} are aliased
[alias] May-aliases at the end of function main:
{x, z} are aliased
{b, c, &y} are aliased
{a, y, &x, &z} are aliased
......@@ -8,15 +8,10 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: int *x = & tab[1];
[alias] May-aliases at the end of instruction:
{x, &tab[0]} are aliased
[alias] analysing instruction: int *y = & tab[2];
[alias] May-aliases at the end of instruction:
{x, y, &tab[0]} are aliased
[alias] analysing instruction: tab[3] = *x + *y;
[alias] May-aliases at the end of instruction:
{x, y, &tab[0]} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{x, y, &tab[0]} are aliased
[alias] May-aliases at the end of function main:
{x, y, &tab[0]} are aliased
......@@ -6,12 +6,8 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: *x = mat[1];
[alias] May-aliases at the end of instruction:
{*x, &mat[0]} are aliased
[alias] analysing instruction: *y = *(*(x + 0));
[alias] May-aliases at the end of instruction:
{*x, &mat[0]} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{*x, &mat[0]} are aliased
[alias] May-aliases at the end of function main:
{*x, &mat[0]} are aliased
[kernel] Parsing array3.c (with preprocessing)
[kernel:typing:implicit-function-declaration] array3.c:6: Warning:
Calling undeclared function malloc. Old style K&R code?
[alias] analysing function: asprintf
[alias] May-aliases at the end of function asprintf:
[alias] analysing function: clearerr
[alias] May-aliases at the end of function clearerr:
[alias] analysing function: clearerr_unlocked
[alias] May-aliases at the end of function clearerr_unlocked:
[alias] analysing function: fclose
[alias] May-aliases at the end of function fclose:
[alias] analysing function: fdopen
[alias] May-aliases at the end of function fdopen:
[alias] analysing function: feof
[alias] May-aliases at the end of function feof:
[alias] analysing function: feof_unlocked
[alias] May-aliases at the end of function feof_unlocked:
[alias] analysing function: ferror
[alias] May-aliases at the end of function ferror:
[alias] analysing function: ferror_unlocked
[alias] May-aliases at the end of function ferror_unlocked:
[alias] analysing function: fflush
[alias] May-aliases at the end of function fflush:
[alias] analysing function: fgetc
[alias] May-aliases at the end of function fgetc:
[alias] analysing function: fgetpos
[alias] May-aliases at the end of function fgetpos:
[alias] analysing function: fgets
[alias] May-aliases at the end of function fgets:
[alias] analysing function: fileno
[alias] May-aliases at the end of function fileno:
[alias] analysing function: fileno_unlocked
[alias] May-aliases at the end of function fileno_unlocked:
[alias] analysing function: flockfile
[alias] May-aliases at the end of function flockfile:
[alias] analysing function: fmemopen
[alias] May-aliases at the end of function fmemopen:
[alias] analysing function: fopen
[alias] May-aliases at the end of function fopen:
[alias] analysing function: fputc
[alias] May-aliases at the end of function fputc:
[alias] analysing function: fputs
[alias] May-aliases at the end of function fputs:
[alias] analysing function: fread
[alias] May-aliases at the end of function fread:
[alias] analysing function: freopen
[alias] May-aliases at the end of function freopen:
[alias] analysing function: fseek
[alias] May-aliases at the end of function fseek:
[alias] analysing function: fseeko
[alias] May-aliases at the end of function fseeko:
[alias] analysing function: fsetpos
[alias] May-aliases at the end of function fsetpos:
[alias] analysing function: ftell
[alias] May-aliases at the end of function ftell:
[alias] analysing function: ftello
[alias] May-aliases at the end of function ftello:
[alias] analysing function: ftrylockfile
[alias] May-aliases at the end of function ftrylockfile:
[alias] analysing function: funlockfile
[alias] May-aliases at the end of function funlockfile:
[alias] analysing function: fwrite
[alias] May-aliases at the end of function fwrite:
[alias] analysing function: getc
[alias] May-aliases at the end of function getc:
[alias] analysing function: getc_unlocked
[alias] May-aliases at the end of function getc_unlocked:
[alias] analysing function: getchar
[alias] May-aliases at the end of function getchar:
[alias] analysing function: getchar_unlocked
[alias] May-aliases at the end of function getchar_unlocked:
[alias] analysing function: gets
[alias] May-aliases at the end of function gets:
[alias] analysing function: main
[alias] analysing instruction: tmp = malloc((unsigned long)4 * sizeof(int));
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: int *x = (int *)tmp;
[alias] May-aliases at the end of instruction:
{x, tmp} are aliased
[alias] analysing instruction: tmp_0 = malloc((unsigned long)4 * sizeof(int));
[alias] May-aliases at the end of instruction:
{x, tmp} are aliased
[alias] analysing instruction: int *y = (int *)tmp_0;
[alias] May-aliases at the end of instruction:
{x, tmp} are aliased
{y, tmp_0} are aliased
[alias] analysing instruction: x = mat[0];
[alias] May-aliases at the end of instruction:
{x, tmp} are aliased
{y, tmp_0} are aliased
[alias] analysing instruction: y = mat[1];
[alias] May-aliases at the end of instruction:
{x, tmp} are aliased
{y, tmp_0} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{x, tmp} are aliased
{y, tmp_0} are aliased
[alias] May-aliases at the end of function main:
{x, tmp, y, tmp_0, &mat[0]} are aliased
Before statement tmp = malloc((unsigned long)4 * sizeof(int)); :
Before statement int *x = (int *)tmp; :
Before statement tmp_0 = malloc((unsigned long)4 * sizeof(int)); :
{x, tmp} are aliased
Before statement int *y = (int *)tmp_0; :
{x, tmp} are aliased
Before statement x = mat[0]; :
{x, tmp} are aliased
{y, tmp_0} are aliased
Before statement y = mat[1]; :
{x, tmp, &mat[0]} are aliased
{y, tmp_0} are aliased
Before statement __retres = 0; :
{x, tmp, y, tmp_0, &mat[0]} are aliased
Before statement return __retres; :
{x, tmp, y, tmp_0, &mat[0]} are aliased
{x, tmp} are aliased
{y, tmp_0} are aliased
[alias] analysing function: malloc
[alias] May-aliases at the end of function malloc:
[alias] analysing function: pclose
[alias] May-aliases at the end of function pclose:
[alias] analysing function: perror
[alias] May-aliases at the end of function perror:
[alias] analysing function: popen
[alias] May-aliases at the end of function popen:
[alias] analysing function: putc
[alias] May-aliases at the end of function putc:
[alias] analysing function: putc_unlocked
[alias] May-aliases at the end of function putc_unlocked:
[alias] analysing function: putchar
[alias] May-aliases at the end of function putchar:
[alias] analysing function: putchar_unlocked
[alias] May-aliases at the end of function putchar_unlocked:
[alias] analysing function: puts
[alias] May-aliases at the end of function puts:
[alias] analysing function: remove
[alias] May-aliases at the end of function remove:
[alias] analysing function: rename
[alias] May-aliases at the end of function rename:
[alias] analysing function: rewind
[alias] May-aliases at the end of function rewind:
[alias] analysing function: setbuf
[alias] May-aliases at the end of function setbuf:
[alias] analysing function: setvbuf
[alias] May-aliases at the end of function setvbuf:
[alias] analysing function: tmpfile
[alias] May-aliases at the end of function tmpfile:
[alias] analysing function: tmpnam
[alias] May-aliases at the end of function tmpnam:
[alias] analysing function: ungetc
[alias] May-aliases at the end of function ungetc:
[alias] analysing function: vfprintf
[alias] May-aliases at the end of function vfprintf:
[alias] analysing function: vfscanf
[alias] May-aliases at the end of function vfscanf:
[alias] analysing function: vprintf
[alias] May-aliases at the end of function vprintf:
[alias] analysing function: vscanf
[alias] May-aliases at the end of function vscanf:
[alias] analysing function: vsnprintf
[alias] May-aliases at the end of function vsnprintf:
[alias] analysing function: vsprintf
[alias] May-aliases at the end of function vsprintf:
......@@ -54,82 +54,73 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: tab_y[0] = & x1;
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1} are aliased
[alias] analysing instruction: tab_y[1] = & x2;
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: st_2_t *z1 = malloc(sizeof(st_2_t));
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: st_2_t *z2 = malloc(sizeof(st_2_t));
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: st_3_t *t = malloc(sizeof(st_3_t));
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: int *a = malloc(sizeof(int));
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: int *b = malloc(sizeof(int));
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: *a = 0;
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: *b = 5;
[alias] May-aliases at the end of instruction:
{tab_y[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: z1->s = (struct struct_1_t *)tab_y[0];
[alias] May-aliases at the end of instruction:
{x1, x2} are aliased
{z1->s, tab_y[0], &x1, &x2} are aliased
{z1->s, tab_y[0]} are aliased
[alias] analysing instruction: z2->s = (struct struct_1_t *)tab_y[1];
[alias] May-aliases at the end of instruction:
{x1, x2} are aliased
{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
{z1->s, z2->s, tab_y[0]} are aliased
[alias] analysing instruction: z1->c = a;
[alias] May-aliases at the end of instruction:
{x1, x2} are aliased
{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
{z1->s, z2->s, tab_y[0]} are aliased
{z1->c, a} are aliased
[alias] analysing instruction: z2->c = b;
[alias] May-aliases at the end of instruction:
{x1, x2} are aliased
{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
{z1->s, z2->s, tab_y[0]} are aliased
{z1->c, a} are aliased
{z2->c, b} are aliased
[alias] analysing instruction: t->t = (struct struct_2_t *)z1;
[alias] May-aliases at the end of instruction:
{x1, x2} are aliased
{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
{z1->s, z2->s, tab_y[0]} are aliased
{z1->c, a} are aliased
{z2->c, b} are aliased
{t->t, z1} are aliased
[alias] analysing instruction: t->d = a;
[alias] May-aliases at the end of instruction:
{x1, x2} are aliased
{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
{z1->s, z2->s, tab_y[0]} are aliased
{z2->c, b} are aliased
{t->t, z1} are aliased
{z1->c, t->d, a} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{x1, x2} are aliased
{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
{z1->s, z2->s, tab_y[0]} are aliased
{z2->c, b} are aliased
{t->t, z1} are aliased
{z1->c, t->d, a} are aliased
[alias] May-aliases at the end of function main:
{x1, x2} are aliased
{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
{z1->s, z2->s, tab_y[0]} are aliased
{z2->c, b} are aliased
{t->t, z1} are aliased
{z1->c, t->d, a} are aliased
......
......@@ -62,36 +62,29 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: z1->s[0] = (struct struct_1_t *)(& x1);
[alias] May-aliases at the end of instruction:
{z1->s[0], &x1} are aliased
[alias] analysing instruction: z1->s[1] = (struct struct_1_t *)(& x2);
[alias] May-aliases at the end of instruction:
{z1->s[0], &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: z1->c = a;
[alias] May-aliases at the end of instruction:
{z1->s[0], &x1, &x2} are aliased
{x1, x2} are aliased
{z1->c, a} are aliased
[alias] analysing instruction: t->t = (struct struct_2_t *)z1;
[alias] May-aliases at the end of instruction:
{z1->s[0], &x1, &x2} are aliased
{x1, x2} are aliased
{z1->c, a} are aliased
{t->t, z1} are aliased
[alias] analysing instruction: t->d = a;
[alias] May-aliases at the end of instruction:
{z1->s[0], &x1, &x2} are aliased
{x1, x2} are aliased
{t->t, z1} are aliased
{z1->c, t->d, a} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{z1->s[0], &x1, &x2} are aliased
{x1, x2} are aliased
{t->t, z1} are aliased
{z1->c, t->d, a} are aliased
[alias] May-aliases at the end of function main:
{z1->s[0], &x1, &x2} are aliased
{x1, x2} are aliased
{t->t, z1} are aliased
{z1->c, t->d, a} are aliased
......
......@@ -6,23 +6,18 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: st_1_t *p_x = & x;
[alias] May-aliases at the end of instruction:
{p_x, &x} are aliased
[alias] analysing instruction: st_2_t *p_y = & y;
[alias] May-aliases at the end of instruction:
{p_x, &x} are aliased
{p_y, &y} are aliased
[alias] analysing instruction: p_x->a = 3;
[alias] May-aliases at the end of instruction:
{p_x, &x} are aliased
{p_y, &y} are aliased
[alias] analysing instruction: p_x = (st_1_t *)p_y;
[alias] May-aliases at the end of instruction:
{p_x, p_y, &x, &y} are aliased
{p_x, p_y} are aliased
{x, y} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{p_x, p_y, &x, &y} are aliased
{p_x, p_y} are aliased
{x, y} are aliased
[alias] May-aliases at the end of function main:
{p_x, p_y, &x, &y} are aliased
{p_x, p_y} are aliased
{x, y} are aliased
......@@ -6,15 +6,11 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: st_2_t y = {.s = (struct struct_1_t *)(& x1), .c = 4};
[alias] May-aliases at the end of instruction:
{y.s, &x1} are aliased
[alias] analysing instruction: y.s = (struct struct_1_t *)(& x2);
[alias] May-aliases at the end of instruction:
{y.s, &x1, &x2} are aliased
{x1, x2} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{y.s, &x1, &x2} are aliased
{x1, x2} are aliased
[alias] May-aliases at the end of function main:
{y.s, &x1, &x2} are aliased
{x1, x2} are aliased
......@@ -7,40 +7,22 @@
[alias] analysing instruction: st_2_t y1 =
{.s = (struct struct_1_t *)(& x1), .c = 3};
[alias] May-aliases at the end of instruction:
{y1.s, &x1} are aliased
[alias] analysing instruction: st_2_t y2 =
{.s = (struct struct_1_t *)(& x2), .c = 4};
[alias] May-aliases at the end of instruction:
{y1.s, &x1} are aliased
{y2.s, &x2} are aliased
[alias] analysing instruction: st_3_t z = {.t = (struct struct_2_t *)(& y1), .d = 5};
[alias] May-aliases at the end of instruction:
{y1.s, &x1} are aliased
{y2.s, &x2} are aliased
{z.t, &y1} are aliased
[alias] analysing instruction: z.t = (struct struct_2_t *)(& y2);
[alias] May-aliases at the end of instruction:
{y1.s, &x1} are aliased
{y2.s, &x2} are aliased
{z.t, &y1, &y2} are aliased
{y1, y2} are aliased
[alias] analysing instruction: y1.c = z.d;
[alias] May-aliases at the end of instruction:
{y1.s, &x1} are aliased
{y2.s, &x2} are aliased
{z.t, &y1, &y2} are aliased
{y1, y2} are aliased
{y1.c, y2.c} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{y1.s, &x1} are aliased
{y2.s, &x2} are aliased
{z.t, &y1, &y2} are aliased
{y1, y2} are aliased
{y1.c, y2.c} are aliased
[alias] May-aliases at the end of function main:
{y1.s, &x1} are aliased
{y2.s, &x2} are aliased
{z.t, &y1, &y2} are aliased
{y1, y2} are aliased
{y1.c, y2.c} are aliased
......@@ -58,18 +58,17 @@
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: y1 = & x1;
[alias] May-aliases at the end of instruction:
{y1, &x1} are aliased
[alias] analysing instruction: z->s = (struct struct_1_t *)y1;
[alias] May-aliases at the end of instruction:
{z->s, y1, &x1} are aliased
{z->s, y1} are aliased
[alias] analysing instruction: z->c = 6;
[alias] May-aliases at the end of instruction:
{z->s, y1, &x1} are aliased
{z->s, y1} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{z->s, y1, &x1} are aliased
{z->s, y1} are aliased
[alias] May-aliases at the end of function main:
{z->s, y1, &x1} are aliased
{z->s, y1} are aliased
[alias] analysing function: malloc
[alias] May-aliases at the end of function malloc:
[alias] analysing function: mblen
......
[kernel] Parsing structure5.c (with preprocessing)
[alias] analysing function: _Exit
[alias] May-aliases at the end of function _Exit:
[alias] analysing function: abort
[alias] May-aliases at the end of function abort:
[alias] analysing function: abs
[alias] May-aliases at the end of function abs:
[alias] analysing function: at_quick_exit
[alias] May-aliases at the end of function at_quick_exit:
[alias] analysing function: atexit
[alias] May-aliases at the end of function atexit:
[alias] analysing function: atof
[alias] May-aliases at the end of function atof:
[alias] analysing function: atoi
[alias] May-aliases at the end of function atoi:
[alias] analysing function: atol
[alias] May-aliases at the end of function atol:
[alias] analysing function: atoll
[alias] May-aliases at the end of function atoll:
[alias] analysing function: bsearch
[alias] May-aliases at the end of function bsearch:
[alias] analysing function: calloc
[alias] May-aliases at the end of function calloc:
[alias] analysing function: div
[alias] May-aliases at the end of function div:
[alias] analysing function: drand48
[alias] May-aliases at the end of function drand48:
[alias] analysing function: erand48
[alias] May-aliases at the end of function erand48:
[alias] analysing function: exit
[alias] May-aliases at the end of function exit:
[alias] analysing function: free
[alias] May-aliases at the end of function free:
[alias] analysing function: getenv
[alias] May-aliases at the end of function getenv:
[alias] analysing function: jrand48
[alias] May-aliases at the end of function jrand48:
[alias] analysing function: labs
[alias] May-aliases at the end of function labs:
[alias] analysing function: lcong48
[alias] May-aliases at the end of function lcong48:
[alias] analysing function: ldiv
[alias] May-aliases at the end of function ldiv:
[alias] analysing function: llabs
[alias] May-aliases at the end of function llabs:
[alias] analysing function: lldiv
[alias] May-aliases at the end of function lldiv:
[alias] analysing function: lrand48
[alias] May-aliases at the end of function lrand48:
[alias] analysing function: main
[alias] analysing instruction: st_1_t x1 = {.a = 0, .b = 1};
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: st_1_t x2 = {.a = 1, .b = 2};
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: st_1_t *y1 = malloc(sizeof(st_1_t));
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: st_2_t *z = malloc(sizeof(st_2_t));
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: st_3_t *t = malloc(sizeof(st_3_t));
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: int *a = malloc(sizeof(int));
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: *a = 0;
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: y1 = & x1;
[alias] May-aliases at the end of instruction:
[alias] analysing instruction: z->s = (struct struct_1_t *)y1;
[alias] May-aliases at the end of instruction:
{z->s, y1} are aliased
[alias] analysing instruction: z->c = a;
[alias] May-aliases at the end of instruction:
{z->s, y1} are aliased
{z->c, a} are aliased
[alias] analysing instruction: t->t = (struct struct_2_t *)z;
[alias] May-aliases at the end of instruction:
{z->s, y1} are aliased
{z->c, a} are aliased
{t->t, z} are aliased
[alias] analysing instruction: t->d = a;
[alias] May-aliases at the end of instruction:
{z->s, y1} are aliased
{t->t, z} are aliased
{z->c, t->d, a} are aliased
[alias] analysing instruction: __retres = 0;
[alias] May-aliases at the end of instruction:
{z->s, y1} are aliased
{t->t, z} are aliased
{z->c, t->d, a} are aliased
[alias] May-aliases at the end of function main:
{z->s, y1, &x1} are aliased
{z->s, y1} are aliased
{t->t, z} are aliased
{z->c, t->d, a} are aliased
Before statement st_1_t x1 = {.a = 0, .b = 1}; :
Before statement st_1_t x2 = {.a = 1, .b = 2}; :
Before statement st_1_t *y1 = malloc(sizeof(st_1_t)); :
Before statement st_2_t *z = malloc(sizeof(st_2_t)); :
Before statement st_3_t *t = malloc(sizeof(st_3_t)); :
Before statement int *a = malloc(sizeof(int)); :
Before statement *a = 0; :
Before statement y1 = & x1; :
Before statement z->s = (struct struct_1_t *)y1; :
{y1, &x1} are aliased
Before statement z->c = a; :
{z->s, y1, &x1} are aliased
Before statement t->t = (struct struct_2_t *)z; :
{z->s, y1, &x1} are aliased
{z->c, a} are aliased
Before statement t->d = a; :
{z->s, y1, &x1} are aliased
{z->c, a} are aliased
{t->t, z} are aliased
Before statement __retres = 0; :
{z->s, y1, &x1} are aliased
{t->t, z} are aliased
{z->c, t->d, a} are aliased
Before statement return __retres; :
{z->s, y1, &x1} are aliased
{t->t, z} are aliased
{z->c, t->d, a} are aliased
[alias] analysing function: malloc
[alias] May-aliases at the end of function malloc:
[alias] analysing function: mblen
[alias] May-aliases at the end of function mblen:
[alias] analysing function: mbstowcs
[alias] May-aliases at the end of function mbstowcs:
[alias] analysing function: mbtowc
[alias] May-aliases at the end of function mbtowc:
[alias] analysing function: mkstemp
[alias] May-aliases at the end of function mkstemp:
[alias] analysing function: mkstemps
[alias] May-aliases at the end of function mkstemps:
[alias] analysing function: mrand48
[alias] May-aliases at the end of function mrand48:
[alias] analysing function: nrand48
[alias] May-aliases at the end of function nrand48:
[alias] analysing function: posix_memalign
[alias] May-aliases at the end of function posix_memalign:
[alias] analysing function: putenv
[alias] May-aliases at the end of function putenv:
[alias] analysing function: qsort
[alias] May-aliases at the end of function qsort:
[alias] analysing function: quick_exit
[alias] May-aliases at the end of function quick_exit:
[alias] analysing function: rand
[alias] May-aliases at the end of function rand:
[alias] analysing function: random
[alias] May-aliases at the end of function random:
[alias] analysing function: realloc
[alias] May-aliases at the end of function realloc:
[alias] analysing function: reallocarray
[alias] May-aliases at the end of function reallocarray:
[alias] analysing function: seed48
[alias] May-aliases at the end of function seed48:
[alias] analysing function: setenv
[alias] May-aliases at the end of function setenv:
[alias] analysing function: srand
[alias] May-aliases at the end of function srand:
[alias] analysing function: srand48
[alias] May-aliases at the end of function srand48:
[alias] analysing function: srandom
[alias] May-aliases at the end of function srandom:
[alias] analysing function: strtod
[alias] May-aliases at the end of function strtod:
[alias] analysing function: strtof
[alias] May-aliases at the end of function strtof:
[alias] analysing function: strtol
[alias] May-aliases at the end of function strtol:
[alias] analysing function: strtold
[alias] May-aliases at the end of function strtold:
[alias] analysing function: strtoll
[alias] May-aliases at the end of function strtoll:
[alias] analysing function: strtoul
[alias] May-aliases at the end of function strtoul:
[alias] analysing function: strtoull
[alias] May-aliases at the end of function strtoull:
[alias] analysing function: system
[alias] May-aliases at the end of function system:
[alias] analysing function: unsetenv
[alias] May-aliases at the end of function unsetenv:
[alias] analysing function: wcstombs
[alias] May-aliases at the end of function wcstombs:
[alias] analysing function: wctomb
[alias] May-aliases at the end of function wctomb:
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