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