URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-stable/] [gcc-4.5.1/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [20080522-1.c] - Rev 816
Go to most recent revision | Compare with Previous | Blame | View Log
/* 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; }
Go to most recent revision | Compare with Previous | Blame | View Log