On Tue, Dec 03, 2013 at 02:01:17PM +0000, Iyer, Balaji V wrote: > In Cilk_for you don't need to privatize any variables. I need to pass in > the loop_count, the grain (if the user specifies one), the nested function > and its context to a Cilk specific function:__cilkrts_cilk_for_64 (or 32). > The nested function has the body of the _Cilk_for and it has 3 parameter, > context, start and end, where the start and end are passed in by the > runtime which will tell what parts of the loop to execute. This thread > has an example: http://gcc.gnu.org/ml/gcc-patches/2013-11/msg03567.html
So Cilk+ only allows say: _Cilk_for (int ii = 5; ii < 15; ii++) { <body> } and not int ii; _Cilk_for (ii = 5; ii < 15; ii++) { <body> } ? Other variables can be all shared, that is after all the default for #pragma omp parallel for, except for the IVs and a couple of other exceptions (e.g. readonly vars etc.), if somebody wants private vars, they can be surely declared inside of the <body> somwhere. Jakub