; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 100
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %tint_symbol_1
               OpExecutionMode %main OriginUpperLeft
               OpName %buf1 "buf1"
               OpMemberName %buf1 0 "x_GLF_uniform_float_values"
               OpName %x_6 "x_6"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_int_values"
               OpName %x_8 "x_8"
               OpName %x_GLF_color "x_GLF_color"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %main_1 "main_1"
               OpName %m32 "m32"
               OpName %sums "sums"
               OpName %x_52_phi "x_52_phi"
               OpName %x_53 "x_53"
               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 %buf1 Block
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %_arr_float_uint_2 ArrayStride 16
               OpDecorate %x_6 NonWritable
               OpDecorate %x_6 DescriptorSet 0
               OpDecorate %x_6 Binding 1
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %_arr_int_uint_3 ArrayStride 16
               OpDecorate %x_8 NonWritable
               OpDecorate %x_8 DescriptorSet 0
               OpDecorate %x_8 Binding 0
               OpDecorate %tint_symbol_1 Location 0
               OpDecorate %_arr_float_uint_3 ArrayStride 4
               OpMemberDecorate %main_out 0 Offset 0
      %float = OpTypeFloat 32
       %uint = OpTypeInt 32 0
     %uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
       %buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
        %x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
        %int = OpTypeInt 32 1
     %uint_3 = OpConstant %uint 3
%_arr_int_uint_3 = OpTypeArray %int %uint_3
       %buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
    %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
         %17 = OpConstantNull %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
%_ptr_Output_v4float = OpTypePointer Output %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
       %void = OpTypeVoid
         %20 = OpTypeFunction %void
    %v2float = OpTypeVector %float 2
%mat3v2float = OpTypeMatrix %v2float 3
%_ptr_Function_mat3v2float = OpTypePointer Function %mat3v2float
         %28 = OpConstantNull %mat3v2float
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%_ptr_Function__arr_float_uint_3 = OpTypePointer Function %_arr_float_uint_3
         %32 = OpConstantNull %_arr_float_uint_3
%_ptr_Function_int = OpTypePointer Function %int
         %35 = OpConstantNull %int
     %uint_0 = OpConstant %uint 0
      %int_0 = OpConstant %int 0
%_ptr_Uniform_float = OpTypePointer Uniform %float
    %float_0 = OpConstant %float 0
         %44 = OpConstantComposite %v2float %float_0 %float_0
%_ptr_Uniform_int = OpTypePointer Uniform %int
      %int_1 = OpConstant %int 1
       %bool = OpTypeBool
      %int_3 = OpConstant %int 3
%_ptr_Function_float = OpTypePointer Function %float
      %int_2 = OpConstant %int 2
   %main_out = OpTypeStruct %v4float
         %88 = OpTypeFunction %void %main_out
     %main_1 = OpFunction %void None %20
         %23 = OpLabel
        %m32 = OpVariable %_ptr_Function_mat3v2float Function %28
       %sums = OpVariable %_ptr_Function__arr_float_uint_3 Function %32
   %x_52_phi = OpVariable %_ptr_Function_int Function %35
       %x_53 = OpVariable %_ptr_Function_int Function %35
         %39 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %40 = OpLoad %float %39
         %42 = OpCompositeConstruct %v2float %40 %float_0
         %43 = OpCompositeConstruct %v2float %float_0 %40
         %45 = OpCompositeConstruct %mat3v2float %42 %43 %44
               OpStore %m32 %45
         %47 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_0
         %48 = OpLoad %int %47
         %50 = OpIEqual %bool %48 %int_1
               OpSelectionMerge %52 None
               OpBranchConditional %50 %53 %52
         %53 = OpLabel
         %56 = OpAccessChain %_ptr_Function_float %m32 %int_3 %48
               OpStore %56 %40
               OpBranch %52
         %52 = OpLabel
         %57 = OpCompositeConstruct %_arr_float_uint_3 %40 %40 %40
               OpStore %sums %57
               OpStore %x_52_phi %48
               OpBranch %58
         %58 = OpLabel
               OpLoopMerge %59 %60 None
               OpBranch %61
         %61 = OpLabel
         %63 = OpLoad %int %x_52_phi
         %65 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_2
         %66 = OpLoad %int %65
         %67 = OpSLessThan %bool %63 %66
               OpSelectionMerge %68 None
               OpBranchConditional %67 %69 %70
         %69 = OpLabel
               OpBranch %68
         %70 = OpLabel
               OpBranch %59
         %68 = OpLabel
               OpBranch %60
         %60 = OpLabel
         %71 = OpAccessChain %_ptr_Function_float %m32 %63 %48
         %72 = OpLoad %float %71
         %73 = OpAccessChain %_ptr_Function_float %sums %66
         %74 = OpLoad %float %73
         %75 = OpAccessChain %_ptr_Function_float %sums %66
         %76 = OpFAdd %float %74 %72
               OpStore %75 %76
         %77 = OpIAdd %int %63 %int_1
               OpStore %x_53 %77
         %78 = OpLoad %int %x_53
               OpStore %x_52_phi %78
               OpBranch %58
         %59 = OpLabel
         %79 = OpAccessChain %_ptr_Function_float %sums %48
         %80 = OpLoad %float %79
         %81 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %82 = OpLoad %float %81
         %83 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_1
         %84 = OpLoad %int %83
         %85 = OpAccessChain %_ptr_Function_float %sums %84
         %86 = OpLoad %float %85
         %87 = OpCompositeConstruct %v4float %80 %82 %82 %86
               OpStore %x_GLF_color %87
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %88
%tint_symbol = OpFunctionParameter %main_out
         %92 = OpLabel
         %93 = OpCompositeExtract %v4float %tint_symbol 0
               OpStore %tint_symbol_1 %93
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %20
         %95 = OpLabel
         %96 = OpFunctionCall %void %main_1
         %98 = OpLoad %v4float %x_GLF_color
         %99 = OpCompositeConstruct %main_out %98
         %97 = OpFunctionCall %void %tint_symbol_2 %99
               OpReturn
               OpFunctionEnd
