annotate gcc/testsuite/c-c++-common/cilk-plus/AN/sec_reduce_return.c @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* { dg-do run } */
kono
parents:
diff changeset
2 /* { dg-options "-fcilkplus" } */
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 int add_all (int *my_array, int size)
kono
parents:
diff changeset
5 {
kono
parents:
diff changeset
6 return __sec_reduce_add (my_array[0:size]);
kono
parents:
diff changeset
7 }
kono
parents:
diff changeset
8
kono
parents:
diff changeset
9 int mult_all (int *my_array, int size)
kono
parents:
diff changeset
10 {
kono
parents:
diff changeset
11 return __sec_reduce_mul (my_array[0:size]);
kono
parents:
diff changeset
12 }
kono
parents:
diff changeset
13
kono
parents:
diff changeset
14 int main (void)
kono
parents:
diff changeset
15 {
kono
parents:
diff changeset
16 int argc = 1;
kono
parents:
diff changeset
17 int array[10000];
kono
parents:
diff changeset
18
kono
parents:
diff changeset
19 __asm volatile ("" : "+r" (argc));
kono
parents:
diff changeset
20 array[:] = argc; /* All elements should be one. */
kono
parents:
diff changeset
21
kono
parents:
diff changeset
22 if (add_all (array, 10000) != 10000)
kono
parents:
diff changeset
23 return 1;
kono
parents:
diff changeset
24
kono
parents:
diff changeset
25 if (mult_all (array, 10000) != 1)
kono
parents:
diff changeset
26 return 2;
kono
parents:
diff changeset
27
kono
parents:
diff changeset
28 return 0;
kono
parents:
diff changeset
29 }