1OpCapability Shader 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Fragment %main "main" %sk_Clockwise %sk_FragColor 5OpExecutionMode %main OriginUpperLeft 6OpName %sk_Clockwise "sk_Clockwise" 7OpName %sk_FragColor "sk_FragColor" 8OpName %_UniformBuffer "_UniformBuffer" 9OpMemberName %_UniformBuffer 0 "src" 10OpMemberName %_UniformBuffer 1 "dst" 11OpName %main "main" 12OpName %_0_a "_0_a" 13OpName %_1_b "_1_b" 14OpDecorate %sk_Clockwise BuiltIn FrontFacing 15OpDecorate %sk_FragColor RelaxedPrecision 16OpDecorate %sk_FragColor Location 0 17OpDecorate %sk_FragColor Index 0 18OpMemberDecorate %_UniformBuffer 0 Offset 0 19OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 20OpMemberDecorate %_UniformBuffer 1 Offset 16 21OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 22OpDecorate %_UniformBuffer Block 23OpDecorate %10 Binding 0 24OpDecorate %10 DescriptorSet 0 25OpDecorate %_0_a RelaxedPrecision 26OpDecorate %22 RelaxedPrecision 27OpDecorate %25 RelaxedPrecision 28OpDecorate %26 RelaxedPrecision 29OpDecorate %27 RelaxedPrecision 30OpDecorate %30 RelaxedPrecision 31OpDecorate %31 RelaxedPrecision 32OpDecorate %32 RelaxedPrecision 33OpDecorate %_1_b RelaxedPrecision 34OpDecorate %37 RelaxedPrecision 35OpDecorate %38 RelaxedPrecision 36OpDecorate %39 RelaxedPrecision 37OpDecorate %41 RelaxedPrecision 38OpDecorate %42 RelaxedPrecision 39OpDecorate %43 RelaxedPrecision 40OpDecorate %45 RelaxedPrecision 41OpDecorate %46 RelaxedPrecision 42OpDecorate %47 RelaxedPrecision 43OpDecorate %49 RelaxedPrecision 44OpDecorate %50 RelaxedPrecision 45OpDecorate %51 RelaxedPrecision 46%bool = OpTypeBool 47%_ptr_Input_bool = OpTypePointer Input %bool 48%sk_Clockwise = OpVariable %_ptr_Input_bool Input 49%float = OpTypeFloat 32 50%v4float = OpTypeVector %float 4 51%_ptr_Output_v4float = OpTypePointer Output %v4float 52%sk_FragColor = OpVariable %_ptr_Output_v4float Output 53%_UniformBuffer = OpTypeStruct %v4float %v4float 54%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 55%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 56%void = OpTypeVoid 57%14 = OpTypeFunction %void 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%float_1 = OpConstant %float 1 63%int_1 = OpConstant %int 1 64%v3float = OpTypeVector %float 3 65%_ptr_Function_v3float = OpTypePointer Function %v3float 66%main = OpFunction %void None %14 67%15 = OpLabel 68%_0_a = OpVariable %_ptr_Function_v4float Function 69%_1_b = OpVariable %_ptr_Function_v3float Function 70%18 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 71%22 = OpLoad %v4float %18 72%24 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 73%25 = OpLoad %v4float %24 74%26 = OpCompositeExtract %float %25 3 75%27 = OpFSub %float %float_1 %26 76%28 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 77%30 = OpLoad %v4float %28 78%31 = OpVectorTimesScalar %v4float %30 %27 79%32 = OpFAdd %v4float %22 %31 80OpStore %_0_a %32 81%36 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 82%37 = OpLoad %v4float %36 83%38 = OpCompositeExtract %float %37 3 84%39 = OpFSub %float %float_1 %38 85%40 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 86%41 = OpLoad %v4float %40 87%42 = OpVectorShuffle %v3float %41 %41 0 1 2 88%43 = OpVectorTimesScalar %v3float %42 %39 89%44 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 90%45 = OpLoad %v4float %44 91%46 = OpVectorShuffle %v3float %45 %45 0 1 2 92%47 = OpFAdd %v3float %43 %46 93OpStore %_1_b %47 94%49 = OpVectorShuffle %v3float %32 %32 0 1 2 95%48 = OpExtInst %v3float %1 FMin %49 %47 96%50 = OpLoad %v4float %_0_a 97%51 = OpVectorShuffle %v4float %50 %48 4 5 6 3 98OpStore %_0_a %51 99OpStore %sk_FragColor %51 100OpReturn 101OpFunctionEnd 102