1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
#include "test_static.isph"
int * uniform ptr = NULL;
int func(int v) {
int ret;
// print("%\n", v);
switch (v) {
case 0:
ret = 1;
break;
case 1:
*ptr = 1;
}
return ret;
}
task void f_f(uniform float RET[], uniform float aFOO[]) {
int count = 10;
if (programIndex & 1)
count = 0x7ffffff;
RET[programIndex] = 0;
if (!(programIndex & 1))
RET[programIndex] = func(programIndex & 1);
}
task void result(uniform float RET[]) {
RET[programIndex] = !(programIndex & 1);
}
|