Merged trunk at revision 161680 into branch.
[official-gcc.git] / gcc / testsuite / gcc.dg / struct / wo_prof_malloc_size_var.c
blob6caadcf12305ace627fcda1e117bd853cdc2a943
1 /* { dg-do compile } */
2 /* { dg-do run } */
4 #include <stdlib.h>
5 typedef struct
7 int a;
8 float b;
9 }str_t;
11 #ifdef STACK_SIZE
12 #if STACK_SIZE > 8000
13 #define N 1000
14 #else
15 #define N (STACK_SIZE/8)
16 #endif
17 #else
18 #define N 1000
19 #endif
21 int
22 main ()
24 int i, num;
26 num = rand();
27 num = num > N ? N : num;
28 str_t * p = malloc (num * sizeof (str_t));
30 if (p == 0)
31 return 0;
33 for (i = 0; i < num; i++)
34 p[i].b = i;
36 for (i = 0; i < num; i++)
37 p[i].a = p[i].b + 1;
39 for (i = 0; i < num; i++)
40 if (p[i].a != p[i].b + 1)
41 abort ();
43 return 0;
46 /*--------------------------------------------------------------------------*/
47 /* { dg-final { scan-ipa-dump "Number of structures to transform is 1" "ipa_struct_reorg" { xfail *-*-* } } } */
48 /* { dg-final { cleanup-ipa-dump "*" } } */