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 %buf0 "buf0" OpMemberName %buf0 0 "_GLF_uniform_int_values" OpName %_ "" OpName %index "index" OpName %_GLF_color "_GLF_color" OpDecorate %_arr_int_uint_6 ArrayStride 16 OpMemberDecorate %buf0 0 Offset 0 OpDecorate %buf0 Block OpDecorate %_ DescriptorSet 0 OpDecorate %_ Binding 0 OpDecorate %_GLF_color Location 0 %void = OpTypeVoid %10 = OpTypeFunction %void %int = OpTypeInt 32 1 %uint = OpTypeInt 32 0 %uint_3 = OpConstant %uint 3 %_arr_int_uint_3 = OpTypeArray %int %uint_3 %_ptr_Function__arr_int_uint_3 = OpTypePointer Function %_arr_int_uint_3 %uint_6 = OpConstant %uint 6 %_arr_int_uint_6 = OpTypeArray %int %uint_6 %buf0 = OpTypeStruct %_arr_int_uint_6 %_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0 %_ = OpVariable %_ptr_Uniform_buf0 Uniform %int_0 = OpConstant %int 0 %int_3 = OpConstant %int 3 %_ptr_Uniform_int = OpTypePointer Uniform %int %int_5 = OpConstant %int 5 %int_2 = OpConstant %int 2 %_ptr_Function_int = OpTypePointer Function %int %int_1 = OpConstant %int 1 %bool = OpTypeBool %true = OpConstantTrue %bool %int_4 = OpConstant %int 4 %float = OpTypeFloat 32 %v4float = OpTypeVector %float 4 %_ptr_Output_v4float = OpTypePointer Output %v4float %_GLF_color = OpVariable %_ptr_Output_v4float Output %main = OpFunction %void None %10 %31 = OpLabel %arr = OpVariable %_ptr_Function__arr_int_uint_3 Function %index = OpVariable %_ptr_Function_int Function %32 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_3 %33 = OpLoad %int %32 %34 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_5 %35 = OpLoad %int %34 %36 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_2 %37 = OpLoad %int %36 %38 = OpCompositeConstruct %_arr_int_uint_3 %33 %35 %37 OpStore %arr %38 OpStore %index %int_1 OpBranch %39 %39 = OpLabel OpLoopMerge %40 %41 None OpBranch %42 %42 = OpLabel OpSelectionMerge %43 None OpBranchConditional %true %44 %43 %44 = OpLabel %45 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_0 %46 = OpLoad %int %45 %47 = OpIEqual %bool %46 %int_1 %48 = OpLoad %int %index %49 = OpSLessThanEqual %bool %48 %int_1 %50 = OpLogicalAnd %bool %47 %49 %51 = OpLogicalNot %bool %50 OpBranch %43 %43 = OpLabel %52 = OpPhi %bool %true %42 %51 %44 %53 = OpLogicalNot %bool %52 OpBranchConditional %53 %54 %40 %54 = OpLabel %55 = OpLoad %int %index %56 = OpAccessChain %_ptr_Function_int %arr %55 %57 = OpLoad %int %56 %58 = OpIAdd %int %57 %int_1 OpStore %56 %58 %59 = OpLoad %int %index %60 = OpIAdd %int %59 %int_1 OpStore %index %60 OpBranch %41 %41 = OpLabel OpBranch %39 %40 = OpLabel %61 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_1 %62 = OpLoad %int %61 %63 = OpAccessChain %_ptr_Function_int %arr %62 %64 = OpLoad %int %63 %65 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_3 %66 = OpLoad %int %65 %67 = OpIEqual %bool %64 %66 OpSelectionMerge %68 None OpBranchConditional %67 %69 %68 %69 = OpLabel %70 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_0 %71 = OpLoad %int %70 %72 = OpAccessChain %_ptr_Function_int %arr %71 %73 = OpLoad %int %72 %74 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_4 %75 = OpLoad %int %74 %76 = OpIEqual %bool %73 %75 OpBranch %68 %68 = OpLabel %77 = OpPhi %bool %67 %40 %76 %69 OpSelectionMerge %78 None OpBranchConditional %77 %79 %78 %79 = OpLabel %80 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_3 %81 = OpLoad %int %80 %82 = OpAccessChain %_ptr_Function_int %arr %81 %83 = OpLoad %int %82 %84 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_2 %85 = OpLoad %int %84 %86 = OpIEqual %bool %83 %85 OpBranch %78 %78 = OpLabel %87 = OpPhi %bool %77 %68 %86 %79 OpSelectionMerge %88 None OpBranchConditional %87 %89 %90 %89 = OpLabel %91 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_0 %92 = OpLoad %int %91 %93 = OpConvertSToF %float %92 %94 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_1 %95 = OpLoad %int %94 %96 = OpConvertSToF %float %95 %97 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_1 %98 = OpLoad %int %97 %99 = OpConvertSToF %float %98 %100 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_0 %101 = OpLoad %int %100 %102 = OpConvertSToF %float %101 %103 = OpCompositeConstruct %v4float %93 %96 %99 %102 OpStore %_GLF_color %103 OpBranch %88 %90 = OpLabel %104 = OpAccessChain %_ptr_Uniform_int %_ %int_0 %int_1 %105 = OpLoad %int %104 %106 = OpConvertSToF %float %105 %107 = OpCompositeConstruct %v4float %106 %106 %106 %106 OpStore %_GLF_color %107 OpBranch %88 %88 = OpLabel OpReturn OpFunctionEnd