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