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_result "_0_result" 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 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 %37 RelaxedPrecision 34OpDecorate %38 RelaxedPrecision 35OpDecorate %39 RelaxedPrecision 36OpDecorate %41 RelaxedPrecision 37OpDecorate %42 RelaxedPrecision 38OpDecorate %43 RelaxedPrecision 39OpDecorate %45 RelaxedPrecision 40OpDecorate %46 RelaxedPrecision 41OpDecorate %47 RelaxedPrecision 42OpDecorate %48 RelaxedPrecision 43OpDecorate %49 RelaxedPrecision 44%bool = OpTypeBool 45%_ptr_Input_bool = OpTypePointer Input %bool 46%sk_Clockwise = OpVariable %_ptr_Input_bool Input 47%float = OpTypeFloat 32 48%v4float = OpTypeVector %float 4 49%_ptr_Output_v4float = OpTypePointer Output %v4float 50%sk_FragColor = OpVariable %_ptr_Output_v4float Output 51%_UniformBuffer = OpTypeStruct %v4float %v4float 52%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 53%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 54%void = OpTypeVoid 55%14 = OpTypeFunction %void 56%_ptr_Function_v4float = OpTypePointer Function %v4float 57%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 58%int = OpTypeInt 32 1 59%int_0 = OpConstant %int 0 60%float_1 = OpConstant %float 1 61%int_1 = OpConstant %int 1 62%v3float = OpTypeVector %float 3 63%main = OpFunction %void None %14 64%15 = OpLabel 65%_0_result = OpVariable %_ptr_Function_v4float Function 66%18 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 67%22 = OpLoad %v4float %18 68%24 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 69%25 = OpLoad %v4float %24 70%26 = OpCompositeExtract %float %25 3 71%27 = OpFSub %float %float_1 %26 72%28 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 73%30 = OpLoad %v4float %28 74%31 = OpVectorTimesScalar %v4float %30 %27 75%32 = OpFAdd %v4float %22 %31 76OpStore %_0_result %32 77%34 = OpVectorShuffle %v3float %32 %32 0 1 2 78%36 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 79%37 = OpLoad %v4float %36 80%38 = OpCompositeExtract %float %37 3 81%39 = OpFSub %float %float_1 %38 82%40 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 83%41 = OpLoad %v4float %40 84%42 = OpVectorShuffle %v3float %41 %41 0 1 2 85%43 = OpVectorTimesScalar %v3float %42 %39 86%44 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 87%45 = OpLoad %v4float %44 88%46 = OpVectorShuffle %v3float %45 %45 0 1 2 89%47 = OpFAdd %v3float %43 %46 90%33 = OpExtInst %v3float %1 FMax %34 %47 91%48 = OpLoad %v4float %_0_result 92%49 = OpVectorShuffle %v4float %48 %33 4 5 6 3 93OpStore %_0_result %49 94OpStore %sk_FragColor %49 95OpReturn 96OpFunctionEnd 97