; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 111
; Schema: 0
               OpCapability Shader
               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_11 "x_11"
               OpName %x_GLF_color "x_GLF_color"
               OpName %main_1 "main_1"
               OpName %a "a"
               OpName %b "b"
               OpName %c "c"
               OpName %i "i"
               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_11 NonWritable
               OpDecorate %x_11 DescriptorSet 0
               OpDecorate %x_11 Binding 1
               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_11 = 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_float = OpTypePointer Function %float
         %26 = OpConstantNull %float
%_ptr_Function_int = OpTypePointer Function %int
         %31 = OpConstantNull %int
     %uint_0 = OpConstant %uint 0
      %int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%_ptr_Uniform_int = OpTypePointer Uniform %int
      %int_0 = OpConstant %int 0
       %bool = OpTypeBool
      %int_2 = OpConstant %int 2
   %main_out = OpTypeStruct %v4float
        %100 = OpTypeFunction %main_out
     %main_1 = OpFunction %void None %20
         %23 = OpLabel
          %a = OpVariable %_ptr_Function_float Function %26
          %b = OpVariable %_ptr_Function_float Function %26
          %c = OpVariable %_ptr_Function_float Function %26
          %i = OpVariable %_ptr_Function_int Function %31
         %35 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %36 = OpLoad %float %35
               OpStore %a %36
         %37 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %38 = OpLoad %float %37
               OpStore %b %38
         %39 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %40 = OpLoad %float %39
               OpStore %c %40
         %42 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_1
         %43 = OpLoad %int %42
               OpStore %i %43
               OpBranch %44
         %44 = OpLabel
               OpLoopMerge %45 %46 None
               OpBranch %47
         %47 = OpLabel
         %48 = OpLoad %int %i
         %50 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_0
         %51 = OpLoad %int %50
         %52 = OpSLessThan %bool %48 %51
               OpSelectionMerge %54 None
               OpBranchConditional %52 %55 %56
         %55 = OpLabel
               OpBranch %54
         %56 = OpLabel
               OpBranch %45
         %54 = OpLabel
         %57 = OpLoad %int %i
         %59 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_2
         %60 = OpLoad %int %59
         %61 = OpIEqual %bool %57 %60
               OpSelectionMerge %62 None
               OpBranchConditional %61 %63 %62
         %63 = OpLabel
         %64 = OpLoad %float %a
         %65 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %66 = OpLoad %float %65
         %67 = OpDPdx %float %64
         %68 = OpFAdd %float %67 %66
               OpStore %b %68
               OpBranch %62
         %62 = OpLabel
         %69 = OpLoad %float %a
         %70 = OpDPdx %float %69
               OpStore %c %70
         %71 = OpLoad %float %c
         %72 = OpLoad %float %b
         %73 = OpFDiv %float %71 %72
               OpStore %a %73
               OpBranch %46
         %46 = OpLabel
         %74 = OpLoad %int %i
         %75 = OpIAdd %int %74 %int_1
               OpStore %i %75
               OpBranch %44
         %45 = OpLabel
         %76 = OpLoad %float %a
         %77 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %78 = OpLoad %float %77
         %79 = OpFOrdEqual %bool %76 %78
               OpSelectionMerge %80 None
               OpBranchConditional %79 %81 %82
         %81 = OpLabel
         %83 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_2
         %84 = OpLoad %int %83
         %85 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_1
         %86 = OpLoad %int %85
         %87 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_1
         %88 = OpLoad %int %87
         %89 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_2
         %90 = OpLoad %int %89
         %91 = OpConvertSToF %float %84
         %92 = OpConvertSToF %float %86
         %93 = OpConvertSToF %float %88
         %94 = OpConvertSToF %float %90
         %95 = OpCompositeConstruct %v4float %91 %92 %93 %94
               OpStore %x_GLF_color %95
               OpBranch %80
         %82 = OpLabel
         %96 = OpAccessChain %_ptr_Uniform_int %x_11 %uint_0 %int_1
         %97 = OpLoad %int %96
         %98 = OpConvertSToF %float %97
         %99 = OpCompositeConstruct %v4float %98 %98 %98 %98
               OpStore %x_GLF_color %99
               OpBranch %80
         %80 = OpLabel
               OpReturn
               OpFunctionEnd
 %main_inner = OpFunction %main_out None %100
        %103 = OpLabel
        %104 = OpFunctionCall %void %main_1
        %105 = OpLoad %v4float %x_GLF_color
        %106 = OpCompositeConstruct %main_out %105
               OpReturnValue %106
               OpFunctionEnd
       %main = OpFunction %void None %20
        %108 = OpLabel
        %109 = OpFunctionCall %main_out %main_inner
        %110 = OpCompositeExtract %v4float %109 0
               OpStore %x_GLF_color_1_1 %110
               OpReturn
               OpFunctionEnd
