1OpCapability Shader 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_Clockwise %sk_FragColor 5OpExecutionMode %_entrypoint_v OriginUpperLeft 6OpName %sk_Clockwise "sk_Clockwise" 7OpName %sk_FragColor "sk_FragColor" 8OpName %_UniformBuffer "_UniformBuffer" 9OpMemberName %_UniformBuffer 0 "colorGreen" 10OpName %_entrypoint_v "_entrypoint_v" 11OpName %main "main" 12OpName %integerInput "integerInput" 13OpDecorate %sk_Clockwise BuiltIn FrontFacing 14OpDecorate %sk_FragColor RelaxedPrecision 15OpDecorate %sk_FragColor Location 0 16OpDecorate %sk_FragColor Index 0 17OpMemberDecorate %_UniformBuffer 0 Offset 0 18OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 19OpDecorate %_UniformBuffer Block 20OpDecorate %10 Binding 0 21OpDecorate %10 DescriptorSet 0 22OpDecorate %32 RelaxedPrecision 23OpDecorate %33 RelaxedPrecision 24OpDecorate %47 RelaxedPrecision 25OpDecorate %58 RelaxedPrecision 26OpDecorate %59 RelaxedPrecision 27OpDecorate %67 RelaxedPrecision 28OpDecorate %68 RelaxedPrecision 29%bool = OpTypeBool 30%_ptr_Input_bool = OpTypePointer Input %bool 31%sk_Clockwise = OpVariable %_ptr_Input_bool Input 32%float = OpTypeFloat 32 33%v4float = OpTypeVector %float 4 34%_ptr_Output_v4float = OpTypePointer Output %v4float 35%sk_FragColor = OpVariable %_ptr_Output_v4float Output 36%_UniformBuffer = OpTypeStruct %v4float 37%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 38%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 39%void = OpTypeVoid 40%15 = OpTypeFunction %void 41%float_0 = OpConstant %float 0 42%v2float = OpTypeVector %float 2 43%19 = OpConstantComposite %v2float %float_0 %float_0 44%_ptr_Function_v2float = OpTypePointer Function %v2float 45%23 = OpTypeFunction %v4float %_ptr_Function_v2float 46%int = OpTypeInt 32 1 47%_ptr_Function_int = OpTypePointer Function %int 48%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 49%int_0 = OpConstant %int 0 50%float_2_1400001 = OpConstant %float 2.1400001 51%40 = OpConstantComposite %v4float %float_2_1400001 %float_2_1400001 %float_2_1400001 %float_2_1400001 52%int_1 = OpConstant %int 1 53%int_2 = OpConstant %int 2 54%float_1 = OpConstant %float 1 55%float_0_200000003 = OpConstant %float 0.200000003 56%55 = OpConstantComposite %v4float %float_1 %float_0_200000003 %float_2_1400001 %float_1 57%float_3_1400001 = OpConstant %float 3.1400001 58%65 = OpConstantComposite %v4float %float_3_1400001 %float_3_1400001 %float_3_1400001 %float_3_1400001 59%74 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0 60%75 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1 61%_entrypoint_v = OpFunction %void None %15 62%16 = OpLabel 63%20 = OpVariable %_ptr_Function_v2float Function 64OpStore %20 %19 65%22 = OpFunctionCall %v4float %main %20 66OpStore %sk_FragColor %22 67OpReturn 68OpFunctionEnd 69%main = OpFunction %v4float None %23 70%24 = OpFunctionParameter %_ptr_Function_v2float 71%25 = OpLabel 72%integerInput = OpVariable %_ptr_Function_int Function 73%29 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 74%32 = OpLoad %v4float %29 75%33 = OpCompositeExtract %float %32 1 76%34 = OpConvertFToS %int %33 77OpStore %integerInput %34 78%35 = OpIEqual %bool %34 %int_0 79OpSelectionMerge %38 None 80OpBranchConditional %35 %36 %37 81%36 = OpLabel 82OpReturnValue %40 83%37 = OpLabel 84%42 = OpIEqual %bool %34 %int_1 85OpSelectionMerge %45 None 86OpBranchConditional %42 %43 %44 87%43 = OpLabel 88%46 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 89%47 = OpLoad %v4float %46 90OpReturnValue %47 91%44 = OpLabel 92%49 = OpIEqual %bool %34 %int_2 93OpSelectionMerge %52 None 94OpBranchConditional %49 %50 %51 95%50 = OpLabel 96OpReturnValue %55 97%51 = OpLabel 98%57 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 99%58 = OpLoad %v4float %57 100%59 = OpCompositeExtract %float %58 0 101%60 = OpFMul %float %59 %float_3_1400001 102%61 = OpFOrdLessThan %bool %float_3_1400001 %60 103OpSelectionMerge %64 None 104OpBranchConditional %61 %62 %63 105%62 = OpLabel 106OpReturnValue %65 107%63 = OpLabel 108%66 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 109%67 = OpLoad %v4float %66 110%68 = OpCompositeExtract %float %67 0 111%69 = OpFMul %float %68 %float_2_1400001 112%70 = OpFOrdGreaterThanEqual %bool %float_2_1400001 %69 113OpSelectionMerge %73 None 114OpBranchConditional %70 %71 %72 115%71 = OpLabel 116OpReturnValue %74 117%72 = OpLabel 118OpReturnValue %75 119%73 = OpLabel 120OpBranch %64 121%64 = OpLabel 122OpBranch %52 123%52 = OpLabel 124OpBranch %45 125%45 = OpLabel 126OpBranch %38 127%38 = OpLabel 128OpUnreachable 129OpFunctionEnd 130