; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 36
; 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
               OpMemberName %prevent_dce_block 0 "inner"
               OpName %prevent_dce_block "prevent_dce_block"
               OpName %arg_0 "arg_0"
               OpName %textureLoad_3cfb9c "textureLoad_3cfb9c"
               OpName %arg_1 "arg_1"
               OpName %res "res"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpMemberDecorate %prevent_dce_block 0 Offset 0
               OpDecorate %prevent_dce_block Block
               OpDecorate %1 DescriptorSet 0
               OpDecorate %1 Binding 0
               OpDecorate %1 Coherent
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
               OpDecorate %arg_0 Coherent
       %uint = OpTypeInt 32 0
     %v4uint = OpTypeVector %uint 4
%prevent_dce_block = OpTypeStruct %v4uint
%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
          %1 = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
          %8 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
      %arg_0 = OpVariable %_ptr_UniformConstant_8 UniformConstant
         %10 = OpTypeFunction %v4uint
        %int = OpTypeInt 32 1
      %v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
      %int_1 = OpConstant %int 1
         %16 = OpConstantComposite %v3int %int_1 %int_1 %int_1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
       %void = OpTypeVoid
         %26 = OpTypeFunction %void
%_ptr_StorageBuffer_v4uint = OpTypePointer StorageBuffer %v4uint
     %uint_0 = OpConstant %uint 0
%textureLoad_3cfb9c = OpFunction %v4uint None %10
         %11 = OpLabel
      %arg_1 = OpVariable %_ptr_Function_v3int Function
        %res = OpVariable %_ptr_Function_v4uint Function
               OpStore %arg_1 %16
         %18 = OpLoad %8 %arg_0 None
         %19 = OpLoad %v3int %arg_1 None
         %20 = OpImageRead %v4uint %18 %19 None
               OpStore %res %20
         %23 = OpLoad %v4uint %res None
               OpReturnValue %23
               OpFunctionEnd
%fragment_main = OpFunction %void None %26
         %27 = OpLabel
         %28 = OpFunctionCall %v4uint %textureLoad_3cfb9c
         %29 = OpAccessChain %_ptr_StorageBuffer_v4uint %1 %uint_0
               OpStore %29 %28 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %26
         %33 = OpLabel
         %34 = OpFunctionCall %v4uint %textureLoad_3cfb9c
         %35 = OpAccessChain %_ptr_StorageBuffer_v4uint %1 %uint_0
               OpStore %35 %34 None
               OpReturn
               OpFunctionEnd
