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 "colorWhite" 10OpName %_entrypoint_v "_entrypoint_v" 11OpName %main "main" 12OpName %x "x" 13OpName %r "r" 14OpName %b "b" 15OpDecorate %sk_FragColor RelaxedPrecision 16OpDecorate %sk_FragColor Location 0 17OpDecorate %sk_FragColor Index 0 18OpDecorate %sk_Clockwise BuiltIn FrontFacing 19OpMemberDecorate %_UniformBuffer 0 Offset 0 20OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 21OpDecorate %_UniformBuffer Block 22OpDecorate %10 Binding 0 23OpDecorate %10 DescriptorSet 0 24OpDecorate %x RelaxedPrecision 25OpDecorate %32 RelaxedPrecision 26OpDecorate %r RelaxedPrecision 27OpDecorate %41 RelaxedPrecision 28OpDecorate %45 RelaxedPrecision 29OpDecorate %48 RelaxedPrecision 30OpDecorate %49 RelaxedPrecision 31OpDecorate %53 RelaxedPrecision 32OpDecorate %54 RelaxedPrecision 33OpDecorate %b RelaxedPrecision 34OpDecorate %61 RelaxedPrecision 35OpDecorate %63 RelaxedPrecision 36OpDecorate %66 RelaxedPrecision 37OpDecorate %67 RelaxedPrecision 38OpDecorate %73 RelaxedPrecision 39OpDecorate %74 RelaxedPrecision 40OpDecorate %75 RelaxedPrecision 41%float = OpTypeFloat 32 42%v4float = OpTypeVector %float 4 43%_ptr_Output_v4float = OpTypePointer Output %v4float 44%sk_FragColor = OpVariable %_ptr_Output_v4float Output 45%bool = OpTypeBool 46%_ptr_Input_bool = OpTypePointer Input %bool 47%sk_Clockwise = OpVariable %_ptr_Input_bool Input 48%_UniformBuffer = OpTypeStruct %v4float 49%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 50%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 51%void = OpTypeVoid 52%15 = OpTypeFunction %void 53%v2float = OpTypeVector %float 2 54%float_0 = OpConstant %float 0 55%19 = OpConstantComposite %v2float %float_0 %float_0 56%_ptr_Function_v2float = OpTypePointer Function %v2float 57%23 = OpTypeFunction %v4float %_ptr_Function_v2float 58%_ptr_Function_v4float = OpTypePointer Function %v4float 59%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 60%int = OpTypeInt 32 1 61%int_0 = OpConstant %int 0 62%_ptr_Function_float = OpTypePointer Function %float 63%float_n5 = OpConstant %float -5 64%float_5 = OpConstant %float 5 65%float_1 = OpConstant %float 1 66%int_2 = OpConstant %int 2 67%int_1 = OpConstant %int 1 68%_entrypoint_v = OpFunction %void None %15 69%16 = OpLabel 70%20 = OpVariable %_ptr_Function_v2float Function 71OpStore %20 %19 72%22 = OpFunctionCall %v4float %main %20 73OpStore %sk_FragColor %22 74OpReturn 75OpFunctionEnd 76%main = OpFunction %v4float None %23 77%24 = OpFunctionParameter %_ptr_Function_v2float 78%25 = OpLabel 79%x = OpVariable %_ptr_Function_v4float Function 80%r = OpVariable %_ptr_Function_float Function 81%b = OpVariable %_ptr_Function_float Function 82%28 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 83%32 = OpLoad %v4float %28 84OpStore %x %32 85OpStore %r %float_n5 86OpBranch %36 87%36 = OpLabel 88OpLoopMerge %40 %39 None 89OpBranch %37 90%37 = OpLabel 91%41 = OpLoad %float %r 92%43 = OpFOrdLessThan %bool %41 %float_5 93OpBranchConditional %43 %38 %40 94%38 = OpLabel 95%45 = OpLoad %float %r 96%44 = OpExtInst %float %1 FClamp %45 %float_0 %float_1 97%47 = OpAccessChain %_ptr_Function_float %x %int_0 98OpStore %47 %44 99%48 = OpLoad %v4float %x 100%49 = OpCompositeExtract %float %48 0 101%50 = OpFOrdEqual %bool %49 %float_0 102OpSelectionMerge %52 None 103OpBranchConditional %50 %51 %52 104%51 = OpLabel 105OpBranch %40 106%52 = OpLabel 107OpBranch %39 108%39 = OpLabel 109%53 = OpLoad %float %r 110%54 = OpFAdd %float %53 %float_1 111OpStore %r %54 112OpBranch %36 113%40 = OpLabel 114OpStore %b %float_5 115OpBranch %56 116%56 = OpLabel 117OpLoopMerge %60 %59 None 118OpBranch %57 119%57 = OpLabel 120%61 = OpLoad %float %b 121%62 = OpFOrdGreaterThanEqual %bool %61 %float_0 122OpBranchConditional %62 %58 %60 123%58 = OpLabel 124%63 = OpLoad %float %b 125%64 = OpAccessChain %_ptr_Function_float %x %int_2 126OpStore %64 %63 127%66 = OpLoad %v4float %x 128%67 = OpCompositeExtract %float %66 3 129%68 = OpFOrdEqual %bool %67 %float_1 130OpSelectionMerge %70 None 131OpBranchConditional %68 %69 %70 132%69 = OpLabel 133OpBranch %59 134%70 = OpLabel 135%71 = OpAccessChain %_ptr_Function_float %x %int_1 136OpStore %71 %float_0 137OpBranch %59 138%59 = OpLabel 139%73 = OpLoad %float %b 140%74 = OpFSub %float %73 %float_1 141OpStore %b %74 142OpBranch %56 143%60 = OpLabel 144%75 = OpLoad %v4float %x 145OpReturnValue %75 146OpFunctionEnd 147