| #version 310 es |
| precision mediump float; |
| precision highp int; |
| |
| struct B |
| { |
| float a; |
| float b; |
| }; |
| |
| layout(binding = 0, std140) uniform UBO |
| { |
| mediump int some_value; |
| } _51; |
| |
| void partial_inout(inout vec4 x) |
| { |
| x.x = 10.0; |
| } |
| |
| void complete_inout(out vec4 x) |
| { |
| x = vec4(50.0); |
| } |
| |
| void branchy_inout(inout vec4 v) |
| { |
| v.y = 20.0; |
| if (_51.some_value == 20) |
| { |
| v = vec4(50.0); |
| } |
| } |
| |
| void branchy_inout_2(out vec4 v) |
| { |
| if (_51.some_value == 20) |
| { |
| v = vec4(50.0); |
| } |
| else |
| { |
| v = vec4(70.0); |
| } |
| v.y = 20.0; |
| } |
| |
| void partial_inout(inout B b) |
| { |
| b.b = 40.0; |
| } |
| |
| void complete_inout(out B b) |
| { |
| b = B(100.0, 200.0); |
| } |
| |
| void branchy_inout(inout B b) |
| { |
| b.b = 20.0; |
| if (_51.some_value == 20) |
| { |
| b = B(10.0, 40.0); |
| } |
| } |
| |
| void branchy_inout_2(out B b) |
| { |
| if (_51.some_value == 20) |
| { |
| b = B(10.0, 40.0); |
| } |
| else |
| { |
| b = B(70.0, 70.0); |
| } |
| b.b = 20.0; |
| } |
| |
| void main() |
| { |
| vec4 a = vec4(10.0); |
| highp vec4 param = a; |
| partial_inout(param); |
| a = param; |
| highp vec4 param_1; |
| complete_inout(param_1); |
| a = param_1; |
| highp vec4 param_2 = a; |
| branchy_inout(param_2); |
| a = param_2; |
| highp vec4 param_3; |
| branchy_inout_2(param_3); |
| a = param_3; |
| B b = B(10.0, 20.0); |
| B param_4 = b; |
| partial_inout(param_4); |
| b = param_4; |
| B param_5; |
| complete_inout(param_5); |
| b = param_5; |
| B param_6 = b; |
| branchy_inout(param_6); |
| b = param_6; |
| B param_7; |
| branchy_inout_2(param_7); |
| b = param_7; |
| } |
| |