1OpCapability Shader 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise 5OpExecutionMode %_entrypoint_v OriginUpperLeft 6OpName %sk_FragColor "sk_FragColor" 7OpName %sk_Clockwise "sk_Clockwise" 8OpName %_UniformBuffer "_UniformBuffer" 9OpMemberName %_UniformBuffer 0 "testInputs" 10OpMemberName %_UniformBuffer 1 "colorGreen" 11OpMemberName %_UniformBuffer 2 "colorRed" 12OpName %_entrypoint_v "_entrypoint_v" 13OpName %main "main" 14OpName %expected "expected" 15OpName %exponents "exponents" 16OpDecorate %sk_FragColor RelaxedPrecision 17OpDecorate %sk_FragColor Location 0 18OpDecorate %sk_FragColor Index 0 19OpDecorate %sk_Clockwise BuiltIn FrontFacing 20OpMemberDecorate %_UniformBuffer 0 Offset 0 21OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 22OpMemberDecorate %_UniformBuffer 1 Offset 16 23OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 24OpMemberDecorate %_UniformBuffer 2 Offset 32 25OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision 26OpDecorate %_UniformBuffer Block 27OpDecorate %10 Binding 0 28OpDecorate %10 DescriptorSet 0 29OpDecorate %expected RelaxedPrecision 30OpDecorate %31 RelaxedPrecision 31OpDecorate %exponents RelaxedPrecision 32OpDecorate %37 RelaxedPrecision 33OpDecorate %39 RelaxedPrecision 34OpDecorate %44 RelaxedPrecision 35OpDecorate %45 RelaxedPrecision 36OpDecorate %46 RelaxedPrecision 37OpDecorate %47 RelaxedPrecision 38OpDecorate %51 RelaxedPrecision 39OpDecorate %53 RelaxedPrecision 40OpDecorate %54 RelaxedPrecision 41OpDecorate %55 RelaxedPrecision 42OpDecorate %56 RelaxedPrecision 43OpDecorate %57 RelaxedPrecision 44OpDecorate %64 RelaxedPrecision 45OpDecorate %66 RelaxedPrecision 46OpDecorate %67 RelaxedPrecision 47OpDecorate %69 RelaxedPrecision 48OpDecorate %70 RelaxedPrecision 49OpDecorate %71 RelaxedPrecision 50OpDecorate %78 RelaxedPrecision 51OpDecorate %80 RelaxedPrecision 52OpDecorate %81 RelaxedPrecision 53OpDecorate %82 RelaxedPrecision 54OpDecorate %90 RelaxedPrecision 55OpDecorate %91 RelaxedPrecision 56OpDecorate %96 RelaxedPrecision 57OpDecorate %97 RelaxedPrecision 58OpDecorate %98 RelaxedPrecision 59OpDecorate %104 RelaxedPrecision 60OpDecorate %105 RelaxedPrecision 61OpDecorate %106 RelaxedPrecision 62OpDecorate %112 RelaxedPrecision 63OpDecorate %113 RelaxedPrecision 64OpDecorate %123 RelaxedPrecision 65OpDecorate %126 RelaxedPrecision 66OpDecorate %127 RelaxedPrecision 67%float = OpTypeFloat 32 68%v4float = OpTypeVector %float 4 69%_ptr_Output_v4float = OpTypePointer Output %v4float 70%sk_FragColor = OpVariable %_ptr_Output_v4float Output 71%bool = OpTypeBool 72%_ptr_Input_bool = OpTypePointer Input %bool 73%sk_Clockwise = OpVariable %_ptr_Input_bool Input 74%_UniformBuffer = OpTypeStruct %v4float %v4float %v4float 75%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 76%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 77%void = OpTypeVoid 78%15 = OpTypeFunction %void 79%v2float = OpTypeVector %float 2 80%float_0 = OpConstant %float 0 81%19 = OpConstantComposite %v2float %float_0 %float_0 82%_ptr_Function_v2float = OpTypePointer Function %v2float 83%23 = OpTypeFunction %v4float %_ptr_Function_v2float 84%_ptr_Function_v4float = OpTypePointer Function %v4float 85%float_n1_5625 = OpConstant %float -1.5625 86%float_0_75 = OpConstant %float 0.75 87%float_3_375 = OpConstant %float 3.375 88%31 = OpConstantComposite %v4float %float_n1_5625 %float_0 %float_0_75 %float_3_375 89%float_2 = OpConstant %float 2 90%float_3 = OpConstant %float 3 91%float_1 = OpConstant %float 1 92%float_1_5 = OpConstant %float 1.5 93%37 = OpConstantComposite %v4float %float_2 %float_3 %float_1 %float_1_5 94%false = OpConstantFalse %bool 95%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 96%int = OpTypeInt 32 1 97%int_0 = OpConstant %int 0 98%55 = OpConstantComposite %v2float %float_2 %float_3 99%v2bool = OpTypeVector %bool 2 100%v3float = OpTypeVector %float 3 101%69 = OpConstantComposite %v3float %float_2 %float_3 %float_1 102%v3bool = OpTypeVector %bool 3 103%v4bool = OpTypeVector %bool 4 104%float_1_5625 = OpConstant %float 1.5625 105%96 = OpConstantComposite %v2float %float_1_5625 %float_0 106%104 = OpConstantComposite %v3float %float_1_5625 %float_0 %float_0_75 107%112 = OpConstantComposite %v4float %float_1_5625 %float_0 %float_0_75 %float_3_375 108%int_1 = OpConstant %int 1 109%int_2 = OpConstant %int 2 110%_entrypoint_v = OpFunction %void None %15 111%16 = OpLabel 112%20 = OpVariable %_ptr_Function_v2float Function 113OpStore %20 %19 114%22 = OpFunctionCall %v4float %main %20 115OpStore %sk_FragColor %22 116OpReturn 117OpFunctionEnd 118%main = OpFunction %v4float None %23 119%24 = OpFunctionParameter %_ptr_Function_v2float 120%25 = OpLabel 121%expected = OpVariable %_ptr_Function_v4float Function 122%exponents = OpVariable %_ptr_Function_v4float Function 123%117 = OpVariable %_ptr_Function_v4float Function 124OpStore %expected %31 125OpStore %exponents %37 126%40 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 127%44 = OpLoad %v4float %40 128%45 = OpCompositeExtract %float %44 0 129%39 = OpExtInst %float %1 Pow %45 %float_2 130%46 = OpLoad %v4float %expected 131%47 = OpCompositeExtract %float %46 0 132%48 = OpFOrdEqual %bool %39 %47 133OpSelectionMerge %50 None 134OpBranchConditional %48 %49 %50 135%49 = OpLabel 136%52 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 137%53 = OpLoad %v4float %52 138%54 = OpVectorShuffle %v2float %53 %53 0 1 139%51 = OpExtInst %v2float %1 Pow %54 %55 140%56 = OpLoad %v4float %expected 141%57 = OpVectorShuffle %v2float %56 %56 0 1 142%58 = OpFOrdEqual %v2bool %51 %57 143%60 = OpAll %bool %58 144OpBranch %50 145%50 = OpLabel 146%61 = OpPhi %bool %false %25 %60 %49 147OpSelectionMerge %63 None 148OpBranchConditional %61 %62 %63 149%62 = OpLabel 150%65 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 151%66 = OpLoad %v4float %65 152%67 = OpVectorShuffle %v3float %66 %66 0 1 2 153%64 = OpExtInst %v3float %1 Pow %67 %69 154%70 = OpLoad %v4float %expected 155%71 = OpVectorShuffle %v3float %70 %70 0 1 2 156%72 = OpFOrdEqual %v3bool %64 %71 157%74 = OpAll %bool %72 158OpBranch %63 159%63 = OpLabel 160%75 = OpPhi %bool %false %50 %74 %62 161OpSelectionMerge %77 None 162OpBranchConditional %75 %76 %77 163%76 = OpLabel 164%79 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 165%80 = OpLoad %v4float %79 166%81 = OpLoad %v4float %exponents 167%78 = OpExtInst %v4float %1 Pow %80 %81 168%82 = OpLoad %v4float %expected 169%83 = OpFOrdEqual %v4bool %78 %82 170%85 = OpAll %bool %83 171OpBranch %77 172%77 = OpLabel 173%86 = OpPhi %bool %false %63 %85 %76 174OpSelectionMerge %88 None 175OpBranchConditional %86 %87 %88 176%87 = OpLabel 177%90 = OpLoad %v4float %expected 178%91 = OpCompositeExtract %float %90 0 179%92 = OpFOrdEqual %bool %float_1_5625 %91 180OpBranch %88 181%88 = OpLabel 182%93 = OpPhi %bool %false %77 %92 %87 183OpSelectionMerge %95 None 184OpBranchConditional %93 %94 %95 185%94 = OpLabel 186%97 = OpLoad %v4float %expected 187%98 = OpVectorShuffle %v2float %97 %97 0 1 188%99 = OpFOrdEqual %v2bool %96 %98 189%100 = OpAll %bool %99 190OpBranch %95 191%95 = OpLabel 192%101 = OpPhi %bool %false %88 %100 %94 193OpSelectionMerge %103 None 194OpBranchConditional %101 %102 %103 195%102 = OpLabel 196%105 = OpLoad %v4float %expected 197%106 = OpVectorShuffle %v3float %105 %105 0 1 2 198%107 = OpFOrdEqual %v3bool %104 %106 199%108 = OpAll %bool %107 200OpBranch %103 201%103 = OpLabel 202%109 = OpPhi %bool %false %95 %108 %102 203OpSelectionMerge %111 None 204OpBranchConditional %109 %110 %111 205%110 = OpLabel 206%113 = OpLoad %v4float %expected 207%114 = OpFOrdEqual %v4bool %112 %113 208%115 = OpAll %bool %114 209OpBranch %111 210%111 = OpLabel 211%116 = OpPhi %bool %false %103 %115 %110 212OpSelectionMerge %120 None 213OpBranchConditional %116 %118 %119 214%118 = OpLabel 215%121 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 216%123 = OpLoad %v4float %121 217OpStore %117 %123 218OpBranch %120 219%119 = OpLabel 220%124 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2 221%126 = OpLoad %v4float %124 222OpStore %117 %126 223OpBranch %120 224%120 = OpLabel 225%127 = OpLoad %v4float %117 226OpReturnValue %127 227OpFunctionEnd 228