2 /* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves -funroll-loops" } */
3 /* This is the same test as loop-2e.c test. It is related to a fix in
4 the generation of the prolog and epilog. */
6 extern void abort (void);
8 void f (int *p
, int **q
)
11 for (i
= 0; i
< 40; i
++)
23 /* Find the signed middle of the address space. */
24 if (sizeof(start
) == sizeof(int))
25 start
= (__SIZE_TYPE__
) __INT_MAX__
;
26 else if (sizeof(start
) == sizeof(long))
27 start
= (__SIZE_TYPE__
) __LONG_MAX__
;
28 else if (sizeof(start
) == sizeof(long long))
29 start
= (__SIZE_TYPE__
) __LONG_LONG_MAX__
;
33 /* Arbitrarily align the pointer. */
36 /* Pretend that's good enough to start address arithmetic. */
39 /* Verify that GIV replacement computes the correct results. */
42 if (q
[39] != (int *)p
+ 39)