Author: jvesely
Date: Thu Jun 21 12:27:33 2018
New Revision: 335279

URL: http://llvm.org/viewvc/llvm-project?rev=335279&view=rev
Log:
atom: Consolidate cl_khr_{local,global}_int32_{base,extended}_atomics 
implementation

These are just atomic_* wrappers.
Switch inc, dec to use atomic_* wrappers as well.

Reviewed-By: Aaron Watry <awa...@gmail.com>
Tested-By: Aaron Watry <awa...@gmail.com>
Signed-off-by: Jan Vesely <jan.ves...@rutgers.edu>

Added:
    libclc/trunk/generic/lib/atom_int32_binary.inc
Modified:
    libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_add.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_dec.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_inc.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_sub.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_xchg.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_and.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_max.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_min.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_or.cl
    libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_xor.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_add.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_dec.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_inc.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_sub.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_xchg.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_and.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_max.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_min.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_or.cl
    libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_xor.cl

Added: libclc/trunk/generic/lib/atom_int32_binary.inc
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/atom_int32_binary.inc?rev=335279&view=auto
==============================================================================
--- libclc/trunk/generic/lib/atom_int32_binary.inc (added)
+++ libclc/trunk/generic/lib/atom_int32_binary.inc Thu Jun 21 12:27:33 2018
@@ -0,0 +1,14 @@
+#include <clc/clc.h>
+#include "utils.h"
+
+#define __CLC_ATOM_IMPL(AS, TYPE) \
+_CLC_OVERLOAD _CLC_DEF TYPE __CLC_XCONCAT(atom_, __CLC_ATOMIC_OP) (AS TYPE *p, 
TYPE val) { \
+  return __CLC_XCONCAT(atomic_, __CLC_ATOMIC_OP) (p, val); \
+}
+
+__CLC_ATOM_IMPL(__CLC_ATOMIC_ADDRESS_SPACE, int)
+__CLC_ATOM_IMPL(__CLC_ATOMIC_ADDRESS_SPACE, uint)
+
+#undef __CLC_ATOM_IMPL
+#undef __CLC_ATOMIC_OP
+#undef __CLC_ATOMIC_ADDRESS_SPACE

Modified: libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_add.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_add.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_add.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_add.cl Thu 
Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_add(global TYPE *p, TYPE val) { \
-  return atomic_add(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP add
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_dec.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_dec.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_dec.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_dec.cl Thu 
Jun 21 12:27:33 2018
@@ -2,7 +2,7 @@
 
 #define IMPL(TYPE) \
 _CLC_OVERLOAD _CLC_DEF TYPE atom_dec(global TYPE *p) { \
-  return atom_sub(p, (TYPE)1); \
+  return atomic_dec(p); \
 }
 
 IMPL(int)

Modified: libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_inc.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_inc.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_inc.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_inc.cl Thu 
Jun 21 12:27:33 2018
@@ -2,7 +2,7 @@
 
 #define IMPL(TYPE) \
 _CLC_OVERLOAD _CLC_DEF TYPE atom_inc(global TYPE *p) { \
-  return atom_add(p, (TYPE)1); \
+  return atomic_inc(p); \
 }
 
 IMPL(int)

Modified: libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_sub.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_sub.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_sub.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_sub.cl Thu 
Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_sub(global TYPE *p, TYPE val) { \
-  return atomic_sub(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP sub
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_xchg.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_xchg.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_xchg.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_base_atomics/atom_xchg.cl Thu 
Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_xchg(global TYPE *p, TYPE val) { \
-  return atomic_xchg(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP xchg
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_and.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_and.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_and.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_and.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_and(global TYPE *p, TYPE val) { \
-  return atomic_and(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
\ No newline at end of file
+#define __CLC_ATOMIC_OP and
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_max.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_max.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_max.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_max.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_max(global TYPE *p, TYPE val) { \
-  return atomic_max(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP max
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_min.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_min.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_min.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_min.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_min(global TYPE *p, TYPE val) { \
-  return atomic_min(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP min
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_or.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_or.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_or.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_or.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_or(global TYPE *p, TYPE val) { \
-  return atomic_or(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP or
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_xor.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_xor.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_xor.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_global_int32_extended_atomics/atom_xor.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_xor(global TYPE *p, TYPE val) { \
-  return atomic_xor(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP xor
+#define __CLC_ATOMIC_ADDRESS_SPACE global
+#include "../atom_int32_binary.inc"

Modified: libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_add.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_add.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_add.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_add.cl Thu 
Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_add(local TYPE *p, TYPE val) { \
-  return atomic_add(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP add
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"

Modified: libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_dec.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_dec.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_dec.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_dec.cl Thu 
Jun 21 12:27:33 2018
@@ -2,7 +2,7 @@
 
 #define IMPL(TYPE) \
 _CLC_OVERLOAD _CLC_DEF TYPE atom_dec(local TYPE *p) { \
-  return atom_sub(p, (TYPE)1); \
+  return atomic_dec(p); \
 }
 
 IMPL(int)

Modified: libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_inc.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_inc.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_inc.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_inc.cl Thu 
Jun 21 12:27:33 2018
@@ -2,7 +2,7 @@
 
 #define IMPL(TYPE) \
 _CLC_OVERLOAD _CLC_DEF TYPE atom_inc(local TYPE *p) { \
-  return atom_add(p, (TYPE)1); \
+  return atomic_inc(p); \
 }
 
 IMPL(int)

Modified: libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_sub.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_sub.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_sub.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_sub.cl Thu 
Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_sub(local TYPE *p, TYPE val) { \
-  return atomic_sub(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP sub
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"

Modified: libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_xchg.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_xchg.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_xchg.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_base_atomics/atom_xchg.cl Thu 
Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_xchg(local TYPE *p, TYPE val) { \
-  return atomic_xchg(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP xchg
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_and.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_and.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_and.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_and.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_and(local TYPE *p, TYPE val) { \
-  return atomic_and(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
\ No newline at end of file
+#define __CLC_ATOMIC_OP and
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_max.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_max.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_max.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_max.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_max(local TYPE *p, TYPE val) { \
-  return atomic_max(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP max
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_min.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_min.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_min.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_min.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_min(local TYPE *p, TYPE val) { \
-  return atomic_min(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP min
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_or.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_or.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_or.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_or.cl Thu 
Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_or(local TYPE *p, TYPE val) { \
-  return atomic_or(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP or
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"

Modified: 
libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_xor.cl
URL: 
http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_xor.cl?rev=335279&r1=335278&r2=335279&view=diff
==============================================================================
--- libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_xor.cl 
(original)
+++ libclc/trunk/generic/lib/cl_khr_local_int32_extended_atomics/atom_xor.cl 
Thu Jun 21 12:27:33 2018
@@ -1,9 +1,3 @@
-#include <clc/clc.h>
-
-#define IMPL(TYPE) \
-_CLC_OVERLOAD _CLC_DEF TYPE atom_xor(local TYPE *p, TYPE val) { \
-  return atomic_xor(p, val); \
-}
-
-IMPL(int)
-IMPL(unsigned int)
+#define __CLC_ATOMIC_OP xor
+#define __CLC_ATOMIC_ADDRESS_SPACE local
+#include "../atom_int32_binary.inc"


_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to