1OpCapability Shader 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise 5OpExecutionMode %_entrypoint_v OriginUpperLeft 6OpName %sk_FragColor "sk_FragColor" 7OpName %sk_Clockwise "sk_Clockwise" 8OpName %_UniformBuffer "_UniformBuffer" 9OpMemberName %_UniformBuffer 0 "colorGreen" 10OpMemberName %_UniformBuffer 1 "colorRed" 11OpName %_entrypoint_v "_entrypoint_v" 12OpName %main "main" 13OpName %f "f" 14OpName %i "i" 15OpName %b "b" 16OpName %f1 "f1" 17OpName %f2 "f2" 18OpName %f3 "f3" 19OpName %i1 "i1" 20OpName %i2 "i2" 21OpName %i3 "i3" 22OpName %b1 "b1" 23OpName %b2 "b2" 24OpName %b3 "b3" 25OpDecorate %sk_FragColor RelaxedPrecision 26OpDecorate %sk_FragColor Location 0 27OpDecorate %sk_FragColor Index 0 28OpDecorate %sk_Clockwise BuiltIn FrontFacing 29OpMemberDecorate %_UniformBuffer 0 Offset 0 30OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 31OpMemberDecorate %_UniformBuffer 1 Offset 16 32OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 33OpDecorate %_UniformBuffer Block 34OpDecorate %10 Binding 0 35OpDecorate %10 DescriptorSet 0 36OpDecorate %32 RelaxedPrecision 37OpDecorate %33 RelaxedPrecision 38OpDecorate %37 RelaxedPrecision 39OpDecorate %38 RelaxedPrecision 40OpDecorate %43 RelaxedPrecision 41OpDecorate %44 RelaxedPrecision 42OpDecorate %52 RelaxedPrecision 43OpDecorate %61 RelaxedPrecision 44OpDecorate %71 RelaxedPrecision 45OpDecorate %74 RelaxedPrecision 46OpDecorate %76 RelaxedPrecision 47OpDecorate %78 RelaxedPrecision 48OpDecorate %79 RelaxedPrecision 49OpDecorate %81 RelaxedPrecision 50OpDecorate %82 RelaxedPrecision 51OpDecorate %84 RelaxedPrecision 52OpDecorate %85 RelaxedPrecision 53OpDecorate %86 RelaxedPrecision 54OpDecorate %87 RelaxedPrecision 55OpDecorate %88 RelaxedPrecision 56OpDecorate %89 RelaxedPrecision 57OpDecorate %90 RelaxedPrecision 58OpDecorate %91 RelaxedPrecision 59OpDecorate %92 RelaxedPrecision 60OpDecorate %93 RelaxedPrecision 61OpDecorate %94 RelaxedPrecision 62OpDecorate %103 RelaxedPrecision 63OpDecorate %105 RelaxedPrecision 64OpDecorate %106 RelaxedPrecision 65%float = OpTypeFloat 32 66%v4float = OpTypeVector %float 4 67%_ptr_Output_v4float = OpTypePointer Output %v4float 68%sk_FragColor = OpVariable %_ptr_Output_v4float Output 69%bool = OpTypeBool 70%_ptr_Input_bool = OpTypePointer Input %bool 71%sk_Clockwise = OpVariable %_ptr_Input_bool Input 72%_UniformBuffer = OpTypeStruct %v4float %v4float 73%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 74%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 75%void = OpTypeVoid 76%15 = OpTypeFunction %void 77%v2float = OpTypeVector %float 2 78%float_0 = OpConstant %float 0 79%19 = OpConstantComposite %v2float %float_0 %float_0 80%_ptr_Function_v2float = OpTypePointer Function %v2float 81%23 = OpTypeFunction %v4float %_ptr_Function_v2float 82%_ptr_Function_float = OpTypePointer Function %float 83%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 84%int = OpTypeInt 32 1 85%int_0 = OpConstant %int 0 86%_ptr_Function_int = OpTypePointer Function %int 87%_ptr_Function_bool = OpTypePointer Function %bool 88%float_1 = OpConstant %float 1 89%int_1 = OpConstant %int 1 90%float_9 = OpConstant %float 9 91%_ptr_Function_v4float = OpTypePointer Function %v4float 92%_entrypoint_v = OpFunction %void None %15 93%16 = OpLabel 94%20 = OpVariable %_ptr_Function_v2float Function 95OpStore %20 %19 96%22 = OpFunctionCall %v4float %main %20 97OpStore %sk_FragColor %22 98OpReturn 99OpFunctionEnd 100%main = OpFunction %v4float None %23 101%24 = OpFunctionParameter %_ptr_Function_v2float 102%25 = OpLabel 103%f = OpVariable %_ptr_Function_float Function 104%i = OpVariable %_ptr_Function_int Function 105%b = OpVariable %_ptr_Function_bool Function 106%f1 = OpVariable %_ptr_Function_float Function 107%f2 = OpVariable %_ptr_Function_float Function 108%f3 = OpVariable %_ptr_Function_float Function 109%i1 = OpVariable %_ptr_Function_int Function 110%i2 = OpVariable %_ptr_Function_int Function 111%i3 = OpVariable %_ptr_Function_int Function 112%b1 = OpVariable %_ptr_Function_bool Function 113%b2 = OpVariable %_ptr_Function_bool Function 114%b3 = OpVariable %_ptr_Function_bool Function 115%97 = OpVariable %_ptr_Function_v4float Function 116%28 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 117%32 = OpLoad %v4float %28 118%33 = OpCompositeExtract %float %32 1 119OpStore %f %33 120%36 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 121%37 = OpLoad %v4float %36 122%38 = OpCompositeExtract %float %37 1 123%39 = OpConvertFToS %int %38 124OpStore %i %39 125%42 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 126%43 = OpLoad %v4float %42 127%44 = OpCompositeExtract %float %43 1 128%45 = OpFUnordNotEqual %bool %44 %float_0 129OpStore %b %45 130%47 = OpLoad %float %f 131OpStore %f1 %47 132%49 = OpLoad %int %i 133%50 = OpConvertSToF %float %49 134OpStore %f2 %50 135%52 = OpLoad %bool %b 136%53 = OpSelect %float %52 %float_1 %float_0 137OpStore %f3 %53 138%56 = OpLoad %float %f 139%57 = OpConvertFToS %int %56 140OpStore %i1 %57 141%59 = OpLoad %int %i 142OpStore %i2 %59 143%61 = OpLoad %bool %b 144%62 = OpSelect %int %61 %int_1 %int_0 145OpStore %i3 %62 146%65 = OpLoad %float %f 147%66 = OpFUnordNotEqual %bool %65 %float_0 148OpStore %b1 %66 149%68 = OpLoad %int %i 150%69 = OpINotEqual %bool %68 %int_0 151OpStore %b2 %69 152%71 = OpLoad %bool %b 153OpStore %b3 %71 154%72 = OpLoad %float %f1 155%73 = OpLoad %float %f2 156%74 = OpFAdd %float %72 %73 157%75 = OpLoad %float %f3 158%76 = OpFAdd %float %74 %75 159%77 = OpLoad %int %i1 160%78 = OpConvertSToF %float %77 161%79 = OpFAdd %float %76 %78 162%80 = OpLoad %int %i2 163%81 = OpConvertSToF %float %80 164%82 = OpFAdd %float %79 %81 165%83 = OpLoad %int %i3 166%84 = OpConvertSToF %float %83 167%85 = OpFAdd %float %82 %84 168%86 = OpLoad %bool %b1 169%87 = OpSelect %float %86 %float_1 %float_0 170%88 = OpFAdd %float %85 %87 171%89 = OpLoad %bool %b2 172%90 = OpSelect %float %89 %float_1 %float_0 173%91 = OpFAdd %float %88 %90 174%92 = OpLoad %bool %b3 175%93 = OpSelect %float %92 %float_1 %float_0 176%94 = OpFAdd %float %91 %93 177%96 = OpFOrdEqual %bool %94 %float_9 178OpSelectionMerge %101 None 179OpBranchConditional %96 %99 %100 180%99 = OpLabel 181%102 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 182%103 = OpLoad %v4float %102 183OpStore %97 %103 184OpBranch %101 185%100 = OpLabel 186%104 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 187%105 = OpLoad %v4float %104 188OpStore %97 %105 189OpBranch %101 190%101 = OpLabel 191%106 = OpLoad %v4float %97 192OpReturnValue %106 193OpFunctionEnd 194