Commit correct atomics tests

This commit is contained in:
Matt Pharr
2011-08-26 10:43:30 -07:00
parent 72a2f5d2f4
commit 84e586e767
2 changed files with 10 additions and 8 deletions

View File

@@ -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);
} }

View File

@@ -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;
} }