; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 30
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %compute_main "compute_main" %tint_symbol
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %arg_0 "arg_0"
               OpName %tint_symbol "tint_symbol"
               OpName %atomicLoad_afcc03 "atomicLoad_afcc03"
               OpName %res "res"
               OpName %compute_main "compute_main"
               OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
        %int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
      %arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
       %uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
%tint_symbol = OpVariable %_ptr_Input_uint Input
       %void = OpTypeVoid
          %7 = OpTypeFunction %void
     %uint_2 = OpConstant %uint 2
     %uint_0 = OpConstant %uint 0
%_ptr_Function_int = OpTypePointer Function %int
         %17 = OpConstantNull %int
       %bool = OpTypeBool
   %uint_264 = OpConstant %uint 264
%atomicLoad_afcc03 = OpFunction %void None %7
         %10 = OpLabel
        %res = OpVariable %_ptr_Function_int Function %17
         %11 = OpAtomicLoad %int %arg_0 %uint_2 %uint_0
               OpStore %res %11
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %7
         %19 = OpLabel
         %20 = OpLoad %uint %tint_symbol
         %21 = OpIEqual %bool %20 %uint_0
               OpSelectionMerge %23 None
               OpBranchConditional %21 %24 %23
         %24 = OpLabel
               OpAtomicStore %arg_0 %uint_2 %uint_0 %17
               OpBranch %23
         %23 = OpLabel
               OpControlBarrier %uint_2 %uint_2 %uint_264
         %29 = OpFunctionCall %void %atomicLoad_afcc03
               OpReturn
               OpFunctionEnd