drstrip

atomic_xchg not recognized by compiler

Discussion created by drstrip on Sep 13, 2010
Latest reply on Sep 14, 2010 by MicahVillmow

Windows Vista, ATI SKD2.2, Driver 10.7b, Vis Studio 2008
all with current updates

I have Vis Studio set up to run the OpenCL compiler as part of the build process and I get a clean compile. When I call clBuildProgram, however, I get an error -

     "atomic_xchg" declared implicitly.

The program contains

int4 link;
int4 src = ....;
int foo = ...;
atomic_xchg(&q[src.x], foo);

and q is an input parameter __global int * q

 

Why does it compile outside my program, but not called from within? Could I somehow be calling the OpenCL 1.0 rather than 1.1 compiler somehow? I uninstalled everything along the way to installing 2.2, so I don't see where the old compiler would come from.

I've searched my hard disk and have only one file named clc.exe, dated 8/9/2010, 12:34PM. Is this what gets called by clBuildProgram?

Also, I notice that the openclsdk_.vsprops  files have changes the paths where to look for the various .lib files. I can replace my old copies of this file with the new, but the change doesn't seem to impact the project settings.

Outcomes