SPIRV-Cross/reference/shaders/comp/loop.comp

111 lines
1.9 KiB
Plaintext
Raw Normal View History

2016-03-02 17:09:16 +00:00
#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[];
} _177;
2016-03-02 17:09:16 +00:00
void main()
{
uint ident = gl_GlobalInvocationID.x;
vec4 idat = _24.in_data[ident];
int k = 0;
uint i = 0u;
uint i_1;
2016-03-02 17:09:16 +00:00
uint j;
int l;
if ((idat.y == 20.0))
{
do
{
k = (k * 2);
i = (i + uint(1));
} while ((i < ident));
}
switch (k)
{
case 10:
{
for (;;)
{
i = (i + uint(1));
if ((i > 10u))
{
break;
}
continue;
}
break;
}
default:
{
for (;;)
{
i = (i + 2u);
if ((i > 20u))
{
break;
}
continue;
}
break;
}
}
2016-03-02 17:09:16 +00:00
while ((k < 10))
{
idat = (idat * 2.0);
2016-03-02 17:09:16 +00:00
k = (k + 1);
}
i_1 = 0u;
for (; (i_1 < 16u); i_1 = (i_1 + uint(1)), k = (k + 1))
2016-03-02 17:09:16 +00:00
{
j = 0u;
for (; (j < 30u); j = (j + uint(1)))
{
idat = (_24.mvp * idat);
}
}
k = 0;
for (;;)
{
k = (k + 1);
if ((k > 10))
{
k = (k + 2);
}
else
{
k = (k + 3);
continue;
}
k = (k + 10);
continue;
}
k = 0;
do
{
k = (k + 1);
} while ((k > 10));
l = 0;
for (;;)
{
if ((l == 5))
{
l = (l + 1);
continue;
}
idat = (idat + vec4(1.0));
2016-03-02 17:09:16 +00:00
l = (l + 1);
continue;
}
_177.out_data[ident] = idat;
2016-03-02 17:09:16 +00:00
}