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