; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 120
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %tint_symbol_1
               OpExecutionMode %main OriginUpperLeft
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "one"
               OpName %x_11 "x_11"
               OpName %x_GLF_color "x_GLF_color"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %S "S"
               OpMemberName %S 0 "data"
               OpName %func_struct_S_i11_i1_ "func_struct_S_i11_i1_"
               OpName %s "s"
               OpName %x "x"
               OpName %main_1 "main_1"
               OpName %a "a"
               OpName %arr "arr"
               OpName %i "i"
               OpName %param "param"
               OpName %param_1 "param_1"
               OpName %param_2 "param_2"
               OpName %param_3 "param_3"
               OpName %main_out "main_out"
               OpMemberName %main_out 0 "x_GLF_color_1"
               OpName %tint_symbol_2 "tint_symbol_2"
               OpName %tint_symbol "tint_symbol"
               OpName %main "main"
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %x_11 NonWritable
               OpDecorate %x_11 DescriptorSet 0
               OpDecorate %x_11 Binding 0
               OpDecorate %tint_symbol_1 Location 0
               OpMemberDecorate %S 0 Offset 0
               OpDecorate %_arr_S_uint_1 ArrayStride 4
               OpMemberDecorate %main_out 0 Offset 0
        %int = OpTypeInt 32 1
       %buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
       %x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
          %9 = OpConstantNull %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
%_ptr_Output_v4float = OpTypePointer Output %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
          %S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
%_ptr_Function_int = OpTypePointer Function %int
         %12 = OpTypeFunction %int %_ptr_Function_S %_ptr_Function_int
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
      %int_1 = OpConstant %int 1
       %bool = OpTypeBool
      %int_0 = OpConstant %int 0
       %void = OpTypeVoid
         %40 = OpTypeFunction %void
         %45 = OpConstantNull %int
     %uint_1 = OpConstant %uint 1
%_arr_S_uint_1 = OpTypeArray %S %uint_1
%_ptr_Function__arr_S_uint_1 = OpTypePointer Function %_arr_S_uint_1
         %50 = OpConstantNull %_arr_S_uint_1
         %53 = OpConstantNull %S
%_ptr_Uniform_int = OpTypePointer Uniform %int
      %int_5 = OpConstant %int 5
      %int_2 = OpConstant %int 2
      %int_6 = OpConstant %int 6
    %float_1 = OpConstant %float 1
    %float_0 = OpConstant %float 0
        %106 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
        %107 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
   %main_out = OpTypeStruct %v4float
        %108 = OpTypeFunction %void %main_out
%func_struct_S_i11_i1_ = OpFunction %int None %12
          %s = OpFunctionParameter %_ptr_Function_S
          %x = OpFunctionParameter %_ptr_Function_int
         %19 = OpLabel
         %23 = OpAccessChain %_ptr_Function_int %s %uint_0
         %24 = OpLoad %int %23
         %26 = OpIEqual %bool %24 %int_1
               OpSelectionMerge %28 None
               OpBranchConditional %26 %29 %30
         %29 = OpLabel
         %32 = OpLoad %int %x
         %34 = OpAccessChain %_ptr_Function_int %s %uint_0
         %35 = OpLoad %int %34
         %36 = OpIAdd %int %32 %35
               OpReturnValue %36
         %30 = OpLabel
         %38 = OpLoad %int %x
               OpReturnValue %38
         %28 = OpLabel
               OpReturnValue %int_0
               OpFunctionEnd
     %main_1 = OpFunction %void None %40
         %43 = OpLabel
          %a = OpVariable %_ptr_Function_int Function %45
        %arr = OpVariable %_ptr_Function__arr_S_uint_1 Function %50
          %i = OpVariable %_ptr_Function_int Function %45
      %param = OpVariable %_ptr_Function_S Function %53
    %param_1 = OpVariable %_ptr_Function_int Function %45
    %param_2 = OpVariable %_ptr_Function_S Function %53
    %param_3 = OpVariable %_ptr_Function_int Function %45
               OpStore %a %int_0
         %58 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0
         %59 = OpLoad %int %58
         %60 = OpAccessChain %_ptr_Function_int %arr %int_0 %uint_0
               OpStore %60 %59
               OpStore %i %int_0
               OpBranch %61
         %61 = OpLabel
               OpLoopMerge %62 %63 None
               OpBranch %64
         %64 = OpLabel
         %65 = OpLoad %int %i
         %66 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0
         %67 = OpLoad %int %66
         %69 = OpIAdd %int %int_5 %67
         %70 = OpSLessThan %bool %65 %69
               OpSelectionMerge %71 None
               OpBranchConditional %70 %72 %73
         %72 = OpLabel
               OpBranch %71
         %73 = OpLabel
               OpBranch %62
         %71 = OpLabel
         %74 = OpLoad %int %i
         %76 = OpSMod %int %74 %int_2
         %77 = OpINotEqual %bool %76 %int_0
               OpSelectionMerge %78 None
               OpBranchConditional %77 %79 %80
         %79 = OpLabel
         %81 = OpAccessChain %_ptr_Function_S %arr %int_0
         %82 = OpLoad %S %81
               OpStore %param %82
         %83 = OpLoad %int %i
               OpStore %param_1 %83
         %84 = OpFunctionCall %int %func_struct_S_i11_i1_ %param %param_1
         %87 = OpLoad %S %param
         %88 = OpAccessChain %_ptr_Function_S %arr %int_0
               OpStore %88 %87
               OpStore %a %84
               OpBranch %78
         %80 = OpLabel
         %89 = OpAccessChain %_ptr_Function_S %arr %int_0
         %90 = OpLoad %S %89
               OpStore %param_2 %90
               OpStore %param_3 %int_1
         %91 = OpFunctionCall %int %func_struct_S_i11_i1_ %param_2 %param_3
         %94 = OpLoad %S %param_2
         %95 = OpAccessChain %_ptr_Function_S %arr %int_0
               OpStore %95 %94
               OpStore %a %91
               OpBranch %78
         %78 = OpLabel
               OpBranch %63
         %63 = OpLabel
         %96 = OpLoad %int %i
         %97 = OpIAdd %int %96 %int_1
               OpStore %i %97
               OpBranch %61
         %62 = OpLabel
         %98 = OpLoad %int %a
        %100 = OpIEqual %bool %98 %int_6
               OpSelectionMerge %101 None
               OpBranchConditional %100 %102 %103
        %102 = OpLabel
               OpStore %x_GLF_color %106
               OpBranch %101
        %103 = OpLabel
               OpStore %x_GLF_color %107
               OpBranch %101
        %101 = OpLabel
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %108
%tint_symbol = OpFunctionParameter %main_out
        %112 = OpLabel
        %113 = OpCompositeExtract %v4float %tint_symbol 0
               OpStore %tint_symbol_1 %113
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %40
        %115 = OpLabel
        %116 = OpFunctionCall %void %main_1
        %118 = OpLoad %v4float %x_GLF_color
        %119 = OpCompositeConstruct %main_out %118
        %117 = OpFunctionCall %void %tint_symbol_2 %119
               OpReturn
               OpFunctionEnd
