1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-store_ccp" } */
4 extern void link_error (void);
6 /* some addresses clearly cannot be equal, check that some address
7 expressions can be evaluated as constants */
10 void test6 (char p1, char p2)
13 static char s1 = 5, s2 = 7;
45 extern void *alloc (int) __attribute__ ((malloc));
47 char* __restrict__ rgc1;
48 char* test66 (char * __restrict__ rp1, char * __restrict__ rp2, char *p1)
50 char * __restrict__ rl1 = p1;
51 char * l1 = (char*) alloc (20);
89 int* __restrict__ rgi1;
90 int* test666 (int * __restrict__ rp1, int * __restrict__ rp2, int *p1)
92 int * __restrict__ rl1 = p1;
93 int * l1 = (int*) alloc (20);
130 /* There should be not link_error calls, if there is any the
131 optimization has failed */
132 /* ??? While we indeed don't handle some of these, a couple of the
133 restrict tests are incorrect. */
134 /* { dg-final { scan-tree-dump-times "link_error" 0 "store_ccp" { xfail *-*-* } } } */
135 /* { dg-final { cleanup-tree-dump "store_ccp" } } */