Skip to content

Commit 109a845

Browse files
committed
format new files
1 parent b555211 commit 109a845

File tree

3 files changed

+119
-110
lines changed

3 files changed

+119
-110
lines changed

libclc/ptx-nvidiacl/libspirv/atomic/atomic_max.cl

Lines changed: 52 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -21,53 +21,59 @@ __CLC_NVVM_ATOMIC(unsigned long, m, unsigned long, ul, max,
2121
#undef __CLC_NVVM_ATOMIC
2222
#undef __CLC_NVVM_ATOMIC_IMPL
2323

24-
#define __CLC_NVVM_ATOMIC_MAX_IMPL(TYPE, TYPE_MANGLED, TYPE_INT, TYPE_INT_MANGLED, OP_MANGLED, \
25-
ADDR_SPACE, ADDR_SPACE_MANGLED) \
26-
TYPE_INT _Z18__spirv_AtomicLoadPU3##ADDR_SPACE_MANGLED##K##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagE( \
27-
volatile ADDR_SPACE const TYPE_INT *, enum Scope, \
28-
enum MemorySemanticsMask); \
29-
TYPE_INT \
30-
_Z29__spirv_AtomicCompareExchange##PU3##ADDR_SPACE_MANGLED##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagES5_##TYPE_INT_MANGLED##TYPE_INT_MANGLED( \
31-
volatile ADDR_SPACE TYPE_INT *, enum Scope, enum MemorySemanticsMask, enum MemorySemanticsMask, \
32-
TYPE_INT, TYPE_INT); \
33-
_CLC_DECL TYPE \
34-
_Z21__spirv_Atomic##OP_MANGLED##PU3##ADDR_SPACE_MANGLED##TYPE_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagE##TYPE_MANGLED( \
35-
volatile ADDR_SPACE TYPE *pointer, enum Scope scope, \
36-
enum MemorySemanticsMask semantics, TYPE val) { \
37-
enum MemorySemanticsMask load_order; \
38-
switch (semantics) { \
39-
case SequentiallyConsistent: \
40-
load_order = SequentiallyConsistent; \
41-
break; \
42-
case Acquire: \
43-
case AcquireRelease: \
44-
load_order = Acquire; \
45-
break; \
46-
default: \
47-
load_order = None; \
48-
} \
49-
volatile ADDR_SPACE TYPE_INT* pointer_int = (volatile ADDR_SPACE TYPE_INT *)pointer; \
50-
TYPE_INT val_int = *(TYPE_INT*)&val; \
51-
TYPE_INT old_int = _Z18__spirv_AtomicLoadPU3##ADDR_SPACE_MANGLED##K##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagE( \
52-
pointer_int, scope, load_order); \
53-
TYPE old = *(TYPE*)&old_int; \
54-
while (val > old) { \
55-
TYPE_INT tmp_int = _Z29__spirv_AtomicCompareExchange##PU3##ADDR_SPACE_MANGLED##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagES5_##TYPE_INT_MANGLED##TYPE_INT_MANGLED( \
56-
pointer_int, scope, semantics, semantics, val_int, old_int); \
57-
if(old_int == tmp_int){ \
58-
return *(TYPE*)&tmp_int; \
59-
} \
60-
old_int = tmp_int; \
61-
old = *(TYPE*)&old_int; \
62-
} \
63-
return old; \
24+
#define __CLC_NVVM_ATOMIC_MAX_IMPL(TYPE, TYPE_MANGLED, TYPE_INT, \
25+
TYPE_INT_MANGLED, OP_MANGLED, ADDR_SPACE, \
26+
ADDR_SPACE_MANGLED) \
27+
TYPE_INT \
28+
_Z18__spirv_AtomicLoadPU3##ADDR_SPACE_MANGLED##K##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagE( \
29+
volatile ADDR_SPACE const TYPE_INT *, enum Scope, \
30+
enum MemorySemanticsMask); \
31+
TYPE_INT \
32+
_Z29__spirv_AtomicCompareExchange##PU3##ADDR_SPACE_MANGLED##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagES5_##TYPE_INT_MANGLED##TYPE_INT_MANGLED( \
33+
volatile ADDR_SPACE TYPE_INT *, enum Scope, enum MemorySemanticsMask, \
34+
enum MemorySemanticsMask, TYPE_INT, TYPE_INT); \
35+
_CLC_DECL TYPE \
36+
_Z21__spirv_Atomic##OP_MANGLED##PU3##ADDR_SPACE_MANGLED##TYPE_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagE##TYPE_MANGLED( \
37+
volatile ADDR_SPACE TYPE *pointer, enum Scope scope, \
38+
enum MemorySemanticsMask semantics, TYPE val) { \
39+
enum MemorySemanticsMask load_order; \
40+
switch (semantics) { \
41+
case SequentiallyConsistent: \
42+
load_order = SequentiallyConsistent; \
43+
break; \
44+
case Acquire: \
45+
case AcquireRelease: \
46+
load_order = Acquire; \
47+
break; \
48+
default: \
49+
load_order = None; \
50+
} \
51+
volatile ADDR_SPACE TYPE_INT *pointer_int = \
52+
(volatile ADDR_SPACE TYPE_INT *)pointer; \
53+
TYPE_INT val_int = *(TYPE_INT *)&val; \
54+
TYPE_INT old_int = \
55+
_Z18__spirv_AtomicLoadPU3##ADDR_SPACE_MANGLED##K##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagE( \
56+
pointer_int, scope, load_order); \
57+
TYPE old = *(TYPE *)&old_int; \
58+
while (val > old) { \
59+
TYPE_INT tmp_int = \
60+
_Z29__spirv_AtomicCompareExchange##PU3##ADDR_SPACE_MANGLED##TYPE_INT_MANGLED##N5__spv5Scope4FlagENS1_19MemorySemanticsMask4FlagES5_##TYPE_INT_MANGLED##TYPE_INT_MANGLED( \
61+
pointer_int, scope, semantics, semantics, val_int, old_int); \
62+
if (old_int == tmp_int) { \
63+
return *(TYPE *)&tmp_int; \
64+
} \
65+
old_int = tmp_int; \
66+
old = *(TYPE *)&old_int; \
67+
} \
68+
return old; \
6469
}
6570

