| ; SPIR-V |
| ; Version: 1.3 |
| ; Generator: Google Tint Compiler; 1 |
| ; Bound: 26 |
| ; Schema: 0 |
| OpCapability Shader |
| OpMemoryModel Logical GLSL450 |
| OpEntryPoint GLCompute %main "main" |
| OpExecutionMode %main LocalSize 1 1 1 |
| OpMemberName %Constants 0 "zero" |
| OpName %Constants "Constants" |
| OpMemberName %constants_block 0 "inner" |
| OpName %constants_block "constants_block" |
| OpMemberName %Result 0 "value" |
| OpName %Result "Result" |
| OpMemberName %result_block 0 "inner" |
| OpName %result_block "result_block" |
| OpMemberName %S 0 "data" |
| OpName %S "S" |
| OpName %s "s" |
| OpName %main "main" |
| OpMemberDecorate %Constants 0 Offset 0 |
| OpMemberDecorate %constants_block 0 Offset 0 |
| OpDecorate %constants_block Block |
| OpDecorate %1 DescriptorSet 1 |
| OpDecorate %1 Binding 0 |
| OpDecorate %1 NonWritable |
| OpMemberDecorate %Result 0 Offset 0 |
| OpMemberDecorate %result_block 0 Offset 0 |
| OpDecorate %result_block Block |
| OpDecorate %6 DescriptorSet 1 |
| OpDecorate %6 Binding 1 |
| OpDecorate %6 Coherent |
| OpDecorate %_arr_uint_uint_3 ArrayStride 4 |
| OpMemberDecorate %S 0 Offset 0 |
| %uint = OpTypeInt 32 0 |
| %Constants = OpTypeStruct %uint |
| %constants_block = OpTypeStruct %Constants |
| %_ptr_Uniform_constants_block = OpTypePointer Uniform %constants_block |
| %1 = OpVariable %_ptr_Uniform_constants_block Uniform |
| %Result = OpTypeStruct %uint |
| %result_block = OpTypeStruct %Result |
| %_ptr_StorageBuffer_result_block = OpTypePointer StorageBuffer %result_block |
| %6 = OpVariable %_ptr_StorageBuffer_result_block StorageBuffer |
| %uint_3 = OpConstant %uint 3 |
| %_arr_uint_uint_3 = OpTypeArray %uint %uint_3 |
| %S = OpTypeStruct %_arr_uint_uint_3 |
| %_ptr_Private_S = OpTypePointer Private %S |
| %15 = OpConstantNull %S |
| %s = OpVariable %_ptr_Private_S Private %15 |
| %void = OpTypeVoid |
| %18 = OpTypeFunction %void |
| %_ptr_Uniform_uint = OpTypePointer Uniform %uint |
| %uint_0 = OpConstant %uint 0 |
| %_ptr_Private_uint = OpTypePointer Private %uint |
| %main = OpFunction %void None %18 |
| %19 = OpLabel |
| %20 = OpAccessChain %_ptr_Uniform_uint %1 %uint_0 %uint_0 |
| %23 = OpLoad %uint %20 None |
| %24 = OpAccessChain %_ptr_Private_uint %s %uint_0 %23 |
| OpStore %24 %uint_0 None |
| OpReturn |
| OpFunctionEnd |