On 12/12/13 07:56, Iyer, Balaji V wrote:
Will it be Ok if I don’t mark them as cilk simd function but just keep it as omp declare simd from the start? That should get around this issue.
No, because then we won't be able to distinguish between OMP and Cilk Plus clones. This is something we do here:
/* To distinguish from an OpenMP simd clone, Cilk Plus functions to be cloned have a distinctive artificial label in addition to "omp declare simd". */ bool cilk_clone = (flag_enable_cilkplus && lookup_attribute ("cilk plus elemental", DECL_ATTRIBUTES (node->decl))); /* Allocate one more than needed just in case this is an in-branch clone which will require a mask argument. */ struct cgraph_simd_clone *clone_info = simd_clone_struct_alloc (n + 1); clone_info->nargs = n; clone_info->cilk_elemental = cilk_clone;