; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 32
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %SB_RW "SB_RW"
               OpMemberName %SB_RW 0 "arg_0"
               OpName %sb_rw "sb_rw"
               OpName %atomicCompareExchangeWeak_12871c "atomicCompareExchangeWeak_12871c"
               OpName %res "res"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %SB_RW Block
               OpMemberDecorate %SB_RW 0 Offset 0
               OpDecorate %sb_rw DescriptorSet 0
               OpDecorate %sb_rw Binding 0
        %int = OpTypeInt 32 1
      %SB_RW = OpTypeStruct %int
%_ptr_StorageBuffer_SB_RW = OpTypePointer StorageBuffer %SB_RW
      %sb_rw = OpVariable %_ptr_StorageBuffer_SB_RW StorageBuffer
       %void = OpTypeVoid
          %5 = OpTypeFunction %void
      %v2int = OpTypeVector %int 2
       %uint = OpTypeInt 32 0
     %uint_1 = OpConstant %uint 1
     %uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
      %int_1 = OpConstant %int 1
       %bool = OpTypeBool
      %int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
         %25 = OpConstantNull %v2int
%atomicCompareExchangeWeak_12871c = OpFunction %void None %5
          %8 = OpLabel
        %res = OpVariable %_ptr_Function_v2int Function %25
         %16 = OpAccessChain %_ptr_StorageBuffer_int %sb_rw %uint_0
         %19 = OpAtomicCompareExchange %int %16 %uint_1 %uint_0 %uint_0 %int_1 %int_1
         %20 = OpIEqual %bool %19 %int_1
         %22 = OpSelect %int %20 %int_1 %int_0
          %9 = OpCompositeConstruct %v2int %19 %22
               OpStore %res %9
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %5
         %27 = OpLabel
         %28 = OpFunctionCall %void %atomicCompareExchangeWeak_12871c
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %5
         %30 = OpLabel
         %31 = OpFunctionCall %void %atomicCompareExchangeWeak_12871c
               OpReturn
               OpFunctionEnd
