; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 110
; Schema: 0
               OpCapability Shader
         %69 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
               OpExecutionMode %main OriginUpperLeft
               OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_float_values"
               OpName %x_6 "x_6"
               OpName %buf1 "buf1"
               OpMemberName %buf1 0 "x_GLF_uniform_int_values"
               OpName %x_9 "x_9"
               OpName %x_GLF_color "x_GLF_color"
               OpName %main_1 "main_1"
               OpName %v1 "v1"
               OpName %i "i"
               OpName %a "a"
               OpName %indexable "indexable"
               OpName %indexable_1 "indexable_1"
               OpName %main_out "main_out"
               OpMemberName %main_out 0 "x_GLF_color_1"
               OpName %main_inner "main_inner"
               OpName %main "main"
               OpDecorate %x_GLF_color_1_1 Location 0
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %_arr_float_uint_2 ArrayStride 16
               OpDecorate %x_6 NonWritable
               OpDecorate %x_6 DescriptorSet 0
               OpDecorate %x_6 Binding 0
               OpDecorate %buf1 Block
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %_arr_int_uint_3 ArrayStride 16
               OpDecorate %x_9 NonWritable
               OpDecorate %x_9 DescriptorSet 0
               OpDecorate %x_9 Binding 1
               OpDecorate %_arr_v4float_uint_2 ArrayStride 16
               OpMemberDecorate %main_out 0 Offset 0
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %5 = OpConstantNull %v4float
%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
       %uint = OpTypeInt 32 0
     %uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
       %buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
        %int = OpTypeInt 32 1
     %uint_3 = OpConstant %uint 3
%_arr_int_uint_3 = OpTypeArray %int %uint_3
       %buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
        %x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
       %void = OpTypeVoid
         %20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
%_ptr_Function_int = OpTypePointer Function %int
         %28 = OpConstantNull %int
%_arr_v4float_uint_2 = OpTypeArray %v4float %uint_2
%_ptr_Function__arr_v4float_uint_2 = OpTypePointer Function %_arr_v4float_uint_2
         %33 = OpConstantNull %_arr_v4float_uint_2
     %uint_0 = OpConstant %uint 0
      %int_0 = OpConstant %int 0
%_ptr_Uniform_float = OpTypePointer Uniform %float
      %int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
       %bool = OpTypeBool
      %int_2 = OpConstant %int 2
    %float_1 = OpConstant %float 1
         %64 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
    %float_0 = OpConstant %float 0
         %66 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
         %67 = OpConstantComposite %_arr_v4float_uint_2 %64 %66
%_ptr_Function_float = OpTypePointer Function %float
   %main_out = OpTypeStruct %v4float
         %99 = OpTypeFunction %main_out
     %main_1 = OpFunction %void None %20
         %23 = OpLabel
         %v1 = OpVariable %_ptr_Function_v4float Function %5
          %i = OpVariable %_ptr_Function_int Function %28
          %a = OpVariable %_ptr_Function_int Function %28
  %indexable = OpVariable %_ptr_Function__arr_v4float_uint_2 Function %33
%indexable_1 = OpVariable %_ptr_Function__arr_v4float_uint_2 Function %33
         %38 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %39 = OpLoad %float %38
         %40 = OpCompositeConstruct %v4float %39 %39 %39 %39
               OpStore %v1 %40
         %43 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_1
         %44 = OpLoad %int %43
               OpStore %i %44
               OpBranch %45
         %45 = OpLabel
               OpLoopMerge %46 %47 None
               OpBranch %48
         %48 = OpLabel
         %49 = OpLoad %int %i
         %50 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_0
         %51 = OpLoad %int %50
         %52 = OpSLessThan %bool %49 %51
               OpSelectionMerge %54 None
               OpBranchConditional %52 %55 %56
         %55 = OpLabel
               OpBranch %54
         %56 = OpLabel
               OpBranch %46
         %54 = OpLabel
         %57 = OpLoad %int %i
         %58 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_1
         %59 = OpLoad %int %58
         %61 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_2
         %62 = OpLoad %int %61
               OpStore %indexable %67
         %68 = OpExtInst %int %69 SClamp %57 %59 %62
         %71 = OpAccessChain %_ptr_Function_float %indexable %68 %uint_0
         %72 = OpLoad %float %71
         %73 = OpConvertFToS %int %72
               OpStore %a %73
         %74 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %75 = OpLoad %float %74
         %76 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %77 = OpLoad %float %76
         %78 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %79 = OpLoad %float %78
         %80 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %81 = OpLoad %float %80
         %82 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %83 = OpLoad %float %82
         %84 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %85 = OpLoad %float %84
         %86 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %87 = OpLoad %float %86
         %88 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %89 = OpLoad %float %88
         %90 = OpLoad %int %a
         %91 = OpCompositeConstruct %v4float %75 %77 %79 %81
         %92 = OpCompositeConstruct %v4float %83 %85 %87 %89
         %93 = OpCompositeConstruct %_arr_v4float_uint_2 %91 %92
               OpStore %indexable_1 %93
         %94 = OpAccessChain %_ptr_Function_v4float %indexable_1 %90
         %95 = OpLoad %v4float %94
               OpStore %v1 %95
               OpBranch %47
         %47 = OpLabel
         %96 = OpLoad %int %i
         %97 = OpIAdd %int %96 %int_1
               OpStore %i %97
               OpBranch %45
         %46 = OpLabel
         %98 = OpLoad %v4float %v1
               OpStore %x_GLF_color %98
               OpReturn
               OpFunctionEnd
 %main_inner = OpFunction %main_out None %99
        %102 = OpLabel
        %103 = OpFunctionCall %void %main_1
        %104 = OpLoad %v4float %x_GLF_color
        %105 = OpCompositeConstruct %main_out %104
               OpReturnValue %105
               OpFunctionEnd
       %main = OpFunction %void None %20
        %107 = OpLabel
        %108 = OpFunctionCall %main_out %main_inner
        %109 = OpCompositeExtract %v4float %108 0
               OpStore %x_GLF_color_1_1 %109
               OpReturn
               OpFunctionEnd
