1 OpCapability Shader 2 %1 = OpExtInstImport "GLSL.std.450" 3 OpMemoryModel Logical GLSL450 4 OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor 5 OpExecutionMode %_entrypoint_v OriginUpperLeft 6 OpName %sk_FragColor "sk_FragColor" 7 OpName %_UniformBuffer "_UniformBuffer" 8 OpMemberName %_UniformBuffer 0 "colorGreen" 9 OpMemberName %_UniformBuffer 1 "colorRed" 10 OpName %_entrypoint_v "_entrypoint_v" 11 OpName %main "main" 12 OpDecorate %sk_FragColor RelaxedPrecision 13 OpDecorate %sk_FragColor Location 0 14 OpDecorate %sk_FragColor Index 0 15 OpMemberDecorate %_UniformBuffer 0 Offset 0 16 OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 17 OpMemberDecorate %_UniformBuffer 1 Offset 16 18 OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 19 OpDecorate %_UniformBuffer Block 20 OpDecorate %7 Binding 0 21 OpDecorate %7 DescriptorSet 0 22 OpDecorate %27 RelaxedPrecision 23 OpDecorate %28 RelaxedPrecision 24 OpDecorate %33 RelaxedPrecision 25 %float = OpTypeFloat 32 26 %v4float = OpTypeVector %float 4 27%_ptr_Output_v4float = OpTypePointer Output %v4float 28%sk_FragColor = OpVariable %_ptr_Output_v4float Output 29%_UniformBuffer = OpTypeStruct %v4float %v4float 30%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 31 %7 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 32 %void = OpTypeVoid 33 %12 = OpTypeFunction %void 34 %float_0 = OpConstant %float 0 35 %v2float = OpTypeVector %float 2 36 %16 = OpConstantComposite %v2float %float_0 %float_0 37%_ptr_Function_v2float = OpTypePointer Function %v2float 38 %20 = OpTypeFunction %v4float %_ptr_Function_v2float 39%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 40 %int = OpTypeInt 32 1 41 %int_0 = OpConstant %int 0 42%_entrypoint_v = OpFunction %void None %12 43 %13 = OpLabel 44 %17 = OpVariable %_ptr_Function_v2float Function 45 OpStore %17 %16 46 %19 = OpFunctionCall %v4float %main %17 47 OpStore %sk_FragColor %19 48 OpReturn 49 OpFunctionEnd 50 %main = OpFunction %v4float None %20 51 %21 = OpFunctionParameter %_ptr_Function_v2float 52 %22 = OpLabel 53 %23 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 54 %27 = OpLoad %v4float %23 55 %28 = OpCompositeExtract %float %27 1 56 %29 = OpConvertFToS %int %28 57 OpSelectionMerge %30 None 58 OpSwitch %29 %31 59 %31 = OpLabel 60 %32 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 61 %33 = OpLoad %v4float %32 62 OpReturnValue %33 63 %30 = OpLabel 64 OpUnreachable 65 OpFunctionEnd 66