Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.c-torture/execute/20080522-1.c @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
line wrap: on
line source
/* This testcase is to make sure we have i in referenced vars and that we properly compute aliasing for the loads and stores. */ extern void abort (void); static int i; static int *p = &i; int __attribute__((noinline)) foo(int *q) { *p = 1; *q = 2; return *p; } int __attribute__((noinline)) bar(int *q) { *q = 2; *p = 1; return *q; } int main() { int j = 0; if (foo(&i) != 2) abort (); if (bar(&i) != 1) abort (); if (foo(&j) != 1) abort (); if (j != 2) abort (); if (bar(&j) != 2) abort (); if (j != 2) abort (); return 0; }