]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/c-c++-common/cilk-plus/AN/array_test2.c
60f2de2834a1a0869c8a94fc77e4bdc96c483731
[thirdparty/gcc.git] / gcc / testsuite / c-c++-common / cilk-plus / AN / array_test2.c
1 /* { dg-do run } */
2 /* { dg-options "-fcilkplus" } */
3
4 #include <stdlib.h>
5 int main2 (char **argv);
6 int main(void)
7 {
8 int x = 0;
9 const char *array[] = {"a.out", "5"};
10 x = main2 ((char **)array);
11 return x;
12 }
13
14
15 int main2(char **argv)
16 {
17 int array[10], array2[10], ii = 0, x = 2, z= 0 , y = 0 ;
18
19 for (ii = 0; ii < 10; ii++)
20 {
21 array[ii] = 10;
22 array2[ii] = 5000000;
23 }
24
25 array2[0:10:1] = array[0:10:1];
26
27 for (ii = 0; ii < 10; ii++)
28 if (array2[ii] != array[ii])
29 return 1;
30
31 for (ii = 0; ii < 10; ii++)
32 {
33 array[ii] = 10;
34 array2[ii] = 5000000;
35 }
36
37 array2[0:5:2] = array[0:5:2];
38
39 for (ii = 0; ii < 10; ii += 2)
40 if (array[ii] != array2[ii])
41 return 2;
42
43 for (ii = 0; ii < 10; ii++)
44 {
45 array[ii] = 10;
46 array2[ii] = 5000000;
47 }
48 x = atoi(argv[1]);
49 z = (10-atoi(argv[1]))/atoi(argv[1]);
50
51 array2[x:5:z] = array[x:5:z];
52
53 for (ii = x; ii < 5; ii += z)
54 if (array2[ii] != array[ii])
55 return 3;
56
57 for (ii = 0; ii < 10; ii++)
58 {
59 array[ii] = 500;
60 array2[ii] = 1000000;
61 }
62 x = atoi(argv[1]);
63 z = (10-atoi(argv[1]))/atoi(argv[1]);
64 y = 10-atoi(argv[1]);
65
66 array2[x:y:z] = array[x:y:z];
67 for (ii = x; ii < 10; ii = ii + z)
68 if (array2[ii] != array[ii])
69 return 4;
70
71 for (ii = 0; ii < 10; ii++)
72 {
73 array[ii] = 500;
74 array2[ii] = 1000000;
75 }
76 x = atoi(argv[1]);
77 z = (10-atoi(argv[1]))/atoi(argv[1]);
78 y = 10-atoi(argv[1]);
79
80 array[x:y:((10-atoi(argv[1]))/atoi(argv[1]))] =
81 array2[x:y:((10-atoi(argv[1]))/atoi(argv[1]))];
82
83 for (ii = x; ii < 10; ii += z)
84 if (array[ii] != array2[ii])
85 return 5;
86
87
88 x = atoi(argv[1]);
89 z = (10-atoi(argv[1]))/atoi(argv[1]);
90 y = 10-atoi(argv[1]);
91
92 for (ii = 0; ii < 10; ii++)
93 {
94 array[ii] = 500;
95 array2[ii] = 1000000;
96 }
97
98 array[atoi(argv[1]):(10-atoi(argv[1])):((10-atoi(argv[1]))/atoi(argv[1]))] =
99 array2[atoi(argv[1]):(10-atoi(argv[1])):((10-atoi(argv[1]))/atoi(argv[1]))];
100 for (ii = x; ii < 10; ii += z)
101 if (array[ii] != array2[ii])
102 return 6;
103
104 for (ii = 0; ii < 10; ii++)
105 {
106 array[ii] = 4;
107 array2[ii] = 2;
108 }
109
110 array[atoi("5"):5:1] = array2[atoi("5"):5:1];
111
112 for (ii = atoi ("5"); ii < 10; ii++)
113 if (array[ii] != array2[ii])
114 return (7);
115
116 for (ii = 0; ii < 10; ii++)
117 {
118 array[ii] = 5;
119 array2[ii] = 1;
120 }
121 array[atoi("5"):atoi("5"):atoi("1")] = array2[atoi("5"):atoi("5"):atoi("1")];
122
123 for (ii = 5; ii < 10; ii++)
124 if (array2[ii] != array[ii])
125 return 8;
126
127 return 0;
128 }