5 Replies Latest reply on Sep 14, 2010 7:19 PM by MicahVillmow

    atomic_xchg not recognized by compiler


      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.