66-
#define __CLC_NVVM_ATOMIC_MAX(TYPE, TYPE_MANGLED, TYPE_INT, TYPE_INT_MANGLED, OP_MANGLED) \
67-
__CLC_NVVM_ATOMIC_MAX_IMPL(TYPE, TYPE_MANGLED, TYPE_INT, TYPE_INT_MANGLED, OP_MANGLED, __global, \
68-
AS1) \
69-
__CLC_NVVM_ATOMIC_MAX_IMPL(TYPE, TYPE_MANGLED, TYPE_INT, TYPE_INT_MANGLED, OP_MANGLED, __local, \
70-
AS3)
71-
71+
#define __CLC_NVVM_ATOMIC_MAX(TYPE, TYPE_MANGLED, TYPE_INT, TYPE_INT_MANGLED, \
72+
OP_MANGLED) \
73+
__CLC_NVVM_ATOMIC_MAX_IMPL(TYPE, TYPE_MANGLED, TYPE_INT, TYPE_INT_MANGLED, \
74+
OP_MANGLED, __global, AS1) \
75+
__CLC_NVVM_ATOMIC_MAX_IMPL(TYPE, TYPE_MANGLED, TYPE_INT, TYPE_INT_MANGLED, \
76+
OP_MANGLED, __local, AS3)
77+
7278
__CLC_NVVM_ATOMIC_MAX(float, f, int, i, FMaxEXT)
7379
__CLC_NVVM_ATOMIC_MAX(double, d, long, l, FMaxEXT)

0 commit comments

Comments
 (0)