]>
Commit | Line | Data |
---|---|---|
3c6d4197 | 1 | /* { dg-do run } */ |
2 | /* { dg-options "-fcilkplus" } */ | |
3 | ||
4 | #include <stdlib.h> | |
4c115a64 | 5 | int main2 (char **argv); |
6 | int main(void) | |
3c6d4197 | 7 | { |
4c115a64 | 8 | int x = 0; |
9 | const char *array[] = {"a.out", "5"}; | |
10 | x = main2 ((char **)array); | |
3c6d4197 | 11 | return x; |
12 | } | |
13 | ||
14 | ||
4c115a64 | 15 | int main2(char **argv) |
3c6d4197 | 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 | } |