; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 103
; 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 %x_GLF_color "x_GLF_color"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_float_values"
               OpName %x_5 "x_5"
               OpName %buf1 "buf1"
               OpMemberName %buf1 0 "x_GLF_uniform_int_values"
               OpName %x_8 "x_8"
               OpName %main_1 "main_1"
               OpName %a "a"
               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_5 NonWritable
               OpDecorate %x_5 DescriptorSet 0
               OpDecorate %x_5 Binding 0
               OpDecorate %buf1 Block
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %_arr_int_uint_2 ArrayStride 16
               OpDecorate %x_8 NonWritable
               OpDecorate %x_8 DescriptorSet 0
               OpDecorate %x_8 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
%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %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_5 = OpVariable %_ptr_Uniform_buf0 Uniform
        %int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
       %buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
        %x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
       %void = OpTypeVoid
         %19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
         %25 = OpConstantNull %float
     %uint_0 = OpConstant %uint 0
      %int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
      %int_0 = OpConstant %int 0
%float_0_200000003 = OpConstant %float 0.200000003
       %bool = OpTypeBool
    %float_0 = OpConstant %float 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
   %main_out = OpTypeStruct %v4float
         %92 = OpTypeFunction %main_out
     %main_1 = OpFunction %void None %19
         %22 = OpLabel
          %a = OpVariable %_ptr_Function_float Function %25
         %29 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_1
         %30 = OpLoad %float %29
         %31 = OpCompositeConstruct %v4float %30 %30 %30 %30
               OpStore %x_GLF_color %31
         %33 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %34 = OpLoad %float %33
               OpStore %a %34
               OpBranch %35
         %35 = OpLabel
               OpLoopMerge %36 %37 None
               OpBranch %38
         %38 = OpLabel
         %39 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %40 = OpLoad %float %39
         %41 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %42 = OpLoad %float %41
         %44 = OpFDiv %float %40 %float_0_200000003
         %45 = OpFOrdLessThan %bool %44 %42
               OpSelectionMerge %47 None
               OpBranchConditional %45 %48 %47
         %48 = OpLabel
               OpReturn
         %47 = OpLabel
         %49 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %50 = OpLoad %float %49
         %51 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %52 = OpLoad %float %51
         %53 = OpFDiv %float %50 %float_0_200000003
         %54 = OpFOrdLessThan %bool %53 %52
               OpSelectionMerge %55 None
               OpBranchConditional %54 %56 %55
         %56 = OpLabel
               OpReturn
         %55 = OpLabel
         %57 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %58 = OpLoad %float %57
         %59 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %60 = OpLoad %float %59
         %61 = OpFDiv %float %58 %float_0_200000003
         %62 = OpFOrdLessThan %bool %61 %60
               OpSelectionMerge %63 None
               OpBranchConditional %62 %64 %63
         %64 = OpLabel
               OpReturn
         %63 = OpLabel
         %65 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %66 = OpLoad %float %65
         %67 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %68 = OpLoad %float %67
         %69 = OpFDiv %float %66 %float_0_200000003
         %70 = OpFOrdLessThan %bool %69 %68
               OpSelectionMerge %71 None
               OpBranchConditional %70 %72 %73
         %72 = OpLabel
               OpReturn
         %73 = OpLabel
               OpStore %a %float_0
               OpBranch %71
         %71 = OpLabel
               OpBranch %37
         %37 = OpLabel
         %75 = OpLoad %float %a
         %77 = OpFOrdEqual %bool %75 %float_0
         %76 = OpLogicalNot %bool %77
               OpBranchConditional %76 %35 %36
         %36 = OpLabel
         %79 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_1
         %80 = OpLoad %int %79
         %81 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_0
         %82 = OpLoad %int %81
         %83 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_0
         %84 = OpLoad %int %83
         %85 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_1
         %86 = OpLoad %int %85
         %87 = OpConvertSToF %float %80
         %88 = OpConvertSToF %float %82
         %89 = OpConvertSToF %float %84
         %90 = OpConvertSToF %float %86
         %91 = OpCompositeConstruct %v4float %87 %88 %89 %90
               OpStore %x_GLF_color %91
               OpReturn
               OpFunctionEnd
 %main_inner = OpFunction %main_out None %92
         %95 = OpLabel
         %96 = OpFunctionCall %void %main_1
         %97 = OpLoad %v4float %x_GLF_color
         %98 = OpCompositeConstruct %main_out %97
               OpReturnValue %98
               OpFunctionEnd
       %main = OpFunction %void None %19
        %100 = OpLabel
        %101 = OpFunctionCall %main_out %main_inner
        %102 = OpCompositeExtract %v4float %101 0
               OpStore %x_GLF_color_1_1 %102
               OpReturn
               OpFunctionEnd
