; SPIR-V ; Version: 1.3 ; Generator: Google Tint Compiler; 0 ; Bound: 30 ; Schema: 0 OpCapability Shader OpMemoryModel Logical GLSL450 OpEntryPoint GLCompute %unused_entry_point "unused_entry_point" OpExecutionMode %unused_entry_point LocalSize 1 1 1 OpName %i_block "i_block" OpMemberName %i_block 0 "inner" OpName %i "i" OpName %unused_entry_point "unused_entry_point" OpName %main "main" OpDecorate %i_block Block OpMemberDecorate %i_block 0 Offset 0 OpDecorate %i DescriptorSet 0 OpDecorate %i Binding 0 %uint = OpTypeInt 32 0 %i_block = OpTypeStruct %uint %_ptr_StorageBuffer_i_block = OpTypePointer StorageBuffer %i_block %i = OpVariable %_ptr_StorageBuffer_i_block StorageBuffer %void = OpTypeVoid %5 = OpTypeFunction %void %uint_0 = OpConstant %uint 0 %_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint %uint_1 = OpConstant %uint 1 %uint_10 = OpConstant %uint 10 %bool = OpTypeBool %unused_entry_point = OpFunction %void None %5 %8 = OpLabel OpReturn OpFunctionEnd %main = OpFunction %void None %5 %10 = OpLabel %13 = OpAccessChain %_ptr_StorageBuffer_uint %i %uint_0 %14 = OpAccessChain %_ptr_StorageBuffer_uint %i %uint_0 %15 = OpLoad %uint %14 %17 = OpISub %uint %15 %uint_1 OpStore %13 %17 OpBranch %18 %18 = OpLabel OpLoopMerge %19 %20 None OpBranch %21 %21 = OpLabel %23 = OpAccessChain %_ptr_StorageBuffer_uint %i %uint_0 %24 = OpLoad %uint %23 %26 = OpULessThan %bool %24 %uint_10 %22 = OpLogicalNot %bool %26 OpSelectionMerge %28 None OpBranchConditional %22 %29 %28 %29 = OpLabel OpBranch %19 %28 = OpLabel OpBranch %20 %20 = OpLabel OpBranch %18 %19 = OpLabel OpReturn OpFunctionEnd