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; }
uniform int64 s = 0;
uniform int32 s = 0;
export void f_f(uniform float RET[], uniform float aFOO[]) {
float a = aFOO[programIndex];
float b = atomic_add_global(s, 1);
RET[programIndex] = reduce_add(b);
int32 a = aFOO[programIndex];
float b = atomic_min_global(s, a);
RET[programIndex] = reduce_min(b);
}
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[]) {
int32 a = aFOO[programIndex];
float b = atomic_min_global(s, a);
RET[programIndex] = reduce_min(b);
int32 b = 0;
if (programIndex & 1)
b = atomic_max_global(s, a);
RET[programIndex] = s;
}
export void result(uniform float RET[]) {
RET[programIndex] = reduce_min(programIndex);
RET[programIndex] = programCount;
}