OpCapability Shader %1 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint Fragment %main "main" %_GLF_color OpExecutionMode %main OriginUpperLeft OpSource ESSL 320 OpName %main "main" OpName %arr "arr" OpName %buf1 "buf1" OpMemberName %buf1 0 "_GLF_uniform_float_values" OpName %_ "" OpName %a "a" OpName %buf0 "buf0" OpMemberName %buf0 0 "_GLF_uniform_int_values" OpName %__0 "" OpName %_GLF_color "_GLF_color" OpDecorate %_arr_float_uint_3_0 ArrayStride 16 OpMemberDecorate %buf1 0 Offset 0 OpDecorate %buf1 Block OpDecorate %_ DescriptorSet 0 OpDecorate %_ Binding 1 OpDecorate %_arr_int_uint_3 ArrayStride 16 OpMemberDecorate %buf0 0 Offset 0 OpDecorate %buf0 Block OpDecorate %__0 DescriptorSet 0 OpDecorate %__0 Binding 0 OpDecorate %_GLF_color Location 0 %void = OpTypeVoid %13 = OpTypeFunction %void %float = OpTypeFloat 32 %uint = OpTypeInt 32 0 %uint_3 = OpConstant %uint 3 %_arr_float_uint_3 = OpTypeArray %float %uint_3 %_ptr_Function__arr_float_uint_3 = OpTypePointer Function %_arr_float_uint_3 %_arr_float_uint_3_0 = OpTypeArray %float %uint_3 %buf1 = OpTypeStruct %_arr_float_uint_3_0 %_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1 %_ = OpVariable %_ptr_Uniform_buf1 Uniform %int = OpTypeInt 32 1 %int_0 = OpConstant %int 0 %int_1 = OpConstant %int 1 %_ptr_Uniform_float = OpTypePointer Uniform %float %int_2 = OpConstant %int 2 %_ptr_Function_int = OpTypePointer Function %int %_arr_int_uint_3 = OpTypeArray %int %uint_3 %buf0 = OpTypeStruct %_arr_int_uint_3 %_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0 %__0 = OpVariable %_ptr_Uniform_buf0 Uniform %_ptr_Uniform_int = OpTypePointer Uniform %int %bool = OpTypeBool %_ptr_Function_float = OpTypePointer Function %float %v4float = OpTypeVector %float 4 %_ptr_Output_v4float = OpTypePointer Output %v4float %_GLF_color = OpVariable %_ptr_Output_v4float Output %main = OpFunction %void None %13 %32 = OpLabel %arr = OpVariable %_ptr_Function__arr_float_uint_3 Function %a = OpVariable %_ptr_Function_int Function %33 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_1 %34 = OpLoad %float %33 %35 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_0 %36 = OpLoad %float %35 %37 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_2 %38 = OpLoad %float %37 %39 = OpCompositeConstruct %_arr_float_uint_3 %34 %36 %38 OpStore %arr %39 OpStore %a %int_0 OpBranch %40 %40 = OpLabel OpLoopMerge %41 %42 None OpBranch %43 %43 = OpLabel %44 = OpLoad %int %a %45 = OpAccessChain %_ptr_Uniform_int %__0 %int_0 %int_1 %46 = OpLoad %int %45 %47 = OpSLessThanEqual %bool %44 %46 OpBranchConditional %47 %48 %41 %48 = OpLabel %49 = OpLoad %int %a %50 = OpIAdd %int %49 %int_1 OpStore %a %50 %51 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_0 %52 = OpLoad %float %51 %53 = OpAccessChain %_ptr_Function_float %arr %49 OpStore %53 %52 OpBranch %42 %42 = OpLabel OpBranch %40 %41 = OpLabel %54 = OpAccessChain %_ptr_Uniform_int %__0 %int_0 %int_1 %55 = OpLoad %int %54 %56 = OpAccessChain %_ptr_Function_float %arr %55 %57 = OpLoad %float %56 %58 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_0 %59 = OpLoad %float %58 %60 = OpFOrdEqual %bool %57 %59 OpSelectionMerge %61 None OpBranchConditional %60 %62 %61 %62 = OpLabel %63 = OpAccessChain %_ptr_Uniform_int %__0 %int_0 %int_2 %64 = OpLoad %int %63 %65 = OpAccessChain %_ptr_Function_float %arr %64 %66 = OpLoad %float %65 %67 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_0 %68 = OpLoad %float %67 %69 = OpFOrdEqual %bool %66 %68 OpBranch %61 %61 = OpLabel %70 = OpPhi %bool %60 %41 %69 %62 OpSelectionMerge %71 None OpBranchConditional %70 %72 %71 %72 = OpLabel %73 = OpAccessChain %_ptr_Uniform_int %__0 %int_0 %int_0 %74 = OpLoad %int %73 %75 = OpAccessChain %_ptr_Function_float %arr %74 %76 = OpLoad %float %75 %77 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_2 %78 = OpLoad %float %77 %79 = OpFOrdEqual %bool %76 %78 OpBranch %71 %71 = OpLabel %80 = OpPhi %bool %70 %61 %79 %72 OpSelectionMerge %81 None OpBranchConditional %80 %82 %83 %82 = OpLabel %84 = OpAccessChain %_ptr_Uniform_int %__0 %int_0 %int_1 %85 = OpLoad %int %84 %86 = OpAccessChain %_ptr_Function_float %arr %85 %87 = OpLoad %float %86 %88 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_1 %89 = OpLoad %float %88 %90 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_1 %91 = OpLoad %float %90 %92 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_0 %93 = OpLoad %float %92 %94 = OpCompositeConstruct %v4float %87 %89 %91 %93 OpStore %_GLF_color %94 OpBranch %81 %83 = OpLabel %95 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %int_1 %96 = OpLoad %float %95 %97 = OpCompositeConstruct %v4float %96 %96 %96 %96 OpStore %_GLF_color %97 OpBranch %81 %81 = OpLabel OpReturn OpFunctionEnd