edbe867b74
All tests pass now. Still need to handle OpFunction, atomics, OpPhi, etc ...
52 lines
910 B
Plaintext
52 lines
910 B
Plaintext
#version 310 es
|
|
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
|
|
|
layout(binding = 0, std430) buffer SSBO
|
|
{
|
|
mat4 mvp;
|
|
vec4 in_data[];
|
|
} _24;
|
|
|
|
layout(binding = 1, std430) buffer SSBO2
|
|
{
|
|
vec4 out_data[];
|
|
} _89;
|
|
|
|
void main()
|
|
{
|
|
uint ident = gl_GlobalInvocationID.x;
|
|
vec4 idat = _24.in_data[ident];
|
|
int k = 0;
|
|
for (;;)
|
|
{
|
|
int _39 = k;
|
|
int _40 = _39 + 1;
|
|
k = _40;
|
|
if ((_40 < 10))
|
|
{
|
|
idat = (idat * 2.0);
|
|
k = (k + 1);
|
|
continue;
|
|
}
|
|
else
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
uint i = 0u;
|
|
for (; (i < 16u); i = (i + uint(1)), k = (k + 1))
|
|
{
|
|
uint j = 0u;
|
|
for (; (j < 30u); j = (j + uint(1)))
|
|
{
|
|
idat = (_24.mvp * idat);
|
|
}
|
|
}
|
|
do
|
|
{
|
|
k = (k + 1);
|
|
} while ((k > 10));
|
|
_89.out_data[ident] = idat;
|
|
}
|
|
|