Add more tests of basic gather functionality.
This commit is contained in:
17
tests/gather-double-1.ispc
Normal file
17
tests/gather-double-1.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
17
tests/gather-double-2.ispc
Normal file
17
tests/gather-double-2.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
21
tests/gather-double-3.ispc
Normal file
21
tests/gather-double-3.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
21
tests/gather-double-4.ispc
Normal file
21
tests/gather-double-4.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
19
tests/gather-double-5.ispc
Normal file
19
tests/gather-double-5.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
double *ptr = (aFOO[0] == 1234) ? (double * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
19
tests/gather-double-6.ispc
Normal file
19
tests/gather-double-6.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
double *ptr = (aFOO[0] == 1234) ? (double * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
23
tests/gather-double-7.ispc
Normal file
23
tests/gather-double-7.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
double *ptr = (aFOO[0] == 1234) ? (double * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
23
tests/gather-double-8.ispc
Normal file
23
tests/gather-double-8.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform double a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
double *ptr = (aFOO[0] == 1234) ? (double * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
17
tests/gather-float-1.ispc
Normal file
17
tests/gather-float-1.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
17
tests/gather-float-2.ispc
Normal file
17
tests/gather-float-2.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
21
tests/gather-float-3.ispc
Normal file
21
tests/gather-float-3.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
21
tests/gather-float-4.ispc
Normal file
21
tests/gather-float-4.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
19
tests/gather-float-5.ispc
Normal file
19
tests/gather-float-5.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
float *ptr = (aFOO[0] == 1234) ? (float * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
19
tests/gather-float-6.ispc
Normal file
19
tests/gather-float-6.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
float *ptr = (aFOO[0] == 1234) ? (float * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
23
tests/gather-float-7.ispc
Normal file
23
tests/gather-float-7.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
float *ptr = (aFOO[0] == 1234) ? (float * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
23
tests/gather-float-8.ispc
Normal file
23
tests/gather-float-8.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform float a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
float *ptr = (aFOO[0] == 1234) ? (float * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
@@ -1,19 +1,17 @@
|
|||||||
|
|
||||||
export uniform int width() { return programCount; }
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
export void f_fu(uniform float RET[], uniform float aFOO[], uniform float b) {
|
int zero = 0;
|
||||||
uniform int16 x[programCount];
|
|
||||||
x[programIndex] = programIndex;
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
int a = aFOO[programIndex]-1;
|
uniform int16 a[programCount];
|
||||||
unsigned int16 v;
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
if (programIndex < 2)
|
a[i] = aFOO[i];
|
||||||
v = x[a];
|
|
||||||
else
|
int g = a[programIndex+zero];
|
||||||
v = 2;
|
RET[programIndex] = g;
|
||||||
RET[programIndex] = v;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export void result(uniform float RET[]) {
|
export void result(uniform float RET[]) {
|
||||||
RET[programIndex] = 2;
|
RET[programIndex] = 1 + programIndex;
|
||||||
RET[0] = 0;
|
|
||||||
RET[1] = 1;
|
|
||||||
}
|
}
|
||||||
|
|||||||
17
tests/gather-int16-2.ispc
Normal file
17
tests/gather-int16-2.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int16 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
21
tests/gather-int16-3.ispc
Normal file
21
tests/gather-int16-3.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int16 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
21
tests/gather-int16-4.ispc
Normal file
21
tests/gather-int16-4.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int16 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
19
tests/gather-int16-5.ispc
Normal file
19
tests/gather-int16-5.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int16 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int16 *ptr = (aFOO[0] == 1234) ? (int16 * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
19
tests/gather-int16-6.ispc
Normal file
19
tests/gather-int16-6.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int16 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int16 *ptr = (aFOO[0] == 1234) ? (int16 * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
23
tests/gather-int16-7.ispc
Normal file
23
tests/gather-int16-7.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int16 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int16 *ptr = (aFOO[0] == 1234) ? (int16 * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
23
tests/gather-int16-8.ispc
Normal file
23
tests/gather-int16-8.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int16 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int16 *ptr = (aFOO[0] == 1234) ? (int16 * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
17
tests/gather-int32-1.ispc
Normal file
17
tests/gather-int32-1.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
17
tests/gather-int32-2.ispc
Normal file
17
tests/gather-int32-2.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
21
tests/gather-int32-3.ispc
Normal file
21
tests/gather-int32-3.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
21
tests/gather-int32-4.ispc
Normal file
21
tests/gather-int32-4.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
19
tests/gather-int32-5.ispc
Normal file
19
tests/gather-int32-5.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int *ptr = (aFOO[0] == 1234) ? (int * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
19
tests/gather-int32-6.ispc
Normal file
19
tests/gather-int32-6.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int *ptr = (aFOO[0] == 1234) ? (int * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
23
tests/gather-int32-7.ispc
Normal file
23
tests/gather-int32-7.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int *ptr = (aFOO[0] == 1234) ? (int * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
23
tests/gather-int32-8.ispc
Normal file
23
tests/gather-int32-8.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int *ptr = (aFOO[0] == 1234) ? (int * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
17
tests/gather-int64-1.ispc
Normal file
17
tests/gather-int64-1.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
17
tests/gather-int64-2.ispc
Normal file
17
tests/gather-int64-2.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
21
tests/gather-int64-3.ispc
Normal file
21
tests/gather-int64-3.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
21
tests/gather-int64-4.ispc
Normal file
21
tests/gather-int64-4.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
19
tests/gather-int64-5.ispc
Normal file
19
tests/gather-int64-5.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int64 *ptr = (aFOO[0] == 1234) ? (int64 * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
19
tests/gather-int64-6.ispc
Normal file
19
tests/gather-int64-6.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int64 *ptr = (aFOO[0] == 1234) ? (int64 * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
23
tests/gather-int64-7.ispc
Normal file
23
tests/gather-int64-7.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int64 *ptr = (aFOO[0] == 1234) ? (int64 * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
23
tests/gather-int64-8.ispc
Normal file
23
tests/gather-int64-8.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int64 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int64 *ptr = (aFOO[0] == 1234) ? (int64 * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
@@ -1,19 +1,17 @@
|
|||||||
|
|
||||||
export uniform int width() { return programCount; }
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
export void f_fu(uniform float RET[], uniform float aFOO[], uniform float b) {
|
int zero = 0;
|
||||||
uniform int8 x[programCount];
|
|
||||||
x[programIndex] = programIndex;
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
int a = aFOO[programIndex]-1;
|
uniform int8 a[programCount];
|
||||||
unsigned int8 v;
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
if (programIndex < 2)
|
a[i] = aFOO[i];
|
||||||
v = x[a];
|
|
||||||
else
|
int g = a[programIndex+zero];
|
||||||
v = 2;
|
RET[programIndex] = g;
|
||||||
RET[programIndex] = v;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export void result(uniform float RET[]) {
|
export void result(uniform float RET[]) {
|
||||||
RET[programIndex] = 2;
|
RET[programIndex] = 1 + programIndex;
|
||||||
RET[0] = 0;
|
|
||||||
RET[1] = 1;
|
|
||||||
}
|
}
|
||||||
|
|||||||
17
tests/gather-int8-2.ispc
Normal file
17
tests/gather-int8-2.ispc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int8 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
21
tests/gather-int8-3.ispc
Normal file
21
tests/gather-int8-3.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int8 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
21
tests/gather-int8-4.ispc
Normal file
21
tests/gather-int8-4.ispc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int8 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = a[programIndex+zero];
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
19
tests/gather-int8-5.ispc
Normal file
19
tests/gather-int8-5.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int8 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int8 *ptr = (aFOO[0] == 1234) ? (int8 * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
19
tests/gather-int8-6.ispc
Normal file
19
tests/gather-int8-6.ispc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int8 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int8 *ptr = (aFOO[0] == 1234) ? (int8 * varying)gptr : (a + programIndex);
|
||||||
|
int g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 1 + programIndex;
|
||||||
|
}
|
||||||
23
tests/gather-int8-7.ispc
Normal file
23
tests/gather-int8-7.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int8 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int8 *ptr = (aFOO[0] == 1234) ? (int8 * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
23
tests/gather-int8-8.ispc
Normal file
23
tests/gather-int8-8.ispc
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
export uniform int width() { return programCount; }
|
||||||
|
|
||||||
|
int64 zero = 0;
|
||||||
|
void *gptr;
|
||||||
|
|
||||||
|
export void f_f(uniform float RET[], uniform float aFOO[]) {
|
||||||
|
uniform int8 a[programCount];
|
||||||
|
for (uniform int i = 0; i < programCount; ++i)
|
||||||
|
a[i] = aFOO[i];
|
||||||
|
|
||||||
|
int g = 0;
|
||||||
|
int8 *ptr = (aFOO[0] == 1234) ? (int8 * varying)gptr : (a + programIndex);
|
||||||
|
if (programIndex < 2)
|
||||||
|
g = *ptr;
|
||||||
|
RET[programIndex] = g;
|
||||||
|
}
|
||||||
|
|
||||||
|
export void result(uniform float RET[]) {
|
||||||
|
RET[programIndex] = 0;
|
||||||
|
RET[0] = 1;
|
||||||
|
RET[1] = 2;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user