; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 62
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
               OpExecutionMode %main OriginUpperLeft
               OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
               OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "three"
               OpName %x_6 "x_6"
               OpName %gl_FragCoord "gl_FragCoord"
               OpName %x_GLF_color "x_GLF_color"
               OpName %main_1 "main_1"
               OpName %x_36 "x_36"
               OpName %x_37_phi "x_37_phi"
               OpName %main_out "main_out"
               OpMemberName %main_out 0 "x_GLF_color_1"
               OpName %main_inner "main_inner"
               OpName %gl_FragCoord_param "gl_FragCoord_param"
               OpName %main "main"
               OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
               OpDecorate %x_GLF_color_1_1 Location 0
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %x_6 NonWritable
               OpDecorate %x_6 DescriptorSet 0
               OpDecorate %x_6 Binding 0
               OpMemberDecorate %main_out 0 Offset 0
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %7 = OpConstantNull %v4float
%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
        %int = OpTypeInt 32 1
       %buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
       %void = OpTypeVoid
         %15 = OpTypeFunction %void
       %bool = OpTypeBool
%_ptr_Function_bool = OpTypePointer Function %bool
         %22 = OpConstantNull %bool
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
      %int_1 = OpConstant %int 1
     %uint_1 = OpConstant %uint 1
%_ptr_Private_float = OpTypePointer Private %float
   %float_n5 = OpConstant %float -5
    %float_1 = OpConstant %float 1
    %float_0 = OpConstant %float 0
         %47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
         %48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
   %main_out = OpTypeStruct %v4float
         %49 = OpTypeFunction %main_out %v4float
     %main_1 = OpFunction %void None %15
         %18 = OpLabel
       %x_36 = OpVariable %_ptr_Function_bool Function %22
   %x_37_phi = OpVariable %_ptr_Function_bool Function %22
         %27 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0
         %28 = OpLoad %int %27
         %30 = OpSGreaterThan %bool %28 %int_1
               OpStore %x_37_phi %30
               OpSelectionMerge %31 None
               OpBranchConditional %30 %32 %31
         %32 = OpLabel
         %35 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_1
         %36 = OpLoad %float %35
         %39 = OpFOrdLessThan %bool %36 %float_n5
         %37 = OpLogicalNot %bool %39
               OpStore %x_36 %37
         %40 = OpLoad %bool %x_36
               OpStore %x_37_phi %40
               OpBranch %31
         %31 = OpLabel
         %41 = OpLoad %bool %x_37_phi
               OpSelectionMerge %42 None
               OpBranchConditional %41 %43 %44
         %43 = OpLabel
               OpStore %x_GLF_color %47
               OpBranch %42
         %44 = OpLabel
               OpStore %x_GLF_color %48
               OpBranch %42
         %42 = OpLabel
               OpReturn
               OpFunctionEnd
 %main_inner = OpFunction %main_out None %49
%gl_FragCoord_param = OpFunctionParameter %v4float
         %53 = OpLabel
               OpStore %gl_FragCoord %gl_FragCoord_param
         %54 = OpFunctionCall %void %main_1
         %55 = OpLoad %v4float %x_GLF_color
         %56 = OpCompositeConstruct %main_out %55
               OpReturnValue %56
               OpFunctionEnd
       %main = OpFunction %void None %15
         %58 = OpLabel
         %60 = OpLoad %v4float %gl_FragCoord_param_1
         %59 = OpFunctionCall %main_out %main_inner %60
         %61 = OpCompositeExtract %v4float %59 0
               OpStore %x_GLF_color_1_1 %61
               OpReturn
               OpFunctionEnd
