; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 70
; 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_8 "x_8"
               OpName %x_GLF_color "x_GLF_color"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %func_ "func_"
               OpName %ret "ret"
               OpName %i "i"
               OpName %main_1 "main_1"
               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_8 NonWritable
               OpDecorate %x_8 DescriptorSet 0
               OpDecorate %x_8 Binding 0
               OpDecorate %tint_symbol_1 Location 0
               OpMemberDecorate %main_out 0 Offset 0
        %int = OpTypeInt 32 1
       %buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_8 = 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
         %12 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
         %17 = OpConstantNull %int
      %int_0 = OpConstant %int 0
      %int_3 = OpConstant %int 3
      %int_1 = OpConstant %int 1
       %bool = OpTypeBool
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
       %void = OpTypeVoid
         %44 = OpTypeFunction %void
      %int_2 = OpConstant %int 2
    %float_1 = OpConstant %float 1
    %float_0 = OpConstant %float 0
         %56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
         %57 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
   %main_out = OpTypeStruct %v4float
         %58 = OpTypeFunction %void %main_out
      %func_ = OpFunction %int None %12
         %14 = OpLabel
        %ret = OpVariable %_ptr_Function_int Function %17
          %i = OpVariable %_ptr_Function_int Function %17
               OpStore %ret %int_0
               OpStore %i %int_3
               OpBranch %21
         %21 = OpLabel
               OpLoopMerge %22 %23 None
               OpBranch %24
         %24 = OpLabel
         %25 = OpLoad %int %i
         %26 = OpLoad %int %i
         %28 = OpBitwiseAnd %int %26 %int_1
         %29 = OpSGreaterThan %bool %25 %28
               OpSelectionMerge %31 None
               OpBranchConditional %29 %32 %33
         %32 = OpLabel
               OpBranch %31
         %33 = OpLabel
               OpBranch %22
         %31 = OpLabel
         %34 = OpLoad %int %ret
         %35 = OpIAdd %int %34 %int_1
               OpStore %ret %35
               OpBranch %23
         %23 = OpLabel
         %39 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
         %40 = OpLoad %int %39
         %41 = OpLoad %int %i
         %42 = OpISub %int %41 %40
               OpStore %i %42
               OpBranch %21
         %22 = OpLabel
         %43 = OpLoad %int %ret
               OpReturnValue %43
               OpFunctionEnd
     %main_1 = OpFunction %void None %44
         %47 = OpLabel
         %48 = OpFunctionCall %int %func_
         %50 = OpIEqual %bool %48 %int_2
               OpSelectionMerge %51 None
               OpBranchConditional %50 %52 %53
         %52 = OpLabel
               OpStore %x_GLF_color %56
               OpBranch %51
         %53 = OpLabel
               OpStore %x_GLF_color %57
               OpBranch %51
         %51 = OpLabel
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %58
%tint_symbol = OpFunctionParameter %main_out
         %62 = OpLabel
         %63 = OpCompositeExtract %v4float %tint_symbol 0
               OpStore %tint_symbol_1 %63
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %44
         %65 = OpLabel
         %66 = OpFunctionCall %void %main_1
         %68 = OpLoad %v4float %x_GLF_color
         %69 = OpCompositeConstruct %main_out %68
         %67 = OpFunctionCall %void %tint_symbol_2 %69
               OpReturn
               OpFunctionEnd
