Commit correct atomics tests
This commit is contained in:
@@ -1,14 +1,14 @@
|
|||||||
|
|
||||||
export uniform int width() { return programCount; }
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
uniform int64 s = 0;
|
uniform int32 s = 0;
|
||||||
|
|
||||||
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
float a = aFOO[programIndex];
|
int32 a = aFOO[programIndex];
|
||||||
float b = atomic_add_global(s, 1);
|
float b = atomic_min_global(s, a);
|
||||||
RET[programIndex] = reduce_add(b);
|
RET[programIndex] = reduce_min(b);
|
||||||
}
|
}
|
||||||
|
|
||||||
export void result(uniform float RET[]) {
|
export void result(uniform float RET[]) {
|
||||||
RET[programIndex] = reduce_add(programIndex);
|
RET[programIndex] = reduce_min(programIndex);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,10 +5,12 @@ uniform int32 s = 0;
|
|||||||
|
|
||||||
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
int32 a = aFOO[programIndex];
|
int32 a = aFOO[programIndex];
|
||||||
float b = atomic_min_global(s, a);
|
int32 b = 0;
|
||||||
RET[programIndex] = reduce_min(b);
|
if (programIndex & 1)
|
||||||
|
b = atomic_max_global(s, a);
|
||||||
|
RET[programIndex] = s;
|
||||||
}
|
}
|
||||||
|
|
||||||
export void result(uniform float RET[]) {
|
export void result(uniform float RET[]) {
|
||||||
RET[programIndex] = reduce_min(programIndex);
|
RET[programIndex] = programCount;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user