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 %_blend_overlay_component_hh2h2 "_blend_overlay_component_hh2h2" 12OpName %main "main" 13OpName %_0_result "_0_result" 14OpDecorate %sk_FragColor RelaxedPrecision 15OpDecorate %sk_FragColor Location 0 16OpDecorate %sk_FragColor Index 0 17OpDecorate %sk_Clockwise BuiltIn FrontFacing 18OpMemberDecorate %_UniformBuffer 0 Offset 0 19OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 20OpMemberDecorate %_UniformBuffer 1 Offset 16 21OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 22OpDecorate %_UniformBuffer Block 23OpDecorate %11 Binding 0 24OpDecorate %11 DescriptorSet 0 25OpDecorate %21 RelaxedPrecision 26OpDecorate %22 RelaxedPrecision 27OpDecorate %23 RelaxedPrecision 28OpDecorate %24 RelaxedPrecision 29OpDecorate %25 RelaxedPrecision 30OpDecorate %32 RelaxedPrecision 31OpDecorate %33 RelaxedPrecision 32OpDecorate %34 RelaxedPrecision 33OpDecorate %35 RelaxedPrecision 34OpDecorate %36 RelaxedPrecision 35OpDecorate %37 RelaxedPrecision 36OpDecorate %38 RelaxedPrecision 37OpDecorate %39 RelaxedPrecision 38OpDecorate %40 RelaxedPrecision 39OpDecorate %41 RelaxedPrecision 40OpDecorate %42 RelaxedPrecision 41OpDecorate %43 RelaxedPrecision 42OpDecorate %44 RelaxedPrecision 43OpDecorate %45 RelaxedPrecision 44OpDecorate %46 RelaxedPrecision 45OpDecorate %47 RelaxedPrecision 46OpDecorate %48 RelaxedPrecision 47OpDecorate %49 RelaxedPrecision 48OpDecorate %50 RelaxedPrecision 49OpDecorate %51 RelaxedPrecision 50OpDecorate %52 RelaxedPrecision 51OpDecorate %53 RelaxedPrecision 52OpDecorate %54 RelaxedPrecision 53OpDecorate %55 RelaxedPrecision 54OpDecorate %56 RelaxedPrecision 55OpDecorate %_0_result RelaxedPrecision 56OpDecorate %66 RelaxedPrecision 57OpDecorate %67 RelaxedPrecision 58OpDecorate %71 RelaxedPrecision 59OpDecorate %72 RelaxedPrecision 60OpDecorate %76 RelaxedPrecision 61OpDecorate %77 RelaxedPrecision 62OpDecorate %80 RelaxedPrecision 63OpDecorate %81 RelaxedPrecision 64OpDecorate %85 RelaxedPrecision 65OpDecorate %86 RelaxedPrecision 66OpDecorate %89 RelaxedPrecision 67OpDecorate %90 RelaxedPrecision 68OpDecorate %94 RelaxedPrecision 69OpDecorate %95 RelaxedPrecision 70OpDecorate %98 RelaxedPrecision 71OpDecorate %99 RelaxedPrecision 72OpDecorate %100 RelaxedPrecision 73OpDecorate %102 RelaxedPrecision 74OpDecorate %103 RelaxedPrecision 75OpDecorate %104 RelaxedPrecision 76OpDecorate %105 RelaxedPrecision 77OpDecorate %106 RelaxedPrecision 78OpDecorate %107 RelaxedPrecision 79OpDecorate %108 RelaxedPrecision 80OpDecorate %111 RelaxedPrecision 81OpDecorate %112 RelaxedPrecision 82OpDecorate %114 RelaxedPrecision 83OpDecorate %115 RelaxedPrecision 84OpDecorate %116 RelaxedPrecision 85OpDecorate %117 RelaxedPrecision 86OpDecorate %119 RelaxedPrecision 87OpDecorate %120 RelaxedPrecision 88OpDecorate %122 RelaxedPrecision 89OpDecorate %123 RelaxedPrecision 90OpDecorate %124 RelaxedPrecision 91OpDecorate %125 RelaxedPrecision 92OpDecorate %126 RelaxedPrecision 93OpDecorate %127 RelaxedPrecision 94OpDecorate %128 RelaxedPrecision 95OpDecorate %129 RelaxedPrecision 96OpDecorate %130 RelaxedPrecision 97%float = OpTypeFloat 32 98%v4float = OpTypeVector %float 4 99%_ptr_Output_v4float = OpTypePointer Output %v4float 100%sk_FragColor = OpVariable %_ptr_Output_v4float Output 101%bool = OpTypeBool 102%_ptr_Input_bool = OpTypePointer Input %bool 103%sk_Clockwise = OpVariable %_ptr_Input_bool Input 104%_UniformBuffer = OpTypeStruct %v4float %v4float 105%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 106%11 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 107%v2float = OpTypeVector %float 2 108%_ptr_Function_v2float = OpTypePointer Function %v2float 109%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float 110%float_2 = OpConstant %float 2 111%_ptr_Function_float = OpTypePointer Function %float 112%void = OpTypeVoid 113%58 = OpTypeFunction %void 114%_ptr_Function_v4float = OpTypePointer Function %v4float 115%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 116%int = OpTypeInt 32 1 117%int_1 = OpConstant %int 1 118%int_0 = OpConstant %int 0 119%float_1 = OpConstant %float 1 120%v3float = OpTypeVector %float 3 121%_blend_overlay_component_hh2h2 = OpFunction %float None %15 122%17 = OpFunctionParameter %_ptr_Function_v2float 123%18 = OpFunctionParameter %_ptr_Function_v2float 124%19 = OpLabel 125%27 = OpVariable %_ptr_Function_float Function 126%21 = OpLoad %v2float %18 127%22 = OpCompositeExtract %float %21 0 128%23 = OpFMul %float %float_2 %22 129%24 = OpLoad %v2float %18 130%25 = OpCompositeExtract %float %24 1 131%26 = OpFOrdLessThanEqual %bool %23 %25 132OpSelectionMerge %31 None 133OpBranchConditional %26 %29 %30 134%29 = OpLabel 135%32 = OpLoad %v2float %17 136%33 = OpCompositeExtract %float %32 0 137%34 = OpFMul %float %float_2 %33 138%35 = OpLoad %v2float %18 139%36 = OpCompositeExtract %float %35 0 140%37 = OpFMul %float %34 %36 141OpStore %27 %37 142OpBranch %31 143%30 = OpLabel 144%38 = OpLoad %v2float %17 145%39 = OpCompositeExtract %float %38 1 146%40 = OpLoad %v2float %18 147%41 = OpCompositeExtract %float %40 1 148%42 = OpFMul %float %39 %41 149%43 = OpLoad %v2float %18 150%44 = OpCompositeExtract %float %43 1 151%45 = OpLoad %v2float %18 152%46 = OpCompositeExtract %float %45 0 153%47 = OpFSub %float %44 %46 154%48 = OpFMul %float %float_2 %47 155%49 = OpLoad %v2float %17 156%50 = OpCompositeExtract %float %49 1 157%51 = OpLoad %v2float %17 158%52 = OpCompositeExtract %float %51 0 159%53 = OpFSub %float %50 %52 160%54 = OpFMul %float %48 %53 161%55 = OpFSub %float %42 %54 162OpStore %27 %55 163OpBranch %31 164%31 = OpLabel 165%56 = OpLoad %float %27 166OpReturnValue %56 167OpFunctionEnd 168%main = OpFunction %void None %58 169%59 = OpLabel 170%_0_result = OpVariable %_ptr_Function_v4float Function 171%68 = OpVariable %_ptr_Function_v2float Function 172%73 = OpVariable %_ptr_Function_v2float Function 173%78 = OpVariable %_ptr_Function_v2float Function 174%82 = OpVariable %_ptr_Function_v2float Function 175%87 = OpVariable %_ptr_Function_v2float Function 176%91 = OpVariable %_ptr_Function_v2float Function 177%62 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1 178%66 = OpLoad %v4float %62 179%67 = OpVectorShuffle %v2float %66 %66 0 3 180OpStore %68 %67 181%69 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0 182%71 = OpLoad %v4float %69 183%72 = OpVectorShuffle %v2float %71 %71 0 3 184OpStore %73 %72 185%74 = OpFunctionCall %float %_blend_overlay_component_hh2h2 %68 %73 186%75 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1 187%76 = OpLoad %v4float %75 188%77 = OpVectorShuffle %v2float %76 %76 1 3 189OpStore %78 %77 190%79 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0 191%80 = OpLoad %v4float %79 192%81 = OpVectorShuffle %v2float %80 %80 1 3 193OpStore %82 %81 194%83 = OpFunctionCall %float %_blend_overlay_component_hh2h2 %78 %82 195%84 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1 196%85 = OpLoad %v4float %84 197%86 = OpVectorShuffle %v2float %85 %85 2 3 198OpStore %87 %86 199%88 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0 200%89 = OpLoad %v4float %88 201%90 = OpVectorShuffle %v2float %89 %89 2 3 202OpStore %91 %90 203%92 = OpFunctionCall %float %_blend_overlay_component_hh2h2 %87 %91 204%93 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1 205%94 = OpLoad %v4float %93 206%95 = OpCompositeExtract %float %94 3 207%97 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1 208%98 = OpLoad %v4float %97 209%99 = OpCompositeExtract %float %98 3 210%100 = OpFSub %float %float_1 %99 211%101 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0 212%102 = OpLoad %v4float %101 213%103 = OpCompositeExtract %float %102 3 214%104 = OpFMul %float %100 %103 215%105 = OpFAdd %float %95 %104 216%106 = OpCompositeConstruct %v4float %74 %83 %92 %105 217OpStore %_0_result %106 218%107 = OpLoad %v4float %_0_result 219%108 = OpVectorShuffle %v3float %107 %107 0 1 2 220%110 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0 221%111 = OpLoad %v4float %110 222%112 = OpVectorShuffle %v3float %111 %111 0 1 2 223%113 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1 224%114 = OpLoad %v4float %113 225%115 = OpCompositeExtract %float %114 3 226%116 = OpFSub %float %float_1 %115 227%117 = OpVectorTimesScalar %v3float %112 %116 228%118 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1 229%119 = OpLoad %v4float %118 230%120 = OpVectorShuffle %v3float %119 %119 0 1 2 231%121 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0 232%122 = OpLoad %v4float %121 233%123 = OpCompositeExtract %float %122 3 234%124 = OpFSub %float %float_1 %123 235%125 = OpVectorTimesScalar %v3float %120 %124 236%126 = OpFAdd %v3float %117 %125 237%127 = OpFAdd %v3float %108 %126 238%128 = OpLoad %v4float %_0_result 239%129 = OpVectorShuffle %v4float %128 %127 4 5 6 3 240OpStore %_0_result %129 241%130 = OpLoad %v4float %_0_result 242OpStore %sk_FragColor %130 243OpReturn 244OpFunctionEnd 245