#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; }