#version 460
layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in;

layout(set = 1, binding = 2, std430) writeonly readonly buffer SSBO
{
    uint _m0[];
} _9;

layout(set = 2, binding = 2, std430) writeonly readonly buffer _14_16
{
    uint _m0[];
} _16;

layout(set = 7, binding = 0, r32ui) uniform uimageBuffer _12;
layout(set = 7, binding = 1, r32ui) uniform uimageBuffer _17;

void main()
{
    uint _21 = imageAtomicAdd(_12, int(0u), 1u);
    uint _24 = imageAtomicAdd(_17, int(0u), 1u);
}


#if 0
// SPIR-V disassembly
; SPIR-V
; Version: 1.3
; Generator: Unknown(30017); 21022
; Bound: 27
; Schema: 0
OpCapability Shader
OpCapability ImageBuffer
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %3 "main"
OpExecutionMode %3 LocalSize 64 1 1
OpName %3 "main"
OpName %7 "SSBO"
OpName %14 "SSBO"
OpDecorate %6 ArrayStride 4
OpMemberDecorate %7 0 Offset 0
OpDecorate %7 Block
OpDecorate %9 DescriptorSet 1
OpDecorate %9 Binding 2
OpDecorate %9 NonReadable
OpDecorate %9 NonWritable
OpDecorate %12 DescriptorSet 7
OpDecorate %12 Binding 0
OpDecorate %13 ArrayStride 4
OpMemberDecorate %14 0 Offset 0
OpDecorate %14 Block
OpDecorate %16 DescriptorSet 2
OpDecorate %16 Binding 2
OpDecorate %16 NonReadable
OpDecorate %16 NonWritable
OpDecorate %17 DescriptorSet 7
OpDecorate %17 Binding 1
%1 = OpTypeVoid
%2 = OpTypeFunction %1
%5 = OpTypeInt 32 0
%6 = OpTypeRuntimeArray %5
%7 = OpTypeStruct %6
%8 = OpTypePointer StorageBuffer %7
%9 = OpVariable %8 StorageBuffer
%10 = OpTypeImage %5 Buffer 0 0 0 2 R32ui
%11 = OpTypePointer UniformConstant %10
%12 = OpVariable %11 UniformConstant
%13 = OpTypeRuntimeArray %5
%14 = OpTypeStruct %13
%15 = OpTypePointer StorageBuffer %14
%16 = OpVariable %15 StorageBuffer
%17 = OpVariable %11 UniformConstant
%18 = OpTypePointer Image %5
%20 = OpConstant %5 0
%22 = OpConstant %5 1
%3 = OpFunction %1 None %2
%4 = OpLabel
OpBranch %25
%25 = OpLabel
%19 = OpImageTexelPointer %18 %12 %20 %20
%21 = OpAtomicIAdd %5 %19 %22 %20 %22
%23 = OpImageTexelPointer %18 %17 %20 %20
%24 = OpAtomicIAdd %5 %23 %22 %20 %22
OpReturn
OpFunctionEnd
#endif
