; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 120
; Schema: 0
               OpCapability Shader
         %58 = OpExtInstImport "GLSL.std.450"
               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 %buf1 "buf1"
               OpMemberName %buf1 0 "x_GLF_uniform_float_values"
               OpName %x_6 "x_6"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_int_values"
               OpName %x_9 "x_9"
               OpName %x_GLF_color "x_GLF_color"
               OpName %main_1 "main_1"
               OpName %A1 "A1"
               OpName %a "a"
               OpName %b "b"
               OpName %c "c"
               OpName %x_36 "x_36"
               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 %buf1 Block
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %_arr_float_uint_3 ArrayStride 16
               OpDecorate %x_6 NonWritable
               OpDecorate %x_6 DescriptorSet 0
               OpDecorate %x_6 Binding 1
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %_arr_int_uint_3 ArrayStride 16
               OpDecorate %x_9 NonWritable
               OpDecorate %x_9 DescriptorSet 0
               OpDecorate %x_9 Binding 0
               OpDecorate %_arr_float_uint_3_0 ArrayStride 4
               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_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
       %buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
        %x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
        %int = OpTypeInt 32 1
%_arr_int_uint_3 = OpTypeArray %int %uint_3
       %buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
       %void = OpTypeVoid
         %19 = OpTypeFunction %void
%_arr_float_uint_3_0 = OpTypeArray %float %uint_3
%_ptr_Function__arr_float_uint_3_0 = OpTypePointer Function %_arr_float_uint_3_0
         %26 = OpConstantNull %_arr_float_uint_3_0
%_ptr_Function_int = OpTypePointer Function %int
         %29 = OpConstantNull %int
%_ptr_Function_float = OpTypePointer Function %float
         %32 = OpConstantNull %float
       %bool = OpTypeBool
%_ptr_Function_bool = OpTypePointer Function %bool
         %36 = OpConstantNull %bool
     %uint_0 = OpConstant %uint 0
      %int_2 = OpConstant %int 2
%_ptr_Uniform_float = OpTypePointer Uniform %float
      %int_0 = OpConstant %int 0
      %int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
   %main_out = OpTypeStruct %v4float
        %109 = OpTypeFunction %main_out
     %main_1 = OpFunction %void None %19
         %22 = OpLabel
         %A1 = OpVariable %_ptr_Function__arr_float_uint_3_0 Function %26
          %a = OpVariable %_ptr_Function_int Function %29
          %b = OpVariable %_ptr_Function_float Function %32
          %c = OpVariable %_ptr_Function_bool Function %36
       %x_36 = OpVariable %_ptr_Function_bool Function %36
         %41 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_2
         %42 = OpLoad %float %41
         %44 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %45 = OpLoad %float %44
         %47 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
         %48 = OpLoad %float %47
         %49 = OpCompositeConstruct %_arr_float_uint_3_0 %42 %45 %48
               OpStore %A1 %49
         %51 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_0
         %52 = OpLoad %int %51
         %53 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_0
         %54 = OpLoad %int %53
         %55 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_1
         %56 = OpLoad %int %55
         %57 = OpExtInst %int %58 SClamp %52 %54 %56
               OpStore %a %57
         %59 = OpLoad %int %a
         %60 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_1
         %61 = OpLoad %int %60
         %62 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_0
         %63 = OpLoad %int %62
         %64 = OpExtInst %int %58 SClamp %59 %61 %63
         %65 = OpAccessChain %_ptr_Function_float %A1 %64
         %66 = OpLoad %float %65
               OpStore %b %66
         %67 = OpLoad %float %b
         %68 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_1
         %69 = OpLoad %int %68
         %70 = OpAccessChain %_ptr_Function_float %A1 %69
         %71 = OpLoad %float %70
         %72 = OpFOrdLessThan %bool %67 %71
               OpSelectionMerge %73 None
               OpBranchConditional %72 %74 %75
         %74 = OpLabel
         %76 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %77 = OpLoad %float %76
         %78 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_2
         %79 = OpLoad %float %78
         %80 = OpFOrdGreaterThan %bool %77 %79
               OpStore %x_36 %80
               OpBranch %73
         %75 = OpLabel
         %81 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
         %82 = OpLoad %float %81
         %83 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_2
         %84 = OpLoad %int %83
         %85 = OpAccessChain %_ptr_Function_float %A1 %84
         %86 = OpLoad %float %85
         %87 = OpFOrdLessThan %bool %82 %86
               OpStore %x_36 %87
               OpBranch %73
         %73 = OpLabel
         %88 = OpLoad %bool %x_36
               OpStore %c %88
         %89 = OpLoad %bool %c
               OpSelectionMerge %90 None
               OpBranchConditional %89 %91 %92
         %91 = OpLabel
         %93 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_0
         %94 = OpLoad %int %93
         %95 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_1
         %96 = OpLoad %int %95
         %97 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_1
         %98 = OpLoad %int %97
         %99 = OpAccessChain %_ptr_Uniform_int %x_9 %uint_0 %int_0
        %100 = OpLoad %int %99
        %101 = OpConvertSToF %float %94
        %102 = OpConvertSToF %float %96
        %103 = OpConvertSToF %float %98
        %104 = OpConvertSToF %float %100
        %105 = OpCompositeConstruct %v4float %101 %102 %103 %104
               OpStore %x_GLF_color %105
               OpBranch %90
         %92 = OpLabel
        %106 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
        %107 = OpLoad %float %106
        %108 = OpCompositeConstruct %v4float %107 %107 %107 %107
               OpStore %x_GLF_color %108
               OpBranch %90
         %90 = OpLabel
               OpReturn
               OpFunctionEnd
 %main_inner = OpFunction %main_out None %109
        %112 = OpLabel
        %113 = OpFunctionCall %void %main_1
        %114 = OpLoad %v4float %x_GLF_color
        %115 = OpCompositeConstruct %main_out %114
               OpReturnValue %115
               OpFunctionEnd
       %main = OpFunction %void None %19
        %117 = OpLabel
        %118 = OpFunctionCall %main_out %main_inner
        %119 = OpCompositeExtract %v4float %118 0
               OpStore %x_GLF_color_1_1 %119
               OpReturn
               OpFunctionEnd
