OpCapability Shader
          %1 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %gl_FragCoord %_GLF_color
               OpExecutionMode %main OriginUpperLeft
               OpSource ESSL 320
               OpName %main "main"
               OpName %func_vf2_ "func(vf2;"
               OpName %pos "pos"
               OpName %buf1 "buf1"
               OpMemberName %buf1 0 "_GLF_uniform_float_values"
               OpName %_ ""
               OpName %buf2 "buf2"
               OpMemberName %buf2 0 "zero"
               OpName %__0 ""
               OpName %gl_FragCoord "gl_FragCoord"
               OpName %param "param"
               OpName %_GLF_color "_GLF_color"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "_GLF_uniform_int_values"
               OpName %__1 ""
               OpDecorate %_arr_float_uint_2 ArrayStride 16
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %buf1 Block
               OpDecorate %_ DescriptorSet 0
               OpDecorate %_ Binding 1
               OpMemberDecorate %buf2 0 Offset 0
               OpDecorate %buf2 Block
               OpDecorate %__0 DescriptorSet 0
               OpDecorate %__0 Binding 2
               OpDecorate %gl_FragCoord BuiltIn FragCoord
               OpDecorate %_GLF_color Location 0
               OpDecorate %_arr_int_uint_2 ArrayStride 16
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %buf0 Block
               OpDecorate %__1 DescriptorSet 0
               OpDecorate %__1 Binding 0
       %void = OpTypeVoid
         %17 = OpTypeFunction %void
      %float = OpTypeFloat 32
    %v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
       %bool = OpTypeBool
         %22 = OpTypeFunction %bool %_ptr_Function_v2float
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%_ptr_Function_float = OpTypePointer Function %float
     %uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
       %buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
          %_ = OpVariable %_ptr_Uniform_buf1 Uniform
        %int = OpTypeInt 32 1
      %int_0 = OpConstant %int 0
%_ptr_Uniform_float = OpTypePointer Uniform %float
       %true = OpConstantTrue %bool
     %uint_1 = OpConstant %uint 1
      %false = OpConstantFalse %bool
       %buf2 = OpTypeStruct %float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
        %__0 = OpVariable %_ptr_Uniform_buf2 Uniform
      %int_1 = OpConstant %int 1
    %v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
%gl_FragCoord = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
 %_GLF_color = OpVariable %_ptr_Output_v4float Output
%_arr_int_uint_2 = OpTypeArray %int %uint_2
       %buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %__1 = OpVariable %_ptr_Uniform_buf0 Uniform
%_ptr_Uniform_int = OpTypePointer Uniform %int
       %main = OpFunction %void None %17
         %41 = OpLabel
      %param = OpVariable %_ptr_Function_v2float Function
         %42 = OpLoad %v4float %gl_FragCoord
         %43 = OpVectorShuffle %v2float %42 %42 0 1
               OpStore %param %43
         %44 = OpFunctionCall %bool %func_vf2_ %param
               OpSelectionMerge %45 None
               OpBranchConditional %44 %46 %45
         %46 = OpLabel
               OpKill
         %45 = OpLabel
         %47 = OpAccessChain %_ptr_Uniform_int %__1 %int_0 %int_0
         %48 = OpLoad %int %47
         %49 = OpConvertSToF %float %48
         %50 = OpAccessChain %_ptr_Uniform_int %__1 %int_0 %int_1
         %51 = OpLoad %int %50
         %52 = OpConvertSToF %float %51
         %53 = OpAccessChain %_ptr_Uniform_int %__1 %int_0 %int_1
         %54 = OpLoad %int %53
         %55 = OpConvertSToF %float %54
         %56 = OpAccessChain %_ptr_Uniform_int %__1 %int_0 %int_0
         %57 = OpLoad %int %56
         %58 = OpConvertSToF %float %57
         %59 = OpCompositeConstruct %v4float %49 %52 %55 %58
               OpStore %_GLF_color %59
               OpReturn
               OpFunctionEnd
  %func_vf2_ = OpFunction %bool None %22
        %pos = OpFunctionParameter %_ptr_Function_v2float
         %60 = OpLabel
         %61 = OpAccessChain %_ptr_Function_float %pos %uint_0
         %62 = OpLoad %float %61
         %63 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_0
         %64 = OpLoad %float %63
         %65 = OpFOrdLessThan %bool %62 %64
               OpSelectionMerge %66 None
               OpBranchConditional %65 %67 %66
         %67 = OpLabel
               OpReturnValue %true
         %66 = OpLabel
         %68 = OpAccessChain %_ptr_Function_float %pos %uint_1
         %69 = OpLoad %float %68
         %70 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_0
         %71 = OpLoad %float %70
         %72 = OpFOrdGreaterThan %bool %69 %71
               OpSelectionMerge %73 None
               OpBranchConditional %72 %74 %73
         %74 = OpLabel
               OpReturnValue %false
         %73 = OpLabel
         %75 = OpAccessChain %_ptr_Uniform_float %__0 %int_0
         %76 = OpLoad %float %75
         %77 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_1
         %78 = OpLoad %float %77
         %79 = OpFOrdGreaterThan %bool %76 %78
               OpSelectionMerge %80 None
               OpBranchConditional %79 %81 %80
         %81 = OpLabel
               OpReturnValue %true
         %80 = OpLabel
               OpReturnValue %true
               OpFunctionEnd