; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 46
; 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_atomic "SB_RW_atomic"
               OpMemberName %SB_RW_atomic 0 "arg_0"
               OpName %sb_rw "sb_rw"
               OpName %atomicCompareExchangeWeak_63d8e6 "atomicCompareExchangeWeak_63d8e6"
               OpName %arg_1 "arg_1"
               OpName %arg_2 "arg_2"
               OpName %x__atomic_compare_exchange_resultu32 "x__atomic_compare_exchange_resultu32"
               OpMemberName %x__atomic_compare_exchange_resultu32 0 "old_value"
               OpMemberName %x__atomic_compare_exchange_resultu32 1 "exchanged"
               OpName %res "res"
               OpName %__atomic_compare_exchange_resultu32 "__atomic_compare_exchange_resultu32"
               OpMemberName %__atomic_compare_exchange_resultu32 0 "old_value"
               OpMemberName %__atomic_compare_exchange_resultu32 1 "exchanged"
               OpName %fragment_main_1 "fragment_main_1"
               OpName %fragment_main "fragment_main"
               OpName %compute_main_1 "compute_main_1"
               OpName %compute_main "compute_main"
               OpDecorate %SB_RW_atomic Block
               OpMemberDecorate %SB_RW_atomic 0 Offset 0
               OpDecorate %sb_rw DescriptorSet 0
               OpDecorate %sb_rw Binding 0
               OpMemberDecorate %x__atomic_compare_exchange_resultu32 0 Offset 0
               OpMemberDecorate %x__atomic_compare_exchange_resultu32 1 Offset 4
               OpMemberDecorate %__atomic_compare_exchange_resultu32 0 Offset 0
               OpMemberDecorate %__atomic_compare_exchange_resultu32 1 Offset 4
       %uint = OpTypeInt 32 0
%SB_RW_atomic = OpTypeStruct %uint
%_ptr_StorageBuffer_SB_RW_atomic = OpTypePointer StorageBuffer %SB_RW_atomic
      %sb_rw = OpVariable %_ptr_StorageBuffer_SB_RW_atomic StorageBuffer
       %void = OpTypeVoid
          %5 = OpTypeFunction %void
          %9 = OpConstantNull %uint
%_ptr_Function_uint = OpTypePointer Function %uint
       %bool = OpTypeBool
%x__atomic_compare_exchange_resultu32 = OpTypeStruct %uint %bool
         %15 = OpConstantNull %bool
         %16 = OpConstantComposite %x__atomic_compare_exchange_resultu32 %9 %15
%_ptr_Function_x__atomic_compare_exchange_resultu32 = OpTypePointer Function %x__atomic_compare_exchange_resultu32
         %19 = OpConstantNull %x__atomic_compare_exchange_resultu32
     %uint_1 = OpConstant %uint 1
%__atomic_compare_exchange_resultu32 = OpTypeStruct %uint %bool
     %uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%atomicCompareExchangeWeak_63d8e6 = OpFunction %void None %5
          %8 = OpLabel
      %arg_1 = OpVariable %_ptr_Function_uint Function %9
      %arg_2 = OpVariable %_ptr_Function_uint Function %9
        %res = OpVariable %_ptr_Function_x__atomic_compare_exchange_resultu32 Function %19
               OpStore %arg_1 %9
               OpStore %arg_2 %9
               OpStore %res %16
               OpStore %arg_1 %uint_1
               OpStore %arg_2 %uint_1
         %21 = OpLoad %uint %arg_2
         %22 = OpLoad %uint %arg_1
         %28 = OpAccessChain %_ptr_StorageBuffer_uint %sb_rw %uint_0
         %29 = OpAtomicCompareExchange %uint %28 %uint_1 %uint_0 %uint_0 %21 %22
         %30 = OpIEqual %bool %29 %21
         %23 = OpCompositeConstruct %__atomic_compare_exchange_resultu32 %29 %30
         %31 = OpCompositeExtract %uint %23 0
         %32 = OpIEqual %bool %31 %21
         %33 = OpCompositeConstruct %x__atomic_compare_exchange_resultu32 %31 %32
               OpStore %res %33
               OpReturn
               OpFunctionEnd
%fragment_main_1 = OpFunction %void None %5
         %35 = OpLabel
         %36 = OpFunctionCall %void %atomicCompareExchangeWeak_63d8e6
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %5
         %38 = OpLabel
         %39 = OpFunctionCall %void %fragment_main_1
               OpReturn
               OpFunctionEnd
%compute_main_1 = OpFunction %void None %5
         %41 = OpLabel
         %42 = OpFunctionCall %void %atomicCompareExchangeWeak_63d8e6
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %5
         %44 = OpLabel
         %45 = OpFunctionCall %void %compute_main_1
               OpReturn
               OpFunctionEnd
