68f0257f26
This makes it easier to debug codegen for these shaders.
90 lines
1.7 KiB
Plaintext
90 lines
1.7 KiB
Plaintext
#version 450
|
|
|
|
#ifndef SPIRV_CROSS_CONSTANT_ID_0
|
|
#define SPIRV_CROSS_CONSTANT_ID_0 1u
|
|
#endif
|
|
#ifndef SPIRV_CROSS_CONSTANT_ID_1
|
|
#define SPIRV_CROSS_CONSTANT_ID_1 1u
|
|
#endif
|
|
#ifndef SPIRV_CROSS_CONSTANT_ID_2
|
|
#define SPIRV_CROSS_CONSTANT_ID_2 1u
|
|
#endif
|
|
|
|
layout(local_size_x = SPIRV_CROSS_CONSTANT_ID_0, local_size_y = SPIRV_CROSS_CONSTANT_ID_1, local_size_z = SPIRV_CROSS_CONSTANT_ID_2) in;
|
|
|
|
layout(binding = 0, std430) buffer _3_15
|
|
{
|
|
float _m0[];
|
|
} _15;
|
|
|
|
layout(binding = 1, std430) buffer _3_16
|
|
{
|
|
float _m0[];
|
|
} _16;
|
|
|
|
uvec3 _14 = gl_WorkGroupSize;
|
|
|
|
void main()
|
|
{
|
|
float _38_copy;
|
|
float _39;
|
|
uint _40;
|
|
float _70;
|
|
uint _71;
|
|
float _32 = _15._m0[0u];
|
|
uint _33 = 0u;
|
|
float _38;
|
|
for (;;)
|
|
{
|
|
_38 = _32;
|
|
_39 = _15._m0[35u];
|
|
_40 = 0u;
|
|
for (;;)
|
|
{
|
|
uint _44 = _40 + 1u;
|
|
float _46 = _15._m0[_44];
|
|
_15._m0[_40] = ((_39 + _38) + _46) / 3.0;
|
|
if (!(_40 < 34u))
|
|
{
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
_38_copy = _38;
|
|
_38 = _46;
|
|
_39 = _38_copy;
|
|
_40 = _44;
|
|
}
|
|
}
|
|
_15._m0[35u] = (_32 + (_38 + _15._m0[35u])) / 3.0;
|
|
if (!(_33 < 5u))
|
|
{
|
|
_70 = _15._m0[0u];
|
|
_71 = 1u;
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
_32 = _15._m0[0u];
|
|
_33++;
|
|
continue;
|
|
}
|
|
}
|
|
float _75;
|
|
for (;;)
|
|
{
|
|
_75 = (_70 < _15._m0[_71]) ? _15._m0[_71] : _70;
|
|
if (!(_71 < 35u))
|
|
{
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
_70 = _75;
|
|
_71++;
|
|
}
|
|
}
|
|
_16._m0[gl_GlobalInvocationID.x] = _75;
|
|
}
|
|
|