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" 15OpDecorate %sk_FragColor RelaxedPrecision 16OpDecorate %sk_FragColor Location 0 17OpDecorate %sk_FragColor Index 0 18OpDecorate %sk_Clockwise BuiltIn FrontFacing 19OpMemberDecorate %_UniformBuffer 0 Offset 0 20OpMemberDecorate %_UniformBuffer 1 Offset 16 21OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 22OpMemberDecorate %_UniformBuffer 2 Offset 32 23OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision 24OpDecorate %_UniformBuffer Block 25OpDecorate %10 Binding 0 26OpDecorate %10 DescriptorSet 0 27OpDecorate %112 RelaxedPrecision 28OpDecorate %115 RelaxedPrecision 29OpDecorate %116 RelaxedPrecision 30%float = OpTypeFloat 32 31%v4float = OpTypeVector %float 4 32%_ptr_Output_v4float = OpTypePointer Output %v4float 33%sk_FragColor = OpVariable %_ptr_Output_v4float Output 34%bool = OpTypeBool 35%_ptr_Input_bool = OpTypePointer Input %bool 36%sk_Clockwise = OpVariable %_ptr_Input_bool Input 37%_UniformBuffer = OpTypeStruct %v4float %v4float %v4float 38%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 39%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 40%void = OpTypeVoid 41%15 = OpTypeFunction %void 42%v2float = OpTypeVector %float 2 43%float_0 = OpConstant %float 0 44%19 = OpConstantComposite %v2float %float_0 %float_0 45%_ptr_Function_v2float = OpTypePointer Function %v2float 46%23 = OpTypeFunction %v4float %_ptr_Function_v2float 47%_ptr_Function_v4float = OpTypePointer Function %v4float 48%float_1_25 = OpConstant %float 1.25 49%float_0_75 = OpConstant %float 0.75 50%float_2_25 = OpConstant %float 2.25 51%31 = OpConstantComposite %v4float %float_1_25 %float_0 %float_0_75 %float_2_25 52%false = OpConstantFalse %bool 53%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 54%int = OpTypeInt 32 1 55%int_0 = OpConstant %int 0 56%v2bool = OpTypeVector %bool 2 57%v3float = OpTypeVector %float 3 58%v3bool = OpTypeVector %bool 3 59%v4bool = OpTypeVector %bool 4 60%86 = OpConstantComposite %v2float %float_1_25 %float_0 61%94 = OpConstantComposite %v3float %float_1_25 %float_0 %float_0_75 62%int_1 = OpConstant %int 1 63%int_2 = OpConstant %int 2 64%_entrypoint_v = OpFunction %void None %15 65%16 = OpLabel 66%20 = OpVariable %_ptr_Function_v2float Function 67OpStore %20 %19 68%22 = OpFunctionCall %v4float %main %20 69OpStore %sk_FragColor %22 70OpReturn 71OpFunctionEnd 72%main = OpFunction %v4float None %23 73%24 = OpFunctionParameter %_ptr_Function_v2float 74%25 = OpLabel 75%expected = OpVariable %_ptr_Function_v4float Function 76%106 = OpVariable %_ptr_Function_v4float Function 77OpStore %expected %31 78%34 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 79%38 = OpLoad %v4float %34 80%39 = OpCompositeExtract %float %38 0 81%33 = OpExtInst %float %1 FAbs %39 82%40 = OpLoad %v4float %expected 83%41 = OpCompositeExtract %float %40 0 84%42 = OpFOrdEqual %bool %33 %41 85OpSelectionMerge %44 None 86OpBranchConditional %42 %43 %44 87%43 = OpLabel 88%46 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 89%47 = OpLoad %v4float %46 90%48 = OpVectorShuffle %v2float %47 %47 0 1 91%45 = OpExtInst %v2float %1 FAbs %48 92%49 = OpLoad %v4float %expected 93%50 = OpVectorShuffle %v2float %49 %49 0 1 94%51 = OpFOrdEqual %v2bool %45 %50 95%53 = OpAll %bool %51 96OpBranch %44 97%44 = OpLabel 98%54 = OpPhi %bool %false %25 %53 %43 99OpSelectionMerge %56 None 100OpBranchConditional %54 %55 %56 101%55 = OpLabel 102%58 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 103%59 = OpLoad %v4float %58 104%60 = OpVectorShuffle %v3float %59 %59 0 1 2 105%57 = OpExtInst %v3float %1 FAbs %60 106%62 = OpLoad %v4float %expected 107%63 = OpVectorShuffle %v3float %62 %62 0 1 2 108%64 = OpFOrdEqual %v3bool %57 %63 109%66 = OpAll %bool %64 110OpBranch %56 111%56 = OpLabel 112%67 = OpPhi %bool %false %44 %66 %55 113OpSelectionMerge %69 None 114OpBranchConditional %67 %68 %69 115%68 = OpLabel 116%71 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 117%72 = OpLoad %v4float %71 118%70 = OpExtInst %v4float %1 FAbs %72 119%73 = OpLoad %v4float %expected 120%74 = OpFOrdEqual %v4bool %70 %73 121%76 = OpAll %bool %74 122OpBranch %69 123%69 = OpLabel 124%77 = OpPhi %bool %false %56 %76 %68 125OpSelectionMerge %79 None 126OpBranchConditional %77 %78 %79 127%78 = OpLabel 128%80 = OpLoad %v4float %expected 129%81 = OpCompositeExtract %float %80 0 130%82 = OpFOrdEqual %bool %float_1_25 %81 131OpBranch %79 132%79 = OpLabel 133%83 = OpPhi %bool %false %69 %82 %78 134OpSelectionMerge %85 None 135OpBranchConditional %83 %84 %85 136%84 = OpLabel 137%87 = OpLoad %v4float %expected 138%88 = OpVectorShuffle %v2float %87 %87 0 1 139%89 = OpFOrdEqual %v2bool %86 %88 140%90 = OpAll %bool %89 141OpBranch %85 142%85 = OpLabel 143%91 = OpPhi %bool %false %79 %90 %84 144OpSelectionMerge %93 None 145OpBranchConditional %91 %92 %93 146%92 = OpLabel 147%95 = OpLoad %v4float %expected 148%96 = OpVectorShuffle %v3float %95 %95 0 1 2 149%97 = OpFOrdEqual %v3bool %94 %96 150%98 = OpAll %bool %97 151OpBranch %93 152%93 = OpLabel 153%99 = OpPhi %bool %false %85 %98 %92 154OpSelectionMerge %101 None 155OpBranchConditional %99 %100 %101 156%100 = OpLabel 157%102 = OpLoad %v4float %expected 158%103 = OpFOrdEqual %v4bool %31 %102 159%104 = OpAll %bool %103 160OpBranch %101 161%101 = OpLabel 162%105 = OpPhi %bool %false %93 %104 %100 163OpSelectionMerge %109 None 164OpBranchConditional %105 %107 %108 165%107 = OpLabel 166%110 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 167%112 = OpLoad %v4float %110 168OpStore %106 %112 169OpBranch %109 170%108 = OpLabel 171%113 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2 172%115 = OpLoad %v4float %113 173OpStore %106 %115 174OpBranch %109 175%109 = OpLabel 176%116 = OpLoad %v4float %106 177OpReturnValue %116 178OpFunctionEnd 179