Is there any listing of what the various compile errors mean? Most are pretty self-explanatory, but I have no idea what:
Error:E010:Irreducible ControlFlow Detected
Means, it is not flagging any line in particular. I only get this error from AMD. NVidia seems fine. I am getting this in the Stream KernelAnalyzer.
That means you have some goto jumping into the middle of a loop. OpenCL compilers are not required to support this kind of unstructured code. Even on compiler that support it, it may hurt performance quite a bit.
Hi!!!
I got same problem when I did:
for(;
{
…
if (flagOk) break;
…
}
but with…
for(uint i=0;i<16;i++) // only to mark limits (that will never be used or reached)
{
…
if (flagOk) break;
…
}
NO ERROR!!!