OpCapability Shader %1 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint GLCompute %main "main" OpExecutionMode %main LocalSize 1 18 6 OpSource ESSL 310 OpName %main "main" OpName %GLF_live2_looplimiter1 "GLF_live2_looplimiter1" OpName %i "i" OpName %j "j" OpName %GLF_live2gl_FragCoord "GLF_live2gl_FragCoord" OpName %GLF_dead3x "GLF_dead3x" OpName %buf0 "buf0" OpMemberName %buf0 0 "injectionSwitch" OpName %_ "" OpName %GLF_dead3k "GLF_dead3k" OpName %doesNotMatter "doesNotMatter" OpMemberName %doesNotMatter 0 "_compute_data" OpName %__0 "" OpDecorate %GLF_live2gl_FragCoord RelaxedPrecision OpDecorate %13 RelaxedPrecision OpMemberDecorate %buf0 0 Offset 0 OpDecorate %buf0 Block OpDecorate %_ DescriptorSet 0 OpDecorate %_ Binding 1 OpDecorate %14 RelaxedPrecision OpDecorate %15 RelaxedPrecision OpDecorate %16 RelaxedPrecision OpDecorate %_runtimearr_uint ArrayStride 4 OpMemberDecorate %doesNotMatter 0 Offset 0 OpDecorate %doesNotMatter BufferBlock OpDecorate %__0 DescriptorSet 0 OpDecorate %__0 Binding 0 OpDecorate %gl_WorkGroupSize BuiltIn WorkgroupSize %void = OpTypeVoid %20 = OpTypeFunction %void %int = OpTypeInt 32 1 %_ptr_Function_int = OpTypePointer Function %int %int_0 = OpConstant %int 0 %int_1 = OpConstant %int 1 %bool = OpTypeBool %int_3 = OpConstant %int 3 %float = OpTypeFloat 32 %v4float = OpTypeVector %float 4 %_ptr_Private_v4float = OpTypePointer Private %v4float %GLF_live2gl_FragCoord = OpVariable %_ptr_Private_v4float Private %uint = OpTypeInt 32 0 %uint_0 = OpConstant %uint 0 %_ptr_Private_float = OpTypePointer Private %float %int_120 = OpConstant %int 120 %uint_2 = OpConstant %uint 2 %uint_264 = OpConstant %uint 264 %_ptr_Function_float = OpTypePointer Function %float %v2float = OpTypeVector %float 2 %buf0 = OpTypeStruct %v2float %_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0 %_ = OpVariable %_ptr_Uniform_buf0 Uniform %_ptr_Uniform_float = OpTypePointer Uniform %float %uint_1 = OpConstant %uint 1 %float_0 = OpConstant %float 0 %int_2 = OpConstant %int 2 %float_4 = OpConstant %float 4 %_runtimearr_uint = OpTypeRuntimeArray %uint %doesNotMatter = OpTypeStruct %_runtimearr_uint %_ptr_Uniform_doesNotMatter = OpTypePointer Uniform %doesNotMatter %__0 = OpVariable %_ptr_Uniform_doesNotMatter Uniform %uint_42 = OpConstant %uint 42 %_ptr_Uniform_uint = OpTypePointer Uniform %uint %v3uint = OpTypeVector %uint 3 %uint_18 = OpConstant %uint 18 %uint_6 = OpConstant %uint 6 %gl_WorkGroupSize = OpConstantComposite %v3uint %uint_1 %uint_18 %uint_6 %main = OpFunction %void None %20 %50 = OpLabel %GLF_live2_looplimiter1 = OpVariable %_ptr_Function_int Function %i = OpVariable %_ptr_Function_int Function %j = OpVariable %_ptr_Function_int Function %GLF_dead3x = OpVariable %_ptr_Function_float Function %51 = OpVariable %_ptr_Function_float Function %GLF_dead3k = OpVariable %_ptr_Function_int Function OpStore %GLF_live2_looplimiter1 %int_0 OpStore %i %int_0 OpBranch %52 %52 = OpLabel OpLoopMerge %53 %54 None OpBranch %55 %55 = OpLabel %56 = OpLoad %int %i %57 = OpSLessThan %bool %56 %int_1 OpBranchConditional %57 %58 %53 %58 = OpLabel %59 = OpLoad %int %GLF_live2_looplimiter1 %60 = OpSGreaterThanEqual %bool %59 %int_3 OpSelectionMerge %61 None OpBranchConditional %60 %62 %61 %62 = OpLabel OpStore %j %int_0 OpBranch %63 %63 = OpLabel OpLoopMerge %64 %65 None OpBranch %66 %66 = OpLabel %67 = OpLoad %int %j %68 = OpSLessThan %bool %67 %int_1 OpBranchConditional %68 %69 %64 %69 = OpLabel %70 = OpAccessChain %_ptr_Private_float %GLF_live2gl_FragCoord %uint_0 %13 = OpLoad %float %70 %71 = OpConvertFToS %int %13 %72 = OpSLessThan %bool %71 %int_120 OpSelectionMerge %73 None OpBranchConditional %72 %74 %75 %74 = OpLabel OpBranch %73 %75 = OpLabel OpControlBarrier %uint_2 %uint_2 %uint_264 OpBranch %73 %73 = OpLabel OpBranch %65 %65 = OpLabel %76 = OpLoad %int %j %77 = OpIAdd %int %76 %int_1 OpStore %j %77 OpBranch %63 %64 = OpLabel OpBranch %53 %61 = OpLabel OpBranch %54 %54 = OpLabel %78 = OpLoad %int %i %79 = OpIAdd %int %78 %int_1 OpStore %i %79 OpBranch %52 %53 = OpLabel %80 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %uint_0 %81 = OpLoad %float %80 %82 = OpAccessChain %_ptr_Uniform_float %_ %int_0 %uint_1 %83 = OpLoad %float %82 %84 = OpFOrdGreaterThan %bool %81 %83 OpSelectionMerge %85 None OpBranchConditional %84 %86 %87 %86 = OpLabel %88 = OpAccessChain %_ptr_Private_float %GLF_live2gl_FragCoord %uint_0 %14 = OpLoad %float %88 OpStore %51 %14 OpBranch %85 %87 = OpLabel OpStore %51 %float_0 OpBranch %85 %85 = OpLabel %15 = OpLoad %float %51 OpStore %GLF_dead3x %15 OpStore %GLF_dead3k %int_0 OpBranch %89 %89 = OpLabel OpLoopMerge %90 %91 None OpBranch %92 %92 = OpLabel %93 = OpLoad %int %GLF_dead3k %94 = OpSLessThan %bool %93 %int_2 OpBranchConditional %94 %95 %90 %95 = OpLabel %96 = OpLoad %float %GLF_dead3x %97 = OpFOrdGreaterThan %bool %96 %float_4 OpSelectionMerge %98 None OpBranchConditional %97 %99 %98 %99 = OpLabel OpBranch %90 %98 = OpLabel %100 = OpAccessChain %_ptr_Private_float %GLF_live2gl_FragCoord %uint_0 %16 = OpLoad %float %100 OpStore %GLF_dead3x %16 OpControlBarrier %uint_2 %uint_2 %uint_264 OpBranch %91 %91 = OpLabel %101 = OpLoad %int %GLF_dead3k %102 = OpIAdd %int %101 %int_1 OpStore %GLF_dead3k %102 OpBranch %89 %90 = OpLabel %103 = OpAccessChain %_ptr_Uniform_uint %__0 %int_0 %int_0 OpStore %103 %uint_42 OpReturn OpFunctionEnd