8sa1-gcc/gcc/testsuite/c-c++-common/cilk-plus/AN/array_test2.c
Balaji V. Iyer ce6a6ae175 Fix Cilk Plus tests for simulators.
2013-06-04  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * c-c++-common/cilk-plus/AN/array_test1.c (main): Replaced argc, argv
        parameters with void.
        (main2): Removed argc parameter.
        * c-c++-common/cilk-plus/AN/array_test2.c (main2): Likewise.
        (main): Replaced argc, argv parameters with void.
        * c-c++-common/cilk-plus/AN/array_test_ND.c (main): Likewise.
        (main2): Removed argc parameter.
        * c-c++-common/cilk-plus/AN/builtin_fn_custom.c (main): Replaced argc
        argv parameters with void.  Added __asm volatile to avoid optimization
        on argc, if necessary.
        * c-c++-common/cilk-plus/AN/builtin_fn_mutating (main): Likewise.
        * c-c++-common/cilk-plus/AN/builtin_func_double.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/builtin_func_double2.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/conditional.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/exec-once.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/exec-once2.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/fn_ptr.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/gather-scatter-errors.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/gather_scatter.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/misc.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors2.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors3.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors4.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/rank_mismatch2.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/sec_implicit_ex.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/sec_reduce_return.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/test_builtin_return.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/vla.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/comma-exp.c (main): Replaced argc, argv
        parameters with void.
        (main2): Removed argc parameter.
        * c-c++-common/cilk-plus/AN/if_test.c (main2): Likewise.
        (main): Replaced argc, argv parameters with void.
        * c-c++-common/cilk-plus/AN/fp_triplet_values (main2): Replace argc,
        argv parameters with void.  Also renamed this function as main, and
        delete the existing main.
        * c-c++-common/cilk-plus/AN/sec_implicit.c (main2): Likewise.
        * c-c++-common/cilk-plus/AN/sec_implicit2.c (main2): Likewise.
        * c-c++-common/cilk-plus/AN/sec_reduce_max_min_ind.c (main2): Likewise.

From-SVN: r199661
2013-06-04 09:44:22 -07:00

129 lines
2.5 KiB
C

/* { dg-do run } */
/* { dg-options "-fcilkplus" } */
#include <stdlib.h>
int main2 (char **argv);
int main(void)
{
int x = 0;
const char *array[] = {"a.out", "5"};
x = main2 ((char **)array);
return x;
}
int main2(char **argv)
{
int array[10], array2[10], ii = 0, x = 2, z= 0 , y = 0 ;
for (ii = 0; ii < 10; ii++)
{
array[ii] = 10;
array2[ii] = 5000000;
}
array2[0:10:1] = array[0:10:1];
for (ii = 0; ii < 10; ii++)
if (array2[ii] != array[ii])
return 1;
for (ii = 0; ii < 10; ii++)
{
array[ii] = 10;
array2[ii] = 5000000;
}
array2[0:5:2] = array[0:5:2];
for (ii = 0; ii < 10; ii += 2)
if (array[ii] != array2[ii])
return 2;
for (ii = 0; ii < 10; ii++)
{
array[ii] = 10;
array2[ii] = 5000000;
}
x = atoi(argv[1]);
z = (10-atoi(argv[1]))/atoi(argv[1]);
array2[x:5:z] = array[x:5:z];
for (ii = x; ii < 5; ii += z)
if (array2[ii] != array[ii])
return 3;
for (ii = 0; ii < 10; ii++)
{
array[ii] = 500;
array2[ii] = 1000000;
}
x = atoi(argv[1]);
z = (10-atoi(argv[1]))/atoi(argv[1]);
y = 10-atoi(argv[1]);
array2[x:y:z] = array[x:y:z];
for (ii = x; ii < 10; ii = ii + z)
if (array2[ii] != array[ii])
return 4;
for (ii = 0; ii < 10; ii++)
{
array[ii] = 500;
array2[ii] = 1000000;
}
x = atoi(argv[1]);
z = (10-atoi(argv[1]))/atoi(argv[1]);
y = 10-atoi(argv[1]);
array[x:y:((10-atoi(argv[1]))/atoi(argv[1]))] =
array2[x:y:((10-atoi(argv[1]))/atoi(argv[1]))];
for (ii = x; ii < 10; ii += z)
if (array[ii] != array2[ii])
return 5;
x = atoi(argv[1]);
z = (10-atoi(argv[1]))/atoi(argv[1]);
y = 10-atoi(argv[1]);
for (ii = 0; ii < 10; ii++)
{
array[ii] = 500;
array2[ii] = 1000000;
}
array[atoi(argv[1]):(10-atoi(argv[1])):((10-atoi(argv[1]))/atoi(argv[1]))] =
array2[atoi(argv[1]):(10-atoi(argv[1])):((10-atoi(argv[1]))/atoi(argv[1]))];
for (ii = x; ii < 10; ii += z)
if (array[ii] != array2[ii])
return 6;
for (ii = 0; ii < 10; ii++)
{
array[ii] = 4;
array2[ii] = 2;
}
array[atoi("5"):5:1] = array2[atoi("5"):5:1];
for (ii = atoi ("5"); ii < 10; ii++)
if (array[ii] != array2[ii])
return (7);
for (ii = 0; ii < 10; ii++)
{
array[ii] = 5;
array2[ii] = 1;
}
array[atoi("5"):atoi("5"):atoi("1")] = array2[atoi("5"):atoi("5"):atoi("1")];
for (ii = 5; ii < 10; ii++)
if (array2[ii] != array[ii])
return 8;
return 0;
}