#version 450 layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; layout(binding = 0, std430) buffer BUF { int a; int b; int d; } o; void main() { int _44; _44 = o.a; int _41; for (;;) { int _48; bool _22_ladder_break = false; switch (_44) { case 5: { for (;;) { bool _30_ladder_break = false; switch (o.d) { case 10: case 20: { _30_ladder_break = true; break; } default: { continue; } } if (_30_ladder_break) { break; } } _48 = _44 + _44; break; } case 1: case 2: case 3: { _22_ladder_break = true; break; } default: { _48 = _44; break; } } if (_22_ladder_break) { break; } _41 = _48 + 1; _44 = _41; continue; } o.b = _44; }