| ; 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_10 = OpConstant %uint 10 | |
| %bool = OpTypeBool | |
| %uint_1 = OpConstant %uint 1 | |
| %unused_entry_point = OpFunction %void None %5 | |
| %8 = OpLabel | |
| OpReturn | |
| OpFunctionEnd | |
| %main = OpFunction %void None %5 | |
| %10 = OpLabel | |
| OpBranch %11 | |
| %11 = OpLabel | |
| OpLoopMerge %12 %13 None | |
| OpBranch %14 | |
| %14 = OpLabel | |
| %18 = OpAccessChain %_ptr_StorageBuffer_uint %i %uint_0 | |
| %19 = OpLoad %uint %18 | |
| %21 = OpULessThan %bool %19 %uint_10 | |
| %15 = OpLogicalNot %bool %21 | |
| OpSelectionMerge %23 None | |
| OpBranchConditional %15 %24 %23 | |
| %24 = OpLabel | |
| OpBranch %12 | |
| %23 = OpLabel | |
| OpBranch %13 | |
| %13 = OpLabel | |
| %25 = OpAccessChain %_ptr_StorageBuffer_uint %i %uint_0 | |
| %26 = OpAccessChain %_ptr_StorageBuffer_uint %i %uint_0 | |
| %27 = OpLoad %uint %26 | |
| %29 = OpIAdd %uint %27 %uint_1 | |
| OpStore %25 %29 | |
| OpBranch %11 | |
| %12 = OpLabel | |
| OpReturn | |
| OpFunctionEnd |