OpCapability Shader %1 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint Fragment %main "main" %_GLF_color OpExecutionMode %main OriginUpperLeft OpSource ESSL 310 OpName %main "main" OpName %_GLF_color "_GLF_color" OpName %i "i" OpName %data "data" OpDecorate %_GLF_color Location 0 OpDecorate %i RelaxedPrecision OpDecorate %6 RelaxedPrecision OpDecorate %7 RelaxedPrecision OpDecorate %8 RelaxedPrecision OpDecorate %9 RelaxedPrecision OpDecorate %10 RelaxedPrecision %void = OpTypeVoid %12 = OpTypeFunction %void %float = OpTypeFloat 32 %v4float = OpTypeVector %float 4 %_ptr_Output_v4float = OpTypePointer Output %v4float %_GLF_color = OpVariable %_ptr_Output_v4float Output %float_1 = OpConstant %float 1 %float_0 = OpConstant %float 0 %18 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1 %int = OpTypeInt 32 1 %_ptr_Function_int = OpTypePointer Function %int %int_0 = OpConstant %int 0 %int_1 = OpConstant %int 1 %bool = OpTypeBool %uint = OpTypeInt 32 0 %uint_1 = OpConstant %uint 1 %_arr_float_uint_1 = OpTypeArray %float %uint_1 %_ptr_Function__arr_float_uint_1 = OpTypePointer Function %_arr_float_uint_1 %_ptr_Function_float = OpTypePointer Function %float %false = OpConstantFalse %bool %true = OpConstantTrue %bool %float_2 = OpConstant %float 2 %main = OpFunction %void None %12 %32 = OpLabel %i = OpVariable %_ptr_Function_int Function %data = OpVariable %_ptr_Function__arr_float_uint_1 Function OpStore %_GLF_color %18 OpStore %i %int_0 OpBranch %33 %33 = OpLabel OpLoopMerge %34 %35 None OpBranch %36 %36 = OpLabel %6 = OpLoad %int %i %37 = OpSLessThan %bool %6 %int_1 OpBranchConditional %37 %38 %34 %38 = OpLabel %7 = OpLoad %int %i %39 = OpAccessChain %_ptr_Function_float %data %7 %40 = OpLoad %float %39 %41 = OpAccessChain %_ptr_Function_float %data %int_0 %42 = OpLoad %float %41 %43 = OpFOrdLessThan %bool %40 %42 OpSelectionMerge %44 None OpBranchConditional %43 %45 %44 %45 = OpLabel OpSelectionMerge %46 None OpBranchConditional %false %47 %46 %47 = OpLabel %8 = OpLoad %int %i %48 = OpConvertSToF %float %8 %49 = OpFOrdGreaterThanEqual %bool %48 %float_1 OpSelectionMerge %50 None OpBranchConditional %49 %51 %50 %51 = OpLabel OpBranch %50 %50 = OpLabel OpBranch %46 %46 = OpLabel OpSelectionMerge %52 None OpSwitch %int_0 %52 1 %53 0 %54 %53 = OpLabel OpBranch %55 %55 = OpLabel OpLoopMerge %56 %57 None OpBranch %58 %58 = OpLabel OpBranchConditional %true %59 %56 %59 = OpLabel OpBranch %57 %57 = OpLabel OpBranch %55 %56 = OpLabel OpBranch %60 %60 = OpLabel OpLoopMerge %61 %62 None OpBranch %63 %63 = OpLabel OpBranch %62 %62 = OpLabel OpBranch %60 %61 = OpLabel OpBranch %54 %54 = OpLabel %64 = OpAccessChain %_ptr_Function_float %data %int_0 OpStore %64 %float_2 OpBranch %52 %52 = OpLabel OpBranch %44 %44 = OpLabel OpBranch %35 %35 = OpLabel %9 = OpLoad %int %i %10 = OpIAdd %int %9 %int_1 OpStore %i %10 OpBranch %33 %34 = OpLabel OpReturn OpFunctionEnd