On 10/22/15 05:31, Jakub Jelinek wrote:
On Wed, Oct 21, 2015 at 03:49:08PM -0400, Nathan Sidwell wrote:
So, how do you expand the OACC loops on non-PTX devices (host, or say XeonPhi)? Do you drop the IFNs and replace stuff with normal loops?
On a non ptx target (canonical example being the host), the IFN head/tail markers get deleted. the IFN_LOOP builtin gets expanded to code that essentially restores the original loop structure.
I don't see anything that would e.g. set the various flags that e.g. OpenMP #pragma omp simd or Cilk+ #pragma simd sets, like loop->safelen, loop->force_vectorize, maybe loop->simduid and promote some vars to simduid arrays if that is relevant to OpenACC.
It won't convert them into such representations. nathan