Files
UnrealEngine/Engine/Source/ThirdParty/Intel/ISPC/ispc-1.24.0/tests/ptr-22.ispc
2025-05-18 13:04:45 +08:00

26 lines
621 B
Plaintext

#include "../test_static.isph"
struct Foo {
int a;
uniform float b;
};
void update(varying Foo * varying fp) {
++fp;
#pragma ignore warning(perf)
fp->a -= 1;
// Revisit: this should be no different from writing to any uniform
// variable. So, writing to same location warning might be not needed
#pragma ignore warning
fp->b = 1;
}
task void f_f(uniform float RET[], uniform float aFOO[]) {
Foo f[2] = { { 1234, 4321 }, { aFOO[programIndex], 5 } };
update(f);
RET[programIndex] = f[1].a;
}
task void result(uniform float RET[]) {
RET[programIndex] = programIndex;
}