; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 126
; Schema: 0
               OpCapability Shader
         %64 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %tint_symbol_1
               OpExecutionMode %main OriginUpperLeft
               OpName %buf1 "buf1"
               OpMemberName %buf1 0 "x_GLF_uniform_int_values"
               OpName %x_7 "x_7"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_float_values"
               OpName %x_9 "x_9"
               OpName %x_GLF_color "x_GLF_color"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %main_1 "main_1"
               OpName %nan "nan"
               OpName %undefined "undefined"
               OpName %x_83 "x_83"
               OpName %x_84_phi "x_84_phi"
               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 %buf1 Block
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %_arr_int_uint_10 ArrayStride 16
               OpDecorate %x_7 NonWritable
               OpDecorate %x_7 DescriptorSet 0
               OpDecorate %x_7 Binding 1
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %_arr_float_uint_1 ArrayStride 16
               OpDecorate %x_9 NonWritable
               OpDecorate %x_9 DescriptorSet 0
               OpDecorate %x_9 Binding 0
               OpDecorate %tint_symbol_1 Location 0
               OpMemberDecorate %main_out 0 Offset 0
        %int = OpTypeInt 32 1
       %uint = OpTypeInt 32 0
    %uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
       %buf1 = OpTypeStruct %_arr_int_uint_10
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
        %x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
      %float = OpTypeFloat 32
     %uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
       %buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
    %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
         %17 = OpConstantNull %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
%_ptr_Output_v4float = OpTypePointer Output %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
       %void = OpTypeVoid
         %20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
         %26 = OpConstantNull %float
%_ptr_Function_v4float = OpTypePointer Function %v4float
       %bool = OpTypeBool
%_ptr_Function_bool = OpTypePointer Function %bool
         %32 = OpConstantNull %bool
     %int_n1 = OpConstant %int -1
     %uint_0 = OpConstant %uint 0
      %int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
      %int_1 = OpConstant %int 1
      %int_2 = OpConstant %int 2
      %int_3 = OpConstant %int 3
      %int_4 = OpConstant %int 4
      %int_5 = OpConstant %int 5
      %int_6 = OpConstant %int 6
      %int_7 = OpConstant %int 7
      %int_9 = OpConstant %int 9
%_ptr_Uniform_float = OpTypePointer Uniform %float
      %int_8 = OpConstant %int 8
   %main_out = OpTypeStruct %v4float
        %114 = OpTypeFunction %void %main_out
     %main_1 = OpFunction %void None %20
         %23 = OpLabel
        %nan = OpVariable %_ptr_Function_float Function %26
  %undefined = OpVariable %_ptr_Function_v4float Function %17
       %x_83 = OpVariable %_ptr_Function_bool Function %32
   %x_84_phi = OpVariable %_ptr_Function_bool Function %32
         %34 = OpBitcast %float %int_n1
               OpStore %nan %34
         %39 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
         %40 = OpLoad %int %39
         %42 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1
         %43 = OpLoad %int %42
         %45 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_2
         %46 = OpLoad %int %45
         %48 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_3
         %49 = OpLoad %int %48
         %51 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_4
         %52 = OpLoad %int %51
         %54 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_5
         %55 = OpLoad %int %54
         %57 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_6
         %58 = OpLoad %int %57
         %60 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_7
         %61 = OpLoad %int %60
         %62 = OpLoad %float %nan
         %65 = OpConvertSToF %float %40
         %66 = OpConvertSToF %float %43
         %67 = OpConvertSToF %float %46
         %68 = OpConvertSToF %float %49
         %69 = OpCompositeConstruct %v4float %65 %66 %67 %68
         %70 = OpConvertSToF %float %52
         %71 = OpConvertSToF %float %55
         %72 = OpConvertSToF %float %58
         %73 = OpConvertSToF %float %61
         %74 = OpCompositeConstruct %v4float %70 %71 %72 %73
         %75 = OpCompositeConstruct %v4float %62 %62 %62 %62
         %63 = OpExtInst %v4float %64 FMix %69 %74 %75
               OpStore %undefined %63
         %76 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
         %77 = OpLoad %int %76
         %79 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_9
         %80 = OpLoad %int %79
         %81 = OpIEqual %bool %77 %80
               OpStore %x_84_phi %81
         %82 = OpLogicalNot %bool %81
               OpSelectionMerge %83 None
               OpBranchConditional %82 %84 %83
         %84 = OpLabel
         %85 = OpAccessChain %_ptr_Function_float %undefined %uint_0
         %86 = OpLoad %float %85
         %88 = OpAccessChain %_ptr_Uniform_float %x_9 %uint_0 %int_0
         %89 = OpLoad %float %88
         %90 = OpFOrdGreaterThan %bool %86 %89
               OpStore %x_83 %90
         %91 = OpLoad %bool %x_83
               OpStore %x_84_phi %91
               OpBranch %83
         %83 = OpLabel
         %92 = OpLoad %bool %x_84_phi
               OpSelectionMerge %93 None
               OpBranchConditional %92 %94 %95
         %94 = OpLabel
         %96 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
         %97 = OpLoad %int %96
         %99 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_8
        %100 = OpLoad %int %99
        %101 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_8
        %102 = OpLoad %int %101
        %103 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
        %104 = OpLoad %int %103
        %105 = OpConvertSToF %float %97
        %106 = OpConvertSToF %float %100
        %107 = OpConvertSToF %float %102
        %108 = OpConvertSToF %float %104
        %109 = OpCompositeConstruct %v4float %105 %106 %107 %108
               OpStore %x_GLF_color %109
               OpBranch %93
         %95 = OpLabel
        %110 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_8
        %111 = OpLoad %int %110
        %112 = OpConvertSToF %float %111
        %113 = OpCompositeConstruct %v4float %112 %112 %112 %112
               OpStore %x_GLF_color %113
               OpBranch %93
         %93 = OpLabel
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %114
%tint_symbol = OpFunctionParameter %main_out
        %118 = OpLabel
        %119 = OpCompositeExtract %v4float %tint_symbol 0
               OpStore %tint_symbol_1 %119
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %20
        %121 = OpLabel
        %122 = OpFunctionCall %void %main_1
        %124 = OpLoad %v4float %x_GLF_color
        %125 = OpCompositeConstruct %main_out %124
        %123 = OpFunctionCall %void %tint_symbol_2 %125
               OpReturn
               OpFunctionEnd
