; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 118
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %main "main" %local_invocation_index_1
               OpExecutionMode %main LocalSize 16 1 1
               OpName %local_invocation_index_1 "local_invocation_index_1"
               OpName %a_u32_block "a_u32_block"
               OpMemberName %a_u32_block 0 "inner"
               OpName %a_u32 "a_u32"
               OpName %a_i32_block "a_i32_block"
               OpMemberName %a_i32_block 0 "inner"
               OpName %a_i32 "a_i32"
               OpName %b_u32 "b_u32"
               OpName %b_i32 "b_i32"
               OpName %main_inner "main_inner"
               OpName %local_invocation_index "local_invocation_index"
               OpName %value "value"
               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 %value_0 "value"
               OpName %__atomic_compare_exchange_resulti32 "__atomic_compare_exchange_resulti32"
               OpMemberName %__atomic_compare_exchange_resulti32 0 "old_value"
               OpMemberName %__atomic_compare_exchange_resulti32 1 "exchanged"
               OpName %value_1 "value"
               OpName %value_2 "value"
               OpName %main "main"
               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
               OpDecorate %a_u32_block Block
               OpMemberDecorate %a_u32_block 0 Offset 0
               OpDecorate %a_u32 DescriptorSet 0
               OpDecorate %a_u32 Binding 0
               OpDecorate %a_i32_block Block
               OpMemberDecorate %a_i32_block 0 Offset 0
               OpDecorate %a_i32 DescriptorSet 0
               OpDecorate %a_i32 Binding 1
               OpMemberDecorate %__atomic_compare_exchange_resultu32 0 Offset 0
               OpMemberDecorate %__atomic_compare_exchange_resultu32 1 Offset 4
               OpMemberDecorate %__atomic_compare_exchange_resulti32 0 Offset 0
               OpMemberDecorate %__atomic_compare_exchange_resulti32 1 Offset 4
       %uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%a_u32_block = OpTypeStruct %uint
%_ptr_StorageBuffer_a_u32_block = OpTypePointer StorageBuffer %a_u32_block
      %a_u32 = OpVariable %_ptr_StorageBuffer_a_u32_block StorageBuffer
        %int = OpTypeInt 32 1
%a_i32_block = OpTypeStruct %int
%_ptr_StorageBuffer_a_i32_block = OpTypePointer StorageBuffer %a_i32_block
      %a_i32 = OpVariable %_ptr_StorageBuffer_a_i32_block StorageBuffer
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
      %b_u32 = OpVariable %_ptr_Workgroup_uint Workgroup
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
      %b_i32 = OpVariable %_ptr_Workgroup_int Workgroup
       %void = OpTypeVoid
         %15 = OpTypeFunction %void %uint
     %uint_1 = OpConstant %uint 1
       %bool = OpTypeBool
     %uint_2 = OpConstant %uint 2
     %uint_0 = OpConstant %uint 0
         %29 = OpConstantNull %uint
         %32 = OpConstantNull %int
   %uint_264 = OpConstant %uint 264
    %uint_42 = OpConstant %uint 42
%_ptr_Function_uint = OpTypePointer Function %uint
%__atomic_compare_exchange_resultu32 = OpTypeStruct %uint %bool
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
     %int_42 = OpConstant %int 42
%_ptr_Function_int = OpTypePointer Function %int
%__atomic_compare_exchange_resulti32 = OpTypeStruct %int %bool
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
        %113 = OpTypeFunction %void
 %main_inner = OpFunction %void None %15
%local_invocation_index = OpFunctionParameter %uint
         %19 = OpLabel
      %value = OpVariable %_ptr_Function_uint Function %29
    %value_0 = OpVariable %_ptr_Function_int Function %32
    %value_1 = OpVariable %_ptr_Function_uint Function %29
    %value_2 = OpVariable %_ptr_Function_int Function %32
         %21 = OpULessThan %bool %local_invocation_index %uint_1
               OpSelectionMerge %23 None
               OpBranchConditional %21 %24 %23
         %24 = OpLabel
               OpAtomicStore %b_u32 %uint_2 %uint_0 %29
               OpAtomicStore %b_i32 %uint_2 %uint_0 %32
               OpBranch %23
         %23 = OpLabel
               OpControlBarrier %uint_2 %uint_2 %uint_264
               OpStore %value %uint_42
         %42 = OpAccessChain %_ptr_StorageBuffer_uint %a_u32 %uint_0
         %43 = OpLoad %uint %value
         %44 = OpAtomicCompareExchange %uint %42 %uint_1 %uint_0 %uint_0 %43 %29
         %45 = OpIEqual %bool %44 %29
         %38 = OpCompositeConstruct %__atomic_compare_exchange_resultu32 %44 %45
         %48 = OpAccessChain %_ptr_StorageBuffer_uint %a_u32 %uint_0
         %49 = OpLoad %uint %value
         %50 = OpAtomicCompareExchange %uint %48 %uint_1 %uint_0 %uint_0 %49 %29
         %51 = OpIEqual %bool %50 %29
         %46 = OpCompositeConstruct %__atomic_compare_exchange_resultu32 %50 %51
         %54 = OpAccessChain %_ptr_StorageBuffer_uint %a_u32 %uint_0
         %55 = OpLoad %uint %value
         %56 = OpAtomicCompareExchange %uint %54 %uint_1 %uint_0 %uint_0 %55 %29
         %57 = OpIEqual %bool %56 %29
         %52 = OpCompositeConstruct %__atomic_compare_exchange_resultu32 %56 %57
               OpStore %value_0 %int_42
         %65 = OpAccessChain %_ptr_StorageBuffer_int %a_i32 %uint_0
         %66 = OpLoad %int %value_0
         %67 = OpAtomicCompareExchange %int %65 %uint_1 %uint_0 %uint_0 %66 %32
         %68 = OpIEqual %bool %67 %32
         %61 = OpCompositeConstruct %__atomic_compare_exchange_resulti32 %67 %68
         %71 = OpAccessChain %_ptr_StorageBuffer_int %a_i32 %uint_0
         %72 = OpLoad %int %value_0
         %73 = OpAtomicCompareExchange %int %71 %uint_1 %uint_0 %uint_0 %72 %32
         %74 = OpIEqual %bool %73 %32
         %69 = OpCompositeConstruct %__atomic_compare_exchange_resulti32 %73 %74
         %77 = OpAccessChain %_ptr_StorageBuffer_int %a_i32 %uint_0
         %78 = OpLoad %int %value_0
         %79 = OpAtomicCompareExchange %int %77 %uint_1 %uint_0 %uint_0 %78 %32
         %80 = OpIEqual %bool %79 %32
         %75 = OpCompositeConstruct %__atomic_compare_exchange_resulti32 %79 %80
               OpStore %value_1 %uint_42
         %84 = OpLoad %uint %value_1
         %85 = OpAtomicCompareExchange %uint %b_u32 %uint_2 %uint_0 %uint_0 %84 %29
         %86 = OpIEqual %bool %85 %29
         %82 = OpCompositeConstruct %__atomic_compare_exchange_resultu32 %85 %86
         %89 = OpLoad %uint %value_1
         %90 = OpAtomicCompareExchange %uint %b_u32 %uint_2 %uint_0 %uint_0 %89 %29
         %91 = OpIEqual %bool %90 %29
         %87 = OpCompositeConstruct %__atomic_compare_exchange_resultu32 %90 %91
         %94 = OpLoad %uint %value_1
         %95 = OpAtomicCompareExchange %uint %b_u32 %uint_2 %uint_0 %uint_0 %94 %29
         %96 = OpIEqual %bool %95 %29
         %92 = OpCompositeConstruct %__atomic_compare_exchange_resultu32 %95 %96
               OpStore %value_2 %int_42
        %100 = OpLoad %int %value_2
        %101 = OpAtomicCompareExchange %int %b_i32 %uint_2 %uint_0 %uint_0 %100 %32
        %102 = OpIEqual %bool %101 %32
         %98 = OpCompositeConstruct %__atomic_compare_exchange_resulti32 %101 %102
        %105 = OpLoad %int %value_2
        %106 = OpAtomicCompareExchange %int %b_i32 %uint_2 %uint_0 %uint_0 %105 %32
        %107 = OpIEqual %bool %106 %32
        %103 = OpCompositeConstruct %__atomic_compare_exchange_resulti32 %106 %107
        %110 = OpLoad %int %value_2
        %111 = OpAtomicCompareExchange %int %b_i32 %uint_2 %uint_0 %uint_0 %110 %32
        %112 = OpIEqual %bool %111 %32
        %108 = OpCompositeConstruct %__atomic_compare_exchange_resulti32 %111 %112
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %113
        %115 = OpLabel
        %117 = OpLoad %uint %local_invocation_index_1
        %116 = OpFunctionCall %void %main_inner %117
               OpReturn
               OpFunctionEnd